diff --git a/packages/identity-prisma-client/client.d.ts b/packages/identity-prisma-client/client.d.ts new file mode 100644 index 0000000..bc20c6c --- /dev/null +++ b/packages/identity-prisma-client/client.d.ts @@ -0,0 +1 @@ +export * from "./index" \ No newline at end of file diff --git a/packages/identity-prisma-client/client.js b/packages/identity-prisma-client/client.js new file mode 100644 index 0000000..6ac8a81 --- /dev/null +++ b/packages/identity-prisma-client/client.js @@ -0,0 +1,5 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +module.exports = { ...require('.') } \ No newline at end of file diff --git a/packages/identity-prisma-client/default.d.ts b/packages/identity-prisma-client/default.d.ts new file mode 100644 index 0000000..bc20c6c --- /dev/null +++ b/packages/identity-prisma-client/default.d.ts @@ -0,0 +1 @@ +export * from "./index" \ No newline at end of file diff --git a/packages/identity-prisma-client/default.js b/packages/identity-prisma-client/default.js new file mode 100644 index 0000000..eb55675 --- /dev/null +++ b/packages/identity-prisma-client/default.js @@ -0,0 +1,5 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +module.exports = { ...require('#main-entry-point') } \ No newline at end of file diff --git a/packages/identity-prisma-client/edge.d.ts b/packages/identity-prisma-client/edge.d.ts new file mode 100644 index 0000000..274b8fa --- /dev/null +++ b/packages/identity-prisma-client/edge.d.ts @@ -0,0 +1 @@ +export * from "./default" \ No newline at end of file diff --git a/packages/identity-prisma-client/edge.js b/packages/identity-prisma-client/edge.js new file mode 100644 index 0000000..25c2195 --- /dev/null +++ b/packages/identity-prisma-client/edge.js @@ -0,0 +1,452 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file + +Object.defineProperty(exports, "__esModule", { value: true }); + +const { + PrismaClientKnownRequestError, + PrismaClientUnknownRequestError, + PrismaClientRustPanicError, + PrismaClientInitializationError, + PrismaClientValidationError, + getPrismaClient, + sqltag, + empty, + join, + raw, + skip, + Decimal, + Debug, + objectEnumValues, + makeStrictEnum, + Extensions, + warnOnce, + defineDmmfProperty, + Public, + getRuntime, + createParam, +} = require('./runtime/edge.js') + + +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} + +/** + * Prisma Client JS version: 6.19.1 + * Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7 + */ +Prisma.prismaVersion = { + client: "6.19.1", + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} + +Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError; +Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError +Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError +Prisma.PrismaClientInitializationError = PrismaClientInitializationError +Prisma.PrismaClientValidationError = PrismaClientValidationError +Prisma.Decimal = Decimal + +/** + * Re-export of sql-template-tag + */ +Prisma.sql = sqltag +Prisma.empty = empty +Prisma.join = join +Prisma.raw = raw +Prisma.validator = Public.validator + +/** +* Extensions +*/ +Prisma.getExtensionContext = Extensions.getExtensionContext +Prisma.defineExtension = Extensions.defineExtension + +/** + * Shorthand utilities for JSON filtering + */ +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull + +Prisma.NullTypes = { + DbNull: objectEnumValues.classes.DbNull, + JsonNull: objectEnumValues.classes.JsonNull, + AnyNull: objectEnumValues.classes.AnyNull +} + + + + + +/** + * Enums + */ +exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' +}); + +exports.Prisma.Achievement_type_luScalarFieldEnum = { + achievement_type_id: 'achievement_type_id', + achievement_type_desc: 'achievement_type_desc' +}; + +exports.Prisma.CountryScalarFieldEnum = { + country_code: 'country_code', + country_name: 'country_name', + modify_date: 'modify_date', + participating: 'participating', + default_taxform_id: 'default_taxform_id', + longitude: 'longitude', + latitude: 'latitude', + region: 'region', + iso_name: 'iso_name', + iso_alpha2_code: 'iso_alpha2_code', + iso_alpha3_code: 'iso_alpha3_code' +}; + +exports.Prisma.Dice_connectionScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + connection: 'connection', + accepted: 'accepted', + created_at: 'created_at', + short_url: 'short_url', + con_created_at: 'con_created_at' +}; + +exports.Prisma.EmailScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + email_type_id: 'email_type_id', + address: 'address', + create_date: 'create_date', + modify_date: 'modify_date', + primary_ind: 'primary_ind', + status_id: 'status_id' +}; + +exports.Prisma.Email_status_luScalarFieldEnum = { + status_id: 'status_id', + status_desc: 'status_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Email_type_luScalarFieldEnum = { + email_type_id: 'email_type_id', + email_type_desc: 'email_type_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Id_sequencesScalarFieldEnum = { + name: 'name', + next_block_start: 'next_block_start', + block_size: 'block_size', + exhausted: 'exhausted' +}; + +exports.Prisma.Invalid_handlesScalarFieldEnum = { + invalid_handle_id: 'invalid_handle_id', + invalid_handle: 'invalid_handle' +}; + +exports.Prisma.Security_groupsScalarFieldEnum = { + group_id: 'group_id', + description: 'description', + challenge_group_ind: 'challenge_group_ind', + create_user_id: 'create_user_id' +}; + +exports.Prisma.Security_status_luScalarFieldEnum = { + security_status_id: 'security_status_id', + status_desc: 'status_desc' +}; + +exports.Prisma.Security_userScalarFieldEnum = { + login_id: 'login_id', + user_id: 'user_id', + password: 'password', + create_user_id: 'create_user_id', + modify_date: 'modify_date' +}; + +exports.Prisma.Social_login_providerScalarFieldEnum = { + social_login_provider_id: 'social_login_provider_id', + name: 'name' +}; + +exports.Prisma.Sso_login_providerScalarFieldEnum = { + sso_login_provider_id: 'sso_login_provider_id', + name: 'name', + type: 'type', + identify_email_enabled: 'identify_email_enabled', + identify_handle_enabled: 'identify_handle_enabled' +}; + +exports.Prisma.UserScalarFieldEnum = { + user_id: 'user_id', + first_name: 'first_name', + last_name: 'last_name', + create_date: 'create_date', + modify_date: 'modify_date', + handle: 'handle', + last_login: 'last_login', + status: 'status', + activation_code: 'activation_code', + middle_name: 'middle_name', + handle_lower: 'handle_lower', + timezone_id: 'timezone_id', + last_site_hit_date: 'last_site_hit_date', + name_in_another_language: 'name_in_another_language', + password: 'password', + open_id: 'open_id', + reg_source: 'reg_source', + utm_source: 'utm_source', + utm_medium: 'utm_medium', + utm_campaign: 'utm_campaign' +}; + +exports.Prisma.User_2faScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mfa_enabled: 'mfa_enabled', + dice_enabled: 'dice_enabled', + created_by: 'created_by', + created_at: 'created_at', + modified_by: 'modified_by', + modified_at: 'modified_at' +}; + +exports.Prisma.User_achievementScalarFieldEnum = { + user_id: 'user_id', + achievement_date: 'achievement_date', + achievement_type_id: 'achievement_type_id', + description: 'description', + create_date: 'create_date' +}; + +exports.Prisma.User_group_xrefScalarFieldEnum = { + user_group_id: 'user_group_id', + login_id: 'login_id', + group_id: 'group_id', + create_user_id: 'create_user_id', + security_status_id: 'security_status_id', + create_date: 'create_date' +}; + +exports.Prisma.User_otp_emailScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mode: 'mode', + otp: 'otp', + expire_at: 'expire_at', + resend: 'resend', + fail_count: 'fail_count' +}; + +exports.Prisma.User_social_loginScalarFieldEnum = { + social_user_id: 'social_user_id', + user_id: 'user_id', + social_login_provider_id: 'social_login_provider_id', + social_user_name: 'social_user_name', + social_email: 'social_email', + social_email_verified: 'social_email_verified', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.User_sso_loginScalarFieldEnum = { + user_id: 'user_id', + sso_user_id: 'sso_user_id', + sso_user_name: 'sso_user_name', + provider_id: 'provider_id', + email: 'email' +}; + +exports.Prisma.User_statusScalarFieldEnum = { + user_id: 'user_id', + user_status_type_id: 'user_status_type_id', + user_status_id: 'user_status_id' +}; + +exports.Prisma.User_status_luScalarFieldEnum = { + user_status_id: 'user_status_id', + description: 'description' +}; + +exports.Prisma.User_status_type_luScalarFieldEnum = { + user_status_type_id: 'user_status_type_id', + description: 'description' +}; + +exports.Prisma.User_email_xrefScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + is_primary: 'is_primary', + status_id: 'status_id', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.ClientScalarFieldEnum = { + id: 'id', + clientId: 'clientId', + name: 'name', + redirectUri: 'redirectUri', + secret: 'secret', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleScalarFieldEnum = { + id: 'id', + name: 'name', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleAssignmentScalarFieldEnum = { + id: 'id', + roleId: 'roleId', + subjectId: 'subjectId', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt', + subjectType: 'subjectType' +}; + +exports.Prisma.SortOrder = { + asc: 'asc', + desc: 'desc' +}; + +exports.Prisma.QueryMode = { + default: 'default', + insensitive: 'insensitive' +}; + +exports.Prisma.NullsOrder = { + first: 'first', + last: 'last' +}; + + +exports.Prisma.ModelName = { + achievement_type_lu: 'achievement_type_lu', + country: 'country', + dice_connection: 'dice_connection', + email: 'email', + email_status_lu: 'email_status_lu', + email_type_lu: 'email_type_lu', + id_sequences: 'id_sequences', + invalid_handles: 'invalid_handles', + security_groups: 'security_groups', + security_status_lu: 'security_status_lu', + security_user: 'security_user', + social_login_provider: 'social_login_provider', + sso_login_provider: 'sso_login_provider', + user: 'user', + user_2fa: 'user_2fa', + user_achievement: 'user_achievement', + user_group_xref: 'user_group_xref', + user_otp_email: 'user_otp_email', + user_social_login: 'user_social_login', + user_sso_login: 'user_sso_login', + user_status: 'user_status', + user_status_lu: 'user_status_lu', + user_status_type_lu: 'user_status_type_lu', + user_email_xref: 'user_email_xref', + Client: 'Client', + Role: 'Role', + RoleAssignment: 'RoleAssignment' +}; +/** + * Create the Client + */ +const config = { + "generator": { + "name": "externalClient", + "provider": { + "fromEnvVar": null, + "value": "prisma-client-js" + }, + "output": { + "value": "/Users/hentrymartin/development/identity-api-v6/packages/identity-prisma-client", + "fromEnvVar": null + }, + "config": { + "engineType": "library" + }, + "binaryTargets": [ + { + "fromEnvVar": null, + "value": "darwin-arm64", + "native": true + }, + { + "fromEnvVar": null, + "value": "debian-openssl-3.0.x" + } + ], + "previewFeatures": [], + "sourceFilePath": "/Users/hentrymartin/development/identity-api-v6/prisma/schema.prisma", + "isCustomOutput": true + }, + "relativeEnvPaths": { + "rootEnvPath": null + }, + "relativePath": "../../prisma", + "clientVersion": "6.19.1", + "engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", + "datasourceNames": [ + "db" + ], + "activeProvider": "postgresql", + "postinstall": false, + "inlineDatasources": { + "db": { + "url": { + "fromEnvVar": "IDENTITY_DB_URL", + "value": null + } + } + }, + "inlineSchema": "generator client {\n provider = \"prisma-client-js\"\n previewFeatures = [\"multiSchema\"]\n}\n\ngenerator externalClient {\n provider = \"prisma-client-js\"\n output = \"../packages/identity-prisma-client\"\n binaryTargets = [\"native\", \"debian-openssl-3.0.x\"]\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"IDENTITY_DB_URL\")\n schemas = [\"identity\"]\n}\n\n// IDENTITY SCHEMA MODELS\n// (Introspected from existing database)\n// -----------------------------------------\n\nmodel achievement_type_lu {\n achievement_type_id Decimal @id(map: \"achv_type_lu_pkey\") @db.Decimal(5, 0)\n achievement_type_desc String @db.VarChar(64)\n user_achievement user_achievement[]\n\n @@schema(\"identity\")\n}\n\nmodel country {\n country_code String @id @db.VarChar(3)\n country_name String @db.VarChar(40)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n participating Decimal? @db.Decimal(1, 0)\n default_taxform_id Decimal? @db.Decimal(10, 0)\n longitude Decimal? @db.Decimal(10, 7)\n latitude Decimal? @db.Decimal(10, 7)\n region String? @db.VarChar(64)\n iso_name String? @db.VarChar(128)\n iso_alpha2_code String? @db.VarChar(2)\n iso_alpha3_code String? @db.VarChar(3)\n\n @@schema(\"identity\")\n}\n\nmodel dice_connection {\n id Int @id(map: \"dice_connection_pk\") @default(autoincrement())\n user_id Decimal @unique @db.Decimal(10, 0)\n connection String? @db.VarChar(50)\n accepted Boolean @default(false)\n created_at DateTime @default(now()) @db.Timestamp(6)\n short_url String? @db.VarChar(100)\n con_created_at DateTime? @db.Timestamp(6)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@index([connection])\n @@schema(\"identity\")\n}\n\nmodel email {\n user_id Decimal? @db.Decimal(10, 0)\n email_id Decimal @id(map: \"u110_23\") @default(dbgenerated(\"nextval('sequence_email_seq'::regclass)\")) @db.Decimal(10, 0)\n email_type_id Decimal? @db.Decimal(5, 0)\n address String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n primary_ind Decimal? @db.Decimal(1, 0)\n status_id Decimal? @db.Decimal(3, 0)\n email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id], onDelete: NoAction, onUpdate: NoAction, map: \"email_emailstatuslu_fk\")\n email_type_lu email_type_lu? @relation(fields: [email_type_id], references: [email_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"email_emailtypelu_fk\")\n user_email_xref user_email_xref[]\n user user? @relation(\"UserToEmail\", fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@index([user_id, primary_ind], map: \"email_user_id_idx\")\n @@index([user_id, email_type_id, status_id])\n @@index([address, status_id])\n @@schema(\"identity\")\n}\n\nmodel email_status_lu {\n status_id Decimal @id(map: \"email_status_lu_pk\") @db.Decimal(3, 0)\n status_desc String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n email email[]\n user_email_xref user_email_xref[] // Added back-relation to user_email_xref\n\n @@schema(\"identity\")\n}\n\nmodel email_type_lu {\n email_type_id Decimal @id(map: \"email_type_lu_pk\") @db.Decimal(5, 0)\n email_type_desc String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n email email[]\n\n @@schema(\"identity\")\n}\n\nmodel id_sequences {\n name String @id @db.VarChar(254)\n next_block_start Decimal @db.Decimal(12, 0)\n block_size Decimal @db.Decimal(10, 0)\n exhausted Decimal @default(0) @db.Decimal(1, 0)\n\n @@schema(\"identity\")\n}\n\nmodel invalid_handles {\n invalid_handle_id Int @id(map: \"pk_invalid_hand556\")\n invalid_handle String @db.VarChar(20)\n\n @@schema(\"identity\")\n}\n\nmodel security_groups {\n group_id Decimal @id(map: \"pk_security_groups\") @db.Decimal(12, 0)\n description String @db.VarChar(254)\n challenge_group_ind Int @default(0) @db.SmallInt\n create_user_id Decimal? @db.Decimal(12, 0)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel security_status_lu {\n security_status_id Decimal @id(map: \"securitystatuslu_pkey\") @db.Decimal(3, 0)\n status_desc String? @db.VarChar(200)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel security_user {\n login_id Decimal @id(map: \"pk_security_user\") @db.Decimal(12, 0)\n user_id String @unique(map: \"security_user_i2\") @db.VarChar(50)\n password String @db.VarChar(300)\n create_user_id Decimal? @db.Decimal(12, 0)\n modify_date DateTime? @db.Timestamp(6)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel social_login_provider {\n social_login_provider_id Decimal @id(map: \"social_provider_prkey\") @db.Decimal(10, 0)\n name String? @db.VarChar(50)\n user_social_login user_social_login[]\n\n @@schema(\"identity\")\n}\n\nmodel sso_login_provider {\n sso_login_provider_id Decimal @id(map: \"sso_provider_prkey\") @db.Decimal(10, 0)\n name String? @db.VarChar(50)\n type String @db.VarChar(50)\n identify_email_enabled Boolean @default(true)\n identify_handle_enabled Boolean @default(true)\n user_sso_login user_sso_login[]\n\n @@schema(\"identity\")\n}\n\nmodel user {\n user_id Decimal @id(map: \"u175_45\") @default(dbgenerated(\"nextval('sequence_user_seq'::regclass)\")) @db.Decimal(10, 0)\n first_name String? @db.VarChar(64)\n last_name String? @db.VarChar(64)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n handle String @db.VarChar(50)\n last_login DateTime? @db.Timestamp(6)\n status String @db.VarChar(3)\n activation_code String? @db.VarChar(32)\n middle_name String? @db.VarChar(64)\n handle_lower String? @db.VarChar(50)\n timezone_id Decimal? @db.Decimal(5, 0)\n last_site_hit_date DateTime? @db.Timestamp(6)\n name_in_another_language String? @db.VarChar(64)\n password String? @db.VarChar(16)\n open_id String? @db.VarChar(200)\n reg_source String? @db.VarChar(20)\n utm_source String? @db.VarChar(50)\n utm_medium String? @db.VarChar(50)\n utm_campaign String? @db.VarChar(50)\n dice_connection dice_connection?\n user_2fa user_2fa?\n user_achievement user_achievement[]\n user_otp_email user_otp_email[]\n user_social_login user_social_login[]\n user_sso_login user_sso_login[]\n user_status user_status[]\n user_email_xref user_email_xref[]\n emails email[] @relation(\"UserToEmail\")\n\n @@index([activation_code], map: \"user_activ_code_idx\")\n @@index([handle])\n @@index([handle_lower], map: \"user_lower_handle_idx\")\n @@index([open_id])\n @@index([status, handle_lower])\n @@schema(\"identity\")\n}\n\nmodel user_2fa {\n id Int @id(map: \"user_2fa_pk\") @default(autoincrement())\n user_id Decimal @unique @db.Decimal(10, 0)\n mfa_enabled Boolean @default(false)\n dice_enabled Boolean @default(false)\n created_by Decimal @db.Decimal(10, 0)\n created_at DateTime @default(now()) @db.Timestamp(6)\n modified_by Decimal @db.Decimal(10, 0)\n modified_at DateTime @default(now()) @db.Timestamp(6)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@schema(\"identity\")\n}\n\n/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.\nmodel user_achievement {\n user_id Decimal @db.Decimal(10, 0) // Made non-nullable for PK\n achievement_date DateTime @db.Date\n achievement_type_id Decimal @db.Decimal(5, 0)\n description String? @db.VarChar(255)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n achievement_type_lu achievement_type_lu @relation(fields: [achievement_type_id], references: [achievement_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"achv_type_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"achv_user_fk\") // Made user relation non-nullable as user_id is non-nullable\n\n // Define composite primary key\n @@id([user_id, achievement_type_id], map: \"user_achievement_pkey\") // Added @@id\n // @@ignore // Removed @@ignore\n @@schema(\"identity\")\n}\n\nmodel user_group_xref {\n user_group_id Decimal @id(map: \"pk_user_group_xref\") @default(dbgenerated(\"nextval('sequence_user_group_seq'::regclass)\")) @db.Decimal(12, 0)\n login_id Decimal? @db.Decimal(12, 0)\n group_id Decimal? @db.Decimal(12, 0)\n create_user_id Decimal? @db.Decimal(12, 0)\n security_status_id Decimal? @db.Decimal(3, 0)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n security_user security_user? @relation(fields: [login_id], references: [login_id], onDelete: Cascade, onUpdate: NoAction, map: \"fk_user_grp_xref1\")\n security_groups security_groups? @relation(fields: [group_id], references: [group_id], onDelete: Cascade, onUpdate: NoAction, map: \"fk_user_grp_xref2\")\n security_status_lu security_status_lu? @relation(fields: [security_status_id], references: [security_status_id], onDelete: NoAction, onUpdate: NoAction, map: \"usergroupxref_status_fk\")\n\n @@unique([login_id, group_id], map: \"user_grp_xref_i2\")\n @@schema(\"identity\")\n}\n\nmodel user_otp_email {\n id Int @id(map: \"user_otp_email_pk\") @default(autoincrement())\n user_id Decimal @db.Decimal(10, 0)\n mode Int @db.SmallInt\n otp String @db.VarChar(6)\n expire_at DateTime @db.Timestamp(6)\n resend Boolean @default(false)\n fail_count Int @default(0) @db.SmallInt\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@unique([user_id, mode])\n @@schema(\"identity\")\n}\n\nmodel user_social_login {\n social_user_id String? @db.VarChar(254)\n user_id Decimal @db.Decimal(10, 0)\n social_login_provider_id Decimal @db.Decimal(10, 0)\n social_user_name String @db.VarChar(100)\n social_email String? @db.VarChar(100)\n social_email_verified Boolean?\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @db.Timestamp(6)\n social_login_provider social_login_provider @relation(fields: [social_login_provider_id], references: [social_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_social_provider_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_social_user_fk\")\n\n @@id([user_id, social_login_provider_id], map: \"user_social_prkey\")\n @@index([social_user_id, social_login_provider_id])\n @@schema(\"identity\")\n}\n\nmodel user_sso_login {\n user_id Decimal @db.Decimal(10, 0)\n sso_user_id String @db.VarChar(100)\n sso_user_name String? @db.VarChar(100)\n provider_id Decimal @db.Decimal(10, 0)\n email String? @db.VarChar(100)\n sso_login_provider sso_login_provider @relation(fields: [provider_id], references: [sso_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_sso_login_provider_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_sso_login_user_fk\")\n\n @@id([user_id, provider_id], map: \"user_sso_prkey\") // Primary key\n @@index([sso_user_id, provider_id], map: \"idx_user_social_login_sso_user_id_provider_id\") // Index only, NOT unique\n @@schema(\"identity\")\n}\n\nmodel user_status {\n user_id Decimal @db.Decimal(10, 0)\n user_status_type_id Decimal @db.Decimal(3, 0)\n user_status_id Decimal? @db.Decimal(5, 0)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_user_fk\")\n user_status_lu user_status_lu? @relation(fields: [user_status_id], references: [user_status_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_userstatuslu_fk\")\n user_status_type_lu user_status_type_lu @relation(fields: [user_status_type_id], references: [user_status_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_userstatustype_fk\")\n\n @@id([user_id, user_status_type_id], map: \"userstatus_pk\")\n @@schema(\"identity\")\n}\n\nmodel user_status_lu {\n user_status_id Decimal @id(map: \"u113_26\") @db.Decimal(5, 0)\n description String? @db.VarChar(100)\n user_status user_status[]\n\n @@schema(\"identity\")\n}\n\nmodel user_status_type_lu {\n user_status_type_id Decimal @id(map: \"userstatustypelu_pk\") @db.Decimal(3, 0)\n description String? @db.VarChar(100)\n user_status user_status[]\n\n @@schema(\"identity\")\n}\n\n// Explicit definition for the user-email join table\nmodel user_email_xref {\n user_id Decimal @db.Decimal(10, 0)\n email_id Decimal @db.Decimal(10, 0)\n is_primary Boolean // Assuming boolean based on name, adjust if Decimal(1,0)\n status_id Decimal @db.Decimal(3, 0) // Assuming relates to email_status_lu\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_email_xref_user_fk\") // Define relation\n email email @relation(fields: [email_id], references: [email_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_email_xref_email_fk\") // Define relation\n email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id]) // Optional relation to status lookup\n\n @@id([user_id, email_id], map: \"user_email_xref_pkey\") // Define composite primary key\n @@index([email_id], map: \"user_email_xref_email_idx\")\n @@index([user_id, status_id])\n @@schema(\"identity\")\n}\n\n// -----------------------------------------\n// (Migrated from MySQL DDL)\n// -----------------------------------------\n\nmodel Client {\n id Int @id @default(autoincrement()) @map(\"id\")\n clientId String @unique @map(\"client_id\")\n name String\n redirectUri String? @map(\"redirect_uri\") @db.VarChar(8192)\n secret String?\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0) // Use Timestamp(0) if you need second precision like MySQL datetime\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n\n @@map(\"client\") // Map model name to table name\n @@schema(\"identity\")\n}\n\nmodel Role {\n id Int @id @default(autoincrement()) @map(\"id\")\n name String @unique @db.VarChar(45)\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0)\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n\n roleAssignments RoleAssignment[] // Relation field\n\n @@map(\"role\") // Map model name to table name\n @@schema(\"identity\")\n}\n\nmodel RoleAssignment {\n id Int @id @default(autoincrement()) @map(\"id\")\n roleId Int @map(\"role_id\")\n subjectId Int @map(\"subject_id\")\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0)\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n subjectType Int @default(1) @map(\"subject_type\")\n\n role Role @relation(fields: [roleId], references: [id], map: \"role_id\") // Relation field\n\n @@unique([roleId, subjectId, subjectType], map: \"role_subject_id_subject_type\")\n @@index([subjectId], map: \"subject_id_idx\")\n @@index([roleId], map: \"role_id_idx\")\n @@index([subjectId, subjectType])\n @@map(\"role_assignment\")\n @@schema(\"identity\")\n}\n", + "inlineSchemaHash": "146549dc4277ba3db4608942c2cae9f5d81439e3f0cff4d805cba070b9eac179", + "copyEngine": true +} +config.dirname = '/' + +config.runtimeDataModel = JSON.parse("{\"models\":{\"achievement_type_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"achievement_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_type_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_achievement\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_achievement\",\"nativeType\":null,\"relationName\":\"achievement_type_luTouser_achievement\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"country\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"country_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"3\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"country_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"40\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"participating\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"1\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"default_taxform_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"longitude\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"7\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"latitude\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"7\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"region\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"iso_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"128\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"iso_alpha2_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"2\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"iso_alpha3_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"3\"]],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"dice_connection\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"connection\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"accepted\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"created_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"short_url\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"con_created_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"dice_connectionTouser\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"email\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"default\":{\"name\":\"dbgenerated\",\"args\":[\"nextval('sequence_email_seq'::regclass)\"]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"address\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"primary_ind\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"1\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email_status_lu\",\"nativeType\":null,\"relationName\":\"emailToemail_status_lu\",\"relationFromFields\":[\"status_id\"],\"relationToFields\":[\"status_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_type_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email_type_lu\",\"nativeType\":null,\"relationName\":\"emailToemail_type_lu\",\"relationFromFields\":[\"email_type_id\"],\"relationToFields\":[\"email_type_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_email_xref\",\"nativeType\":null,\"relationName\":\"emailTouser_email_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"UserToEmail\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"email_status_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"emailToemail_status_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_email_xref\",\"nativeType\":null,\"relationName\":\"email_status_luTouser_email_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"email_type_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"email_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_type_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"emailToemail_type_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"id_sequences\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"254\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"next_block_start\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"block_size\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"exhausted\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"1\",\"0\"]],\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"invalid_handles\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"invalid_handle_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"invalid_handle\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"20\"]],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"security_groups\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"group_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"254\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"challenge_group_ind\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":[\"SmallInt\",[]],\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_group_xref\",\"nativeType\":null,\"relationName\":\"security_groupsTouser_group_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"security_status_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"security_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"200\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_group_xref\",\"nativeType\":null,\"relationName\":\"security_status_luTouser_group_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"security_user\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"login_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"password\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"300\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_group_xref\",\"nativeType\":null,\"relationName\":\"security_userTouser_group_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"social_login_provider\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"social_login_provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_social_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_social_login\",\"nativeType\":null,\"relationName\":\"social_login_providerTouser_social_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"sso_login_provider\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"sso_login_provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"identify_email_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"identify_handle_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_sso_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_sso_login\",\"nativeType\":null,\"relationName\":\"sso_login_providerTouser_sso_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"default\":{\"name\":\"dbgenerated\",\"args\":[\"nextval('sequence_user_seq'::regclass)\"]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"first_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"last_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"handle\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"last_login\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"3\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"activation_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"32\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"middle_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"handle_lower\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"timezone_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"last_site_hit_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name_in_another_language\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"password\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"16\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"open_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"200\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"reg_source\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"20\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"utm_source\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"utm_medium\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"utm_campaign\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"dice_connection\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"dice_connection\",\"nativeType\":null,\"relationName\":\"dice_connectionTouser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_2fa\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_2fa\",\"nativeType\":null,\"relationName\":\"userTouser_2fa\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_achievement\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_achievement\",\"nativeType\":null,\"relationName\":\"userTouser_achievement\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_otp_email\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_otp_email\",\"nativeType\":null,\"relationName\":\"userTouser_otp_email\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_social_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_social_login\",\"nativeType\":null,\"relationName\":\"userTouser_social_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_sso_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_sso_login\",\"nativeType\":null,\"relationName\":\"userTouser_sso_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status\",\"nativeType\":null,\"relationName\":\"userTouser_status\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_email_xref\",\"nativeType\":null,\"relationName\":\"userTouser_email_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"emails\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"UserToEmail\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_2fa\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"mfa_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"dice_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"created_by\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"created_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modified_by\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modified_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_2fa\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_achievement\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Date\",[]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"255\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_type_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"achievement_type_lu\",\"nativeType\":null,\"relationName\":\"achievement_type_luTouser_achievement\",\"relationFromFields\":[\"achievement_type_id\"],\"relationToFields\":[\"achievement_type_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_achievement\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"achievement_type_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false,\"documentation\":\"The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.\"},\"user_group_xref\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_group_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"default\":{\"name\":\"dbgenerated\",\"args\":[\"nextval('sequence_user_group_seq'::regclass)\"]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"login_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"group_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"security_user\",\"nativeType\":null,\"relationName\":\"security_userTouser_group_xref\",\"relationFromFields\":[\"login_id\"],\"relationToFields\":[\"login_id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_groups\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"security_groups\",\"nativeType\":null,\"relationName\":\"security_groupsTouser_group_xref\",\"relationFromFields\":[\"group_id\"],\"relationToFields\":[\"group_id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"security_status_lu\",\"nativeType\":null,\"relationName\":\"security_status_luTouser_group_xref\",\"relationFromFields\":[\"security_status_id\"],\"relationToFields\":[\"security_status_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"login_id\",\"group_id\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"login_id\",\"group_id\"]}],\"isGenerated\":false},\"user_otp_email\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"mode\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":[\"SmallInt\",[]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"otp\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expire_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"resend\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"fail_count\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":[\"SmallInt\",[]],\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_otp_email\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"user_id\",\"mode\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"user_id\",\"mode\"]}],\"isGenerated\":false},\"user_social_login\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"social_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"254\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_login_provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_user_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_email_verified\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Boolean\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_login_provider\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"social_login_provider\",\"nativeType\":null,\"relationName\":\"social_login_providerTouser_social_login\",\"relationFromFields\":[\"social_login_provider_id\"],\"relationToFields\":[\"social_login_provider_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_social_login\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"social_login_provider_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_sso_login\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sso_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sso_user_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sso_login_provider\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"sso_login_provider\",\"nativeType\":null,\"relationName\":\"sso_login_providerTouser_sso_login\",\"relationFromFields\":[\"provider_id\"],\"relationToFields\":[\"sso_login_provider_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_sso_login\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"provider_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_status\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_status\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status_lu\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_lu\",\"relationFromFields\":[\"user_status_id\"],\"relationToFields\":[\"user_status_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_type_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status_type_lu\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_type_lu\",\"relationFromFields\":[\"user_status_type_id\"],\"relationToFields\":[\"user_status_type_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"user_status_type_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_status_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_status_type_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_status_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_type_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_email_xref\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"is_primary\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Boolean\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_email_xref\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"emailTouser_email_xref\",\"relationFromFields\":[\"email_id\"],\"relationToFields\":[\"email_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email_status_lu\",\"nativeType\":null,\"relationName\":\"email_status_luTouser_email_xref\",\"relationFromFields\":[\"status_id\"],\"relationToFields\":[\"status_id\"],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"email_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Client\":{\"dbName\":\"client\",\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"dbName\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"clientId\",\"dbName\":\"client_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"redirectUri\",\"dbName\":\"redirect_uri\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"8192\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"secret\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Role\":{\"dbName\":\"role\",\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"dbName\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"45\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"roleAssignments\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"RoleAssignment\",\"nativeType\":null,\"relationName\":\"RoleToRoleAssignment\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"RoleAssignment\":{\"dbName\":\"role_assignment\",\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"dbName\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"roleId\",\"dbName\":\"role_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"subjectId\",\"dbName\":\"subject_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"subjectType\",\"dbName\":\"subject_type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":1,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"role\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Role\",\"nativeType\":null,\"relationName\":\"RoleToRoleAssignment\",\"relationFromFields\":[\"roleId\"],\"relationToFields\":[\"id\"],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"roleId\",\"subjectId\",\"subjectType\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"roleId\",\"subjectId\",\"subjectType\"]}],\"isGenerated\":false}},\"enums\":{},\"types\":{}}") +defineDmmfProperty(exports.Prisma, config.runtimeDataModel) +config.engineWasm = undefined +config.compilerWasm = undefined + +config.injectableEdgeEnv = () => ({ + parsed: { + IDENTITY_DB_URL: typeof globalThis !== 'undefined' && globalThis['IDENTITY_DB_URL'] || typeof process !== 'undefined' && process.env && process.env.IDENTITY_DB_URL || undefined + } +}) + +if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) { + Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) +} + +const PrismaClient = getPrismaClient(config) +exports.PrismaClient = PrismaClient +Object.assign(exports, Prisma) + diff --git a/packages/identity-prisma-client/index-browser.js b/packages/identity-prisma-client/index-browser.js new file mode 100644 index 0000000..7344388 --- /dev/null +++ b/packages/identity-prisma-client/index-browser.js @@ -0,0 +1,435 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file + +Object.defineProperty(exports, "__esModule", { value: true }); + +const { + Decimal, + objectEnumValues, + makeStrictEnum, + Public, + getRuntime, + skip +} = require('./runtime/index-browser.js') + + +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} + +/** + * Prisma Client JS version: 6.19.1 + * Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7 + */ +Prisma.prismaVersion = { + client: "6.19.1", + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} + +Prisma.PrismaClientKnownRequestError = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)}; +Prisma.PrismaClientUnknownRequestError = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.PrismaClientRustPanicError = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.PrismaClientInitializationError = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.PrismaClientValidationError = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.Decimal = Decimal + +/** + * Re-export of sql-template-tag + */ +Prisma.sql = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.empty = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.join = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.raw = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.validator = Public.validator + +/** +* Extensions +*/ +Prisma.getExtensionContext = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} +Prisma.defineExtension = () => { + const runtimeName = getRuntime().prettyName; + throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}). +In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`, +)} + +/** + * Shorthand utilities for JSON filtering + */ +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull + +Prisma.NullTypes = { + DbNull: objectEnumValues.classes.DbNull, + JsonNull: objectEnumValues.classes.JsonNull, + AnyNull: objectEnumValues.classes.AnyNull +} + + + +/** + * Enums + */ + +exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' +}); + +exports.Prisma.Achievement_type_luScalarFieldEnum = { + achievement_type_id: 'achievement_type_id', + achievement_type_desc: 'achievement_type_desc' +}; + +exports.Prisma.CountryScalarFieldEnum = { + country_code: 'country_code', + country_name: 'country_name', + modify_date: 'modify_date', + participating: 'participating', + default_taxform_id: 'default_taxform_id', + longitude: 'longitude', + latitude: 'latitude', + region: 'region', + iso_name: 'iso_name', + iso_alpha2_code: 'iso_alpha2_code', + iso_alpha3_code: 'iso_alpha3_code' +}; + +exports.Prisma.Dice_connectionScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + connection: 'connection', + accepted: 'accepted', + created_at: 'created_at', + short_url: 'short_url', + con_created_at: 'con_created_at' +}; + +exports.Prisma.EmailScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + email_type_id: 'email_type_id', + address: 'address', + create_date: 'create_date', + modify_date: 'modify_date', + primary_ind: 'primary_ind', + status_id: 'status_id' +}; + +exports.Prisma.Email_status_luScalarFieldEnum = { + status_id: 'status_id', + status_desc: 'status_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Email_type_luScalarFieldEnum = { + email_type_id: 'email_type_id', + email_type_desc: 'email_type_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Id_sequencesScalarFieldEnum = { + name: 'name', + next_block_start: 'next_block_start', + block_size: 'block_size', + exhausted: 'exhausted' +}; + +exports.Prisma.Invalid_handlesScalarFieldEnum = { + invalid_handle_id: 'invalid_handle_id', + invalid_handle: 'invalid_handle' +}; + +exports.Prisma.Security_groupsScalarFieldEnum = { + group_id: 'group_id', + description: 'description', + challenge_group_ind: 'challenge_group_ind', + create_user_id: 'create_user_id' +}; + +exports.Prisma.Security_status_luScalarFieldEnum = { + security_status_id: 'security_status_id', + status_desc: 'status_desc' +}; + +exports.Prisma.Security_userScalarFieldEnum = { + login_id: 'login_id', + user_id: 'user_id', + password: 'password', + create_user_id: 'create_user_id', + modify_date: 'modify_date' +}; + +exports.Prisma.Social_login_providerScalarFieldEnum = { + social_login_provider_id: 'social_login_provider_id', + name: 'name' +}; + +exports.Prisma.Sso_login_providerScalarFieldEnum = { + sso_login_provider_id: 'sso_login_provider_id', + name: 'name', + type: 'type', + identify_email_enabled: 'identify_email_enabled', + identify_handle_enabled: 'identify_handle_enabled' +}; + +exports.Prisma.UserScalarFieldEnum = { + user_id: 'user_id', + first_name: 'first_name', + last_name: 'last_name', + create_date: 'create_date', + modify_date: 'modify_date', + handle: 'handle', + last_login: 'last_login', + status: 'status', + activation_code: 'activation_code', + middle_name: 'middle_name', + handle_lower: 'handle_lower', + timezone_id: 'timezone_id', + last_site_hit_date: 'last_site_hit_date', + name_in_another_language: 'name_in_another_language', + password: 'password', + open_id: 'open_id', + reg_source: 'reg_source', + utm_source: 'utm_source', + utm_medium: 'utm_medium', + utm_campaign: 'utm_campaign' +}; + +exports.Prisma.User_2faScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mfa_enabled: 'mfa_enabled', + dice_enabled: 'dice_enabled', + created_by: 'created_by', + created_at: 'created_at', + modified_by: 'modified_by', + modified_at: 'modified_at' +}; + +exports.Prisma.User_achievementScalarFieldEnum = { + user_id: 'user_id', + achievement_date: 'achievement_date', + achievement_type_id: 'achievement_type_id', + description: 'description', + create_date: 'create_date' +}; + +exports.Prisma.User_group_xrefScalarFieldEnum = { + user_group_id: 'user_group_id', + login_id: 'login_id', + group_id: 'group_id', + create_user_id: 'create_user_id', + security_status_id: 'security_status_id', + create_date: 'create_date' +}; + +exports.Prisma.User_otp_emailScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mode: 'mode', + otp: 'otp', + expire_at: 'expire_at', + resend: 'resend', + fail_count: 'fail_count' +}; + +exports.Prisma.User_social_loginScalarFieldEnum = { + social_user_id: 'social_user_id', + user_id: 'user_id', + social_login_provider_id: 'social_login_provider_id', + social_user_name: 'social_user_name', + social_email: 'social_email', + social_email_verified: 'social_email_verified', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.User_sso_loginScalarFieldEnum = { + user_id: 'user_id', + sso_user_id: 'sso_user_id', + sso_user_name: 'sso_user_name', + provider_id: 'provider_id', + email: 'email' +}; + +exports.Prisma.User_statusScalarFieldEnum = { + user_id: 'user_id', + user_status_type_id: 'user_status_type_id', + user_status_id: 'user_status_id' +}; + +exports.Prisma.User_status_luScalarFieldEnum = { + user_status_id: 'user_status_id', + description: 'description' +}; + +exports.Prisma.User_status_type_luScalarFieldEnum = { + user_status_type_id: 'user_status_type_id', + description: 'description' +}; + +exports.Prisma.User_email_xrefScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + is_primary: 'is_primary', + status_id: 'status_id', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.ClientScalarFieldEnum = { + id: 'id', + clientId: 'clientId', + name: 'name', + redirectUri: 'redirectUri', + secret: 'secret', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleScalarFieldEnum = { + id: 'id', + name: 'name', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleAssignmentScalarFieldEnum = { + id: 'id', + roleId: 'roleId', + subjectId: 'subjectId', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt', + subjectType: 'subjectType' +}; + +exports.Prisma.SortOrder = { + asc: 'asc', + desc: 'desc' +}; + +exports.Prisma.QueryMode = { + default: 'default', + insensitive: 'insensitive' +}; + +exports.Prisma.NullsOrder = { + first: 'first', + last: 'last' +}; + + +exports.Prisma.ModelName = { + achievement_type_lu: 'achievement_type_lu', + country: 'country', + dice_connection: 'dice_connection', + email: 'email', + email_status_lu: 'email_status_lu', + email_type_lu: 'email_type_lu', + id_sequences: 'id_sequences', + invalid_handles: 'invalid_handles', + security_groups: 'security_groups', + security_status_lu: 'security_status_lu', + security_user: 'security_user', + social_login_provider: 'social_login_provider', + sso_login_provider: 'sso_login_provider', + user: 'user', + user_2fa: 'user_2fa', + user_achievement: 'user_achievement', + user_group_xref: 'user_group_xref', + user_otp_email: 'user_otp_email', + user_social_login: 'user_social_login', + user_sso_login: 'user_sso_login', + user_status: 'user_status', + user_status_lu: 'user_status_lu', + user_status_type_lu: 'user_status_type_lu', + user_email_xref: 'user_email_xref', + Client: 'Client', + Role: 'Role', + RoleAssignment: 'RoleAssignment' +}; + +/** + * This is a stub Prisma Client that will error at runtime if called. + */ +class PrismaClient { + constructor() { + return new Proxy(this, { + get(target, prop) { + let message + const runtime = getRuntime() + if (runtime.isEdge) { + message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either: +- Use Prisma Accelerate: https://pris.ly/d/accelerate +- Use Driver Adapters: https://pris.ly/d/driver-adapters +`; + } else { + message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).' + } + + message += ` +If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report` + + throw new Error(message) + } + }) + } +} + +exports.PrismaClient = PrismaClient + +Object.assign(exports, Prisma) diff --git a/packages/identity-prisma-client/index.d.ts b/packages/identity-prisma-client/index.d.ts new file mode 100644 index 0000000..7db963c --- /dev/null +++ b/packages/identity-prisma-client/index.d.ts @@ -0,0 +1,44410 @@ + +/** + * 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 achievement_type_lu + * + */ +export type achievement_type_lu = $Result.DefaultSelection +/** + * Model country + * + */ +export type country = $Result.DefaultSelection +/** + * Model dice_connection + * + */ +export type dice_connection = $Result.DefaultSelection +/** + * Model email + * + */ +export type email = $Result.DefaultSelection +/** + * Model email_status_lu + * + */ +export type email_status_lu = $Result.DefaultSelection +/** + * Model email_type_lu + * + */ +export type email_type_lu = $Result.DefaultSelection +/** + * Model id_sequences + * + */ +export type id_sequences = $Result.DefaultSelection +/** + * Model invalid_handles + * + */ +export type invalid_handles = $Result.DefaultSelection +/** + * Model security_groups + * + */ +export type security_groups = $Result.DefaultSelection +/** + * Model security_status_lu + * + */ +export type security_status_lu = $Result.DefaultSelection +/** + * Model security_user + * + */ +export type security_user = $Result.DefaultSelection +/** + * Model social_login_provider + * + */ +export type social_login_provider = $Result.DefaultSelection +/** + * Model sso_login_provider + * + */ +export type sso_login_provider = $Result.DefaultSelection +/** + * Model user + * + */ +export type user = $Result.DefaultSelection +/** + * Model user_2fa + * + */ +export type user_2fa = $Result.DefaultSelection +/** + * Model user_achievement + * The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client. + */ +export type user_achievement = $Result.DefaultSelection +/** + * Model user_group_xref + * + */ +export type user_group_xref = $Result.DefaultSelection +/** + * Model user_otp_email + * + */ +export type user_otp_email = $Result.DefaultSelection +/** + * Model user_social_login + * + */ +export type user_social_login = $Result.DefaultSelection +/** + * Model user_sso_login + * + */ +export type user_sso_login = $Result.DefaultSelection +/** + * Model user_status + * + */ +export type user_status = $Result.DefaultSelection +/** + * Model user_status_lu + * + */ +export type user_status_lu = $Result.DefaultSelection +/** + * Model user_status_type_lu + * + */ +export type user_status_type_lu = $Result.DefaultSelection +/** + * Model user_email_xref + * + */ +export type user_email_xref = $Result.DefaultSelection +/** + * Model Client + * + */ +export type Client = $Result.DefaultSelection +/** + * Model Role + * + */ +export type Role = $Result.DefaultSelection +/** + * Model RoleAssignment + * + */ +export type RoleAssignment = $Result.DefaultSelection + +/** + * ## Prisma Client ʲˢ + * + * Type-safe database client for TypeScript & Node.js + * @example + * ``` + * const prisma = new PrismaClient() + * // Fetch zero or more Achievement_type_lus + * const achievement_type_lus = await prisma.achievement_type_lu.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 Achievement_type_lus + * const achievement_type_lus = await prisma.achievement_type_lu.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, { + extArgs: ExtArgs + }>> + + /** + * `prisma.achievement_type_lu`: Exposes CRUD operations for the **achievement_type_lu** model. + * Example usage: + * ```ts + * // Fetch zero or more Achievement_type_lus + * const achievement_type_lus = await prisma.achievement_type_lu.findMany() + * ``` + */ + get achievement_type_lu(): Prisma.achievement_type_luDelegate; + + /** + * `prisma.country`: Exposes CRUD operations for the **country** model. + * Example usage: + * ```ts + * // Fetch zero or more Countries + * const countries = await prisma.country.findMany() + * ``` + */ + get country(): Prisma.countryDelegate; + + /** + * `prisma.dice_connection`: Exposes CRUD operations for the **dice_connection** model. + * Example usage: + * ```ts + * // Fetch zero or more Dice_connections + * const dice_connections = await prisma.dice_connection.findMany() + * ``` + */ + get dice_connection(): Prisma.dice_connectionDelegate; + + /** + * `prisma.email`: Exposes CRUD operations for the **email** model. + * Example usage: + * ```ts + * // Fetch zero or more Emails + * const emails = await prisma.email.findMany() + * ``` + */ + get email(): Prisma.emailDelegate; + + /** + * `prisma.email_status_lu`: Exposes CRUD operations for the **email_status_lu** model. + * Example usage: + * ```ts + * // Fetch zero or more Email_status_lus + * const email_status_lus = await prisma.email_status_lu.findMany() + * ``` + */ + get email_status_lu(): Prisma.email_status_luDelegate; + + /** + * `prisma.email_type_lu`: Exposes CRUD operations for the **email_type_lu** model. + * Example usage: + * ```ts + * // Fetch zero or more Email_type_lus + * const email_type_lus = await prisma.email_type_lu.findMany() + * ``` + */ + get email_type_lu(): Prisma.email_type_luDelegate; + + /** + * `prisma.id_sequences`: Exposes CRUD operations for the **id_sequences** model. + * Example usage: + * ```ts + * // Fetch zero or more Id_sequences + * const id_sequences = await prisma.id_sequences.findMany() + * ``` + */ + get id_sequences(): Prisma.id_sequencesDelegate; + + /** + * `prisma.invalid_handles`: Exposes CRUD operations for the **invalid_handles** model. + * Example usage: + * ```ts + * // Fetch zero or more Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findMany() + * ``` + */ + get invalid_handles(): Prisma.invalid_handlesDelegate; + + /** + * `prisma.security_groups`: Exposes CRUD operations for the **security_groups** model. + * Example usage: + * ```ts + * // Fetch zero or more Security_groups + * const security_groups = await prisma.security_groups.findMany() + * ``` + */ + get security_groups(): Prisma.security_groupsDelegate; + + /** + * `prisma.security_status_lu`: Exposes CRUD operations for the **security_status_lu** model. + * Example usage: + * ```ts + * // Fetch zero or more Security_status_lus + * const security_status_lus = await prisma.security_status_lu.findMany() + * ``` + */ + get security_status_lu(): Prisma.security_status_luDelegate; + + /** + * `prisma.security_user`: Exposes CRUD operations for the **security_user** model. + * Example usage: + * ```ts + * // Fetch zero or more Security_users + * const security_users = await prisma.security_user.findMany() + * ``` + */ + get security_user(): Prisma.security_userDelegate; + + /** + * `prisma.social_login_provider`: Exposes CRUD operations for the **social_login_provider** model. + * Example usage: + * ```ts + * // Fetch zero or more Social_login_providers + * const social_login_providers = await prisma.social_login_provider.findMany() + * ``` + */ + get social_login_provider(): Prisma.social_login_providerDelegate; + + /** + * `prisma.sso_login_provider`: Exposes CRUD operations for the **sso_login_provider** model. + * Example usage: + * ```ts + * // Fetch zero or more Sso_login_providers + * const sso_login_providers = await prisma.sso_login_provider.findMany() + * ``` + */ + get sso_login_provider(): Prisma.sso_login_providerDelegate; + + /** + * `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.user_2fa`: Exposes CRUD operations for the **user_2fa** model. + * Example usage: + * ```ts + * // Fetch zero or more User_2fas + * const user_2fas = await prisma.user_2fa.findMany() + * ``` + */ + get user_2fa(): Prisma.user_2faDelegate; + + /** + * `prisma.user_achievement`: Exposes CRUD operations for the **user_achievement** model. + * Example usage: + * ```ts + * // Fetch zero or more User_achievements + * const user_achievements = await prisma.user_achievement.findMany() + * ``` + */ + get user_achievement(): Prisma.user_achievementDelegate; + + /** + * `prisma.user_group_xref`: Exposes CRUD operations for the **user_group_xref** model. + * Example usage: + * ```ts + * // Fetch zero or more User_group_xrefs + * const user_group_xrefs = await prisma.user_group_xref.findMany() + * ``` + */ + get user_group_xref(): Prisma.user_group_xrefDelegate; + + /** + * `prisma.user_otp_email`: Exposes CRUD operations for the **user_otp_email** model. + * Example usage: + * ```ts + * // Fetch zero or more User_otp_emails + * const user_otp_emails = await prisma.user_otp_email.findMany() + * ``` + */ + get user_otp_email(): Prisma.user_otp_emailDelegate; + + /** + * `prisma.user_social_login`: Exposes CRUD operations for the **user_social_login** model. + * Example usage: + * ```ts + * // Fetch zero or more User_social_logins + * const user_social_logins = await prisma.user_social_login.findMany() + * ``` + */ + get user_social_login(): Prisma.user_social_loginDelegate; + + /** + * `prisma.user_sso_login`: Exposes CRUD operations for the **user_sso_login** model. + * Example usage: + * ```ts + * // Fetch zero or more User_sso_logins + * const user_sso_logins = await prisma.user_sso_login.findMany() + * ``` + */ + get user_sso_login(): Prisma.user_sso_loginDelegate; + + /** + * `prisma.user_status`: Exposes CRUD operations for the **user_status** model. + * Example usage: + * ```ts + * // Fetch zero or more User_statuses + * const user_statuses = await prisma.user_status.findMany() + * ``` + */ + get user_status(): Prisma.user_statusDelegate; + + /** + * `prisma.user_status_lu`: Exposes CRUD operations for the **user_status_lu** model. + * Example usage: + * ```ts + * // Fetch zero or more User_status_lus + * const user_status_lus = await prisma.user_status_lu.findMany() + * ``` + */ + get user_status_lu(): Prisma.user_status_luDelegate; + + /** + * `prisma.user_status_type_lu`: Exposes CRUD operations for the **user_status_type_lu** model. + * Example usage: + * ```ts + * // Fetch zero or more User_status_type_lus + * const user_status_type_lus = await prisma.user_status_type_lu.findMany() + * ``` + */ + get user_status_type_lu(): Prisma.user_status_type_luDelegate; + + /** + * `prisma.user_email_xref`: Exposes CRUD operations for the **user_email_xref** model. + * Example usage: + * ```ts + * // Fetch zero or more User_email_xrefs + * const user_email_xrefs = await prisma.user_email_xref.findMany() + * ``` + */ + get user_email_xref(): Prisma.user_email_xrefDelegate; + + /** + * `prisma.client`: Exposes CRUD operations for the **Client** model. + * Example usage: + * ```ts + * // Fetch zero or more Clients + * const clients = await prisma.client.findMany() + * ``` + */ + get client(): Prisma.ClientDelegate; + + /** + * `prisma.role`: Exposes CRUD operations for the **Role** model. + * Example usage: + * ```ts + * // Fetch zero or more Roles + * const roles = await prisma.role.findMany() + * ``` + */ + get role(): Prisma.RoleDelegate; + + /** + * `prisma.roleAssignment`: Exposes CRUD operations for the **RoleAssignment** model. + * Example usage: + * ```ts + * // Fetch zero or more RoleAssignments + * const roleAssignments = await prisma.roleAssignment.findMany() + * ``` + */ + get roleAssignment(): Prisma.RoleAssignmentDelegate; +} + +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.1 + * 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 $Utils.JsPromise> = PromiseType> + + /** + * From T, pick a set of properties whose keys are in the union K + */ + type Prisma__Pick = { + [P in K]: T[P]; + }; + + + export type Enumerable = T | Array; + + export type RequiredKeys = { + [K in keyof T]-?: {} extends Prisma__Pick ? never : K + }[keyof T] + + export type TruthyKeys = keyof { + [K in keyof T as T[K] extends false | undefined | null ? never : K]: K + } + + export type TrueKeys = TruthyKeys>> + + /** + * Subset + * @desc From `T` pick properties that exist in `U`. Simple version of Intersection + */ + export type Subset = { + [key in keyof T]: key extends keyof U ? T[key] : never; + }; + + /** + * SelectSubset + * @desc From `T` pick properties that exist in `U`. Simple version of Intersection. + * Additionally, it validates, if both select and include are present. If the case, it errors. + */ + export type SelectSubset = { + [key in keyof T]: key extends keyof U ? T[key] : never + } & + (T extends SelectAndInclude + ? 'Please either choose `select` or `include`.' + : T extends SelectAndOmit + ? 'Please either choose `select` or `omit`.' + : {}) + + /** + * Subset + Intersection + * @desc From `T` pick properties that exist in `U` and intersect `K` + */ + export type SubsetIntersection = { + [key in keyof T]: key extends keyof U ? T[key] : never + } & + K + + type Without = { [P in Exclude]?: never }; + + /** + * XOR is needed to have a real mutually exclusive union type + * https://stackoverflow.com/questions/42123407/does-typescript-support-mutually-exclusive-types + */ + type XOR = + T extends object ? + U extends object ? + (Without & U) | (Without & T) + : U : T + + + /** + * Is T a Record? + */ + type IsObject = T extends Array + ? False + : T extends Date + ? False + : T extends Uint8Array + ? False + : T extends BigInt + ? False + : T extends object + ? True + : False + + + /** + * If it's T[], return T + */ + export type UnEnumerate = T extends Array ? U : T + + /** + * From ts-toolbelt + */ + + type __Either = Omit & + { + // Merge all but K + [P in K]: Prisma__Pick // With K possibilities + }[K] + + type EitherStrict = Strict<__Either> + + type EitherLoose = ComputeRaw<__Either> + + type _Either< + O extends object, + K extends Key, + strict extends Boolean + > = { + 1: EitherStrict + 0: EitherLoose + }[strict] + + type Either< + O extends object, + K extends Key, + strict extends Boolean = 1 + > = O extends unknown ? _Either : never + + export type Union = any + + type PatchUndefined = { + [K in keyof O]: O[K] extends undefined ? At : O[K] + } & {} + + /** Helper Types for "Merge" **/ + export type IntersectOf = ( + U extends unknown ? (k: U) => void : never + ) extends (k: infer I) => void + ? I + : never + + export type Overwrite = { + [K in keyof O]: K extends keyof O1 ? O1[K] : O[K]; + } & {}; + + type _Merge = IntersectOf; + }>>; + + type Key = string | number | symbol; + type AtBasic = K extends keyof O ? O[K] : never; + type AtStrict = O[K & keyof O]; + type AtLoose = O extends unknown ? AtStrict : never; + export type At = { + 1: AtStrict; + 0: AtLoose; + }[strict]; + + export type ComputeRaw = A extends Function ? A : { + [K in keyof A]: A[K]; + } & {}; + + export type OptionalFlat = { + [K in keyof O]?: O[K]; + } & {}; + + type _Record = { + [P in K]: T; + }; + + // cause typescript not to expand types and preserve names + type NoExpand = T extends unknown ? T : never; + + // this type assumes the passed object is entirely optional + type AtLeast = NoExpand< + O extends unknown + ? | (K extends keyof O ? { [P in K]: O[P] } & O : O) + | {[P in keyof O as P extends K ? 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 extends object ? Merge> : never> + : never + : {} extends FieldPaths + ? never + : K + }[keyof T] + + /** + * Convert tuple to union + */ + type _TupleToUnion = T extends (infer E)[] ? E : never + type TupleToUnion = _TupleToUnion + type MaybeTupleToUnion = T extends any[] ? TupleToUnion : T + + /** + * Like `Pick`, but additionally can also accept an array of keys + */ + type PickEnumerable | keyof T> = Prisma__Pick> + + /** + * Exclude all keys with underscores + */ + type ExcludeUnderscoreKeys = T extends `_${string}` ? never : T + + + export type FieldRef = runtime.FieldRef + + type FieldRefInputType = Model extends never ? never : FieldRef + + + export const ModelName: { + achievement_type_lu: 'achievement_type_lu', + country: 'country', + dice_connection: 'dice_connection', + email: 'email', + email_status_lu: 'email_status_lu', + email_type_lu: 'email_type_lu', + id_sequences: 'id_sequences', + invalid_handles: 'invalid_handles', + security_groups: 'security_groups', + security_status_lu: 'security_status_lu', + security_user: 'security_user', + social_login_provider: 'social_login_provider', + sso_login_provider: 'sso_login_provider', + user: 'user', + user_2fa: 'user_2fa', + user_achievement: 'user_achievement', + user_group_xref: 'user_group_xref', + user_otp_email: 'user_otp_email', + user_social_login: 'user_social_login', + user_sso_login: 'user_sso_login', + user_status: 'user_status', + user_status_lu: 'user_status_lu', + user_status_type_lu: 'user_status_type_lu', + user_email_xref: 'user_email_xref', + Client: 'Client', + Role: 'Role', + RoleAssignment: 'RoleAssignment' + }; + + 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 + } + + export type TypeMap = { + globalOmitOptions: { + omit: GlobalOmitOptions + } + meta: { + modelProps: "achievement_type_lu" | "country" | "dice_connection" | "email" | "email_status_lu" | "email_type_lu" | "id_sequences" | "invalid_handles" | "security_groups" | "security_status_lu" | "security_user" | "social_login_provider" | "sso_login_provider" | "user" | "user_2fa" | "user_achievement" | "user_group_xref" | "user_otp_email" | "user_social_login" | "user_sso_login" | "user_status" | "user_status_lu" | "user_status_type_lu" | "user_email_xref" | "client" | "role" | "roleAssignment" + txIsolationLevel: Prisma.TransactionIsolationLevel + } + model: { + achievement_type_lu: { + payload: Prisma.$achievement_type_luPayload + fields: Prisma.achievement_type_luFieldRefs + operations: { + findUnique: { + args: Prisma.achievement_type_luFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.achievement_type_luFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.achievement_type_luFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.achievement_type_luFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.achievement_type_luFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.achievement_type_luCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.achievement_type_luCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.achievement_type_luCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.achievement_type_luDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.achievement_type_luUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.achievement_type_luDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.achievement_type_luUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.achievement_type_luUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.achievement_type_luUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Achievement_type_luAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.achievement_type_luGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.achievement_type_luCountArgs + result: $Utils.Optional | number + } + } + } + country: { + payload: Prisma.$countryPayload + fields: Prisma.countryFieldRefs + operations: { + findUnique: { + args: Prisma.countryFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.countryFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.countryFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.countryFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.countryFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.countryCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.countryCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.countryCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.countryDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.countryUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.countryDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.countryUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.countryUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.countryUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.CountryAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.countryGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.countryCountArgs + result: $Utils.Optional | number + } + } + } + dice_connection: { + payload: Prisma.$dice_connectionPayload + fields: Prisma.dice_connectionFieldRefs + operations: { + findUnique: { + args: Prisma.dice_connectionFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.dice_connectionFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.dice_connectionFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.dice_connectionFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.dice_connectionFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.dice_connectionCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.dice_connectionCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.dice_connectionCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.dice_connectionDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.dice_connectionUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.dice_connectionDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.dice_connectionUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.dice_connectionUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.dice_connectionUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Dice_connectionAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.dice_connectionGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.dice_connectionCountArgs + result: $Utils.Optional | number + } + } + } + email: { + payload: Prisma.$emailPayload + fields: Prisma.emailFieldRefs + operations: { + findUnique: { + args: Prisma.emailFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.emailFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.emailFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.emailFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.emailFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.emailCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.emailCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.emailCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.emailDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.emailUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.emailDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.emailUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.emailUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.emailUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.EmailAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.emailGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.emailCountArgs + result: $Utils.Optional | number + } + } + } + email_status_lu: { + payload: Prisma.$email_status_luPayload + fields: Prisma.email_status_luFieldRefs + operations: { + findUnique: { + args: Prisma.email_status_luFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.email_status_luFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.email_status_luFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.email_status_luFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.email_status_luFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.email_status_luCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.email_status_luCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.email_status_luCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.email_status_luDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.email_status_luUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.email_status_luDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.email_status_luUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.email_status_luUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.email_status_luUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Email_status_luAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.email_status_luGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.email_status_luCountArgs + result: $Utils.Optional | number + } + } + } + email_type_lu: { + payload: Prisma.$email_type_luPayload + fields: Prisma.email_type_luFieldRefs + operations: { + findUnique: { + args: Prisma.email_type_luFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.email_type_luFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.email_type_luFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.email_type_luFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.email_type_luFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.email_type_luCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.email_type_luCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.email_type_luCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.email_type_luDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.email_type_luUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.email_type_luDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.email_type_luUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.email_type_luUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.email_type_luUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Email_type_luAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.email_type_luGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.email_type_luCountArgs + result: $Utils.Optional | number + } + } + } + id_sequences: { + payload: Prisma.$id_sequencesPayload + fields: Prisma.id_sequencesFieldRefs + operations: { + findUnique: { + args: Prisma.id_sequencesFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.id_sequencesFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.id_sequencesFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.id_sequencesFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.id_sequencesFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.id_sequencesCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.id_sequencesCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.id_sequencesCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.id_sequencesDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.id_sequencesUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.id_sequencesDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.id_sequencesUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.id_sequencesUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.id_sequencesUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Id_sequencesAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.id_sequencesGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.id_sequencesCountArgs + result: $Utils.Optional | number + } + } + } + invalid_handles: { + payload: Prisma.$invalid_handlesPayload + fields: Prisma.invalid_handlesFieldRefs + operations: { + findUnique: { + args: Prisma.invalid_handlesFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.invalid_handlesFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.invalid_handlesFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.invalid_handlesFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.invalid_handlesFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.invalid_handlesCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.invalid_handlesCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.invalid_handlesCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.invalid_handlesDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.invalid_handlesUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.invalid_handlesDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.invalid_handlesUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.invalid_handlesUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.invalid_handlesUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Invalid_handlesAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.invalid_handlesGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.invalid_handlesCountArgs + result: $Utils.Optional | number + } + } + } + security_groups: { + payload: Prisma.$security_groupsPayload + fields: Prisma.security_groupsFieldRefs + operations: { + findUnique: { + args: Prisma.security_groupsFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.security_groupsFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.security_groupsFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.security_groupsFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.security_groupsFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.security_groupsCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.security_groupsCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.security_groupsCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.security_groupsDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.security_groupsUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.security_groupsDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.security_groupsUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.security_groupsUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.security_groupsUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Security_groupsAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.security_groupsGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.security_groupsCountArgs + result: $Utils.Optional | number + } + } + } + security_status_lu: { + payload: Prisma.$security_status_luPayload + fields: Prisma.security_status_luFieldRefs + operations: { + findUnique: { + args: Prisma.security_status_luFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.security_status_luFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.security_status_luFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.security_status_luFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.security_status_luFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.security_status_luCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.security_status_luCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.security_status_luCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.security_status_luDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.security_status_luUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.security_status_luDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.security_status_luUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.security_status_luUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.security_status_luUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Security_status_luAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.security_status_luGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.security_status_luCountArgs + result: $Utils.Optional | number + } + } + } + security_user: { + payload: Prisma.$security_userPayload + fields: Prisma.security_userFieldRefs + operations: { + findUnique: { + args: Prisma.security_userFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.security_userFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.security_userFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.security_userFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.security_userFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.security_userCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.security_userCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.security_userCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.security_userDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.security_userUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.security_userDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.security_userUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.security_userUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.security_userUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Security_userAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.security_userGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.security_userCountArgs + result: $Utils.Optional | number + } + } + } + social_login_provider: { + payload: Prisma.$social_login_providerPayload + fields: Prisma.social_login_providerFieldRefs + operations: { + findUnique: { + args: Prisma.social_login_providerFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.social_login_providerFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.social_login_providerFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.social_login_providerFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.social_login_providerFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.social_login_providerCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.social_login_providerCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.social_login_providerCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.social_login_providerDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.social_login_providerUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.social_login_providerDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.social_login_providerUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.social_login_providerUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.social_login_providerUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Social_login_providerAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.social_login_providerGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.social_login_providerCountArgs + result: $Utils.Optional | number + } + } + } + sso_login_provider: { + payload: Prisma.$sso_login_providerPayload + fields: Prisma.sso_login_providerFieldRefs + operations: { + findUnique: { + args: Prisma.sso_login_providerFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.sso_login_providerFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.sso_login_providerFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.sso_login_providerFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.sso_login_providerFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.sso_login_providerCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.sso_login_providerCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.sso_login_providerCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.sso_login_providerDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.sso_login_providerUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.sso_login_providerDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.sso_login_providerUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.sso_login_providerUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.sso_login_providerUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.Sso_login_providerAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.sso_login_providerGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.sso_login_providerCountArgs + result: $Utils.Optional | number + } + } + } + user: { + payload: Prisma.$userPayload + fields: Prisma.userFieldRefs + operations: { + findUnique: { + args: Prisma.userFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.userFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.userFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.userFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.userFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.userCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.userCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.userCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.userDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.userUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.userDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.userUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.userUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + 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 + } + } + } + user_2fa: { + payload: Prisma.$user_2faPayload + fields: Prisma.user_2faFieldRefs + operations: { + findUnique: { + args: Prisma.user_2faFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_2faFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_2faFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_2faFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_2faFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_2faCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_2faCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_2faCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_2faDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_2faUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_2faDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_2faUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_2faUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_2faUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_2faAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_2faGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_2faCountArgs + result: $Utils.Optional | number + } + } + } + user_achievement: { + payload: Prisma.$user_achievementPayload + fields: Prisma.user_achievementFieldRefs + operations: { + findUnique: { + args: Prisma.user_achievementFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_achievementFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_achievementFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_achievementFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_achievementFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_achievementCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_achievementCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_achievementCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_achievementDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_achievementUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_achievementDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_achievementUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_achievementUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_achievementUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_achievementAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_achievementGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_achievementCountArgs + result: $Utils.Optional | number + } + } + } + user_group_xref: { + payload: Prisma.$user_group_xrefPayload + fields: Prisma.user_group_xrefFieldRefs + operations: { + findUnique: { + args: Prisma.user_group_xrefFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_group_xrefFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_group_xrefFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_group_xrefFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_group_xrefFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_group_xrefCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_group_xrefCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_group_xrefCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_group_xrefDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_group_xrefUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_group_xrefDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_group_xrefUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_group_xrefUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_group_xrefUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_group_xrefAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_group_xrefGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_group_xrefCountArgs + result: $Utils.Optional | number + } + } + } + user_otp_email: { + payload: Prisma.$user_otp_emailPayload + fields: Prisma.user_otp_emailFieldRefs + operations: { + findUnique: { + args: Prisma.user_otp_emailFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_otp_emailFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_otp_emailFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_otp_emailFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_otp_emailFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_otp_emailCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_otp_emailCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_otp_emailCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_otp_emailDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_otp_emailUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_otp_emailDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_otp_emailUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_otp_emailUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_otp_emailUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_otp_emailAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_otp_emailGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_otp_emailCountArgs + result: $Utils.Optional | number + } + } + } + user_social_login: { + payload: Prisma.$user_social_loginPayload + fields: Prisma.user_social_loginFieldRefs + operations: { + findUnique: { + args: Prisma.user_social_loginFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_social_loginFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_social_loginFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_social_loginFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_social_loginFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_social_loginCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_social_loginCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_social_loginCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_social_loginDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_social_loginUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_social_loginDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_social_loginUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_social_loginUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_social_loginUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_social_loginAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_social_loginGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_social_loginCountArgs + result: $Utils.Optional | number + } + } + } + user_sso_login: { + payload: Prisma.$user_sso_loginPayload + fields: Prisma.user_sso_loginFieldRefs + operations: { + findUnique: { + args: Prisma.user_sso_loginFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_sso_loginFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_sso_loginFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_sso_loginFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_sso_loginFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_sso_loginCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_sso_loginCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_sso_loginCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_sso_loginDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_sso_loginUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_sso_loginDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_sso_loginUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_sso_loginUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_sso_loginUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_sso_loginAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_sso_loginGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_sso_loginCountArgs + result: $Utils.Optional | number + } + } + } + user_status: { + payload: Prisma.$user_statusPayload + fields: Prisma.user_statusFieldRefs + operations: { + findUnique: { + args: Prisma.user_statusFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_statusFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_statusFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_statusFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_statusFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_statusCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_statusCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_statusCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_statusDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_statusUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_statusDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_statusUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_statusUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_statusUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_statusAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_statusGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_statusCountArgs + result: $Utils.Optional | number + } + } + } + user_status_lu: { + payload: Prisma.$user_status_luPayload + fields: Prisma.user_status_luFieldRefs + operations: { + findUnique: { + args: Prisma.user_status_luFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_status_luFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_status_luFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_status_luFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_status_luFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_status_luCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_status_luCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_status_luCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_status_luDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_status_luUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_status_luDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_status_luUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_status_luUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_status_luUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_status_luAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_status_luGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_status_luCountArgs + result: $Utils.Optional | number + } + } + } + user_status_type_lu: { + payload: Prisma.$user_status_type_luPayload + fields: Prisma.user_status_type_luFieldRefs + operations: { + findUnique: { + args: Prisma.user_status_type_luFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_status_type_luFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_status_type_luFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_status_type_luFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_status_type_luFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_status_type_luCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_status_type_luCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_status_type_luCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_status_type_luDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_status_type_luUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_status_type_luDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_status_type_luUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_status_type_luUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_status_type_luUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_status_type_luAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_status_type_luGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_status_type_luCountArgs + result: $Utils.Optional | number + } + } + } + user_email_xref: { + payload: Prisma.$user_email_xrefPayload + fields: Prisma.user_email_xrefFieldRefs + operations: { + findUnique: { + args: Prisma.user_email_xrefFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.user_email_xrefFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.user_email_xrefFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.user_email_xrefFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.user_email_xrefFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.user_email_xrefCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.user_email_xrefCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.user_email_xrefCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.user_email_xrefDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.user_email_xrefUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.user_email_xrefDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.user_email_xrefUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.user_email_xrefUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.user_email_xrefUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.User_email_xrefAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.user_email_xrefGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.user_email_xrefCountArgs + result: $Utils.Optional | number + } + } + } + Client: { + payload: Prisma.$ClientPayload + fields: Prisma.ClientFieldRefs + operations: { + findUnique: { + args: Prisma.ClientFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ClientFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.ClientFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ClientFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.ClientFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.ClientCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.ClientCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.ClientCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.ClientDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.ClientUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ClientDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ClientUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.ClientUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.ClientUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.ClientAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.ClientGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.ClientCountArgs + result: $Utils.Optional | number + } + } + } + Role: { + payload: Prisma.$RolePayload + fields: Prisma.RoleFieldRefs + operations: { + findUnique: { + args: Prisma.RoleFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.RoleFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.RoleFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.RoleFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.RoleFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.RoleCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.RoleCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.RoleCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.RoleDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.RoleUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.RoleDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.RoleUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.RoleUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.RoleUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.RoleAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.RoleGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.RoleCountArgs + result: $Utils.Optional | number + } + } + } + RoleAssignment: { + payload: Prisma.$RoleAssignmentPayload + fields: Prisma.RoleAssignmentFieldRefs + operations: { + findUnique: { + args: Prisma.RoleAssignmentFindUniqueArgs + result: $Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.RoleAssignmentFindUniqueOrThrowArgs + result: $Utils.PayloadToResult + } + findFirst: { + args: Prisma.RoleAssignmentFindFirstArgs + result: $Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.RoleAssignmentFindFirstOrThrowArgs + result: $Utils.PayloadToResult + } + findMany: { + args: Prisma.RoleAssignmentFindManyArgs + result: $Utils.PayloadToResult[] + } + create: { + args: Prisma.RoleAssignmentCreateArgs + result: $Utils.PayloadToResult + } + createMany: { + args: Prisma.RoleAssignmentCreateManyArgs + result: BatchPayload + } + createManyAndReturn: { + args: Prisma.RoleAssignmentCreateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + delete: { + args: Prisma.RoleAssignmentDeleteArgs + result: $Utils.PayloadToResult + } + update: { + args: Prisma.RoleAssignmentUpdateArgs + result: $Utils.PayloadToResult + } + deleteMany: { + args: Prisma.RoleAssignmentDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.RoleAssignmentUpdateManyArgs + result: BatchPayload + } + updateManyAndReturn: { + args: Prisma.RoleAssignmentUpdateManyAndReturnArgs + result: $Utils.PayloadToResult[] + } + upsert: { + args: Prisma.RoleAssignmentUpsertArgs + result: $Utils.PayloadToResult + } + aggregate: { + args: Prisma.RoleAssignmentAggregateArgs + result: $Utils.Optional + } + groupBy: { + args: Prisma.RoleAssignmentGroupByArgs + result: $Utils.Optional[] + } + count: { + args: Prisma.RoleAssignmentCountArgs + 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 = { + achievement_type_lu?: achievement_type_luOmit + country?: countryOmit + dice_connection?: dice_connectionOmit + email?: emailOmit + email_status_lu?: email_status_luOmit + email_type_lu?: email_type_luOmit + id_sequences?: id_sequencesOmit + invalid_handles?: invalid_handlesOmit + security_groups?: security_groupsOmit + security_status_lu?: security_status_luOmit + security_user?: security_userOmit + social_login_provider?: social_login_providerOmit + sso_login_provider?: sso_login_providerOmit + user?: userOmit + user_2fa?: user_2faOmit + user_achievement?: user_achievementOmit + user_group_xref?: user_group_xrefOmit + user_otp_email?: user_otp_emailOmit + user_social_login?: user_social_loginOmit + user_sso_login?: user_sso_loginOmit + user_status?: user_statusOmit + user_status_lu?: user_status_luOmit + user_status_type_lu?: user_status_type_luOmit + user_email_xref?: user_email_xrefOmit + client?: ClientOmit + role?: RoleOmit + roleAssignment?: RoleAssignmentOmit + } + + /* 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 + + export type Datasource = { + url?: string + } + + /** + * Count Types + */ + + + /** + * Count Type Achievement_type_luCountOutputType + */ + + export type Achievement_type_luCountOutputType = { + user_achievement: number + } + + export type Achievement_type_luCountOutputTypeSelect = { + user_achievement?: boolean | Achievement_type_luCountOutputTypeCountUser_achievementArgs + } + + // Custom InputTypes + /** + * Achievement_type_luCountOutputType without action + */ + export type Achievement_type_luCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Achievement_type_luCountOutputType + */ + select?: Achievement_type_luCountOutputTypeSelect | null + } + + /** + * Achievement_type_luCountOutputType without action + */ + export type Achievement_type_luCountOutputTypeCountUser_achievementArgs = { + where?: user_achievementWhereInput + } + + + /** + * Count Type EmailCountOutputType + */ + + export type EmailCountOutputType = { + user_email_xref: number + } + + export type EmailCountOutputTypeSelect = { + user_email_xref?: boolean | EmailCountOutputTypeCountUser_email_xrefArgs + } + + // Custom InputTypes + /** + * EmailCountOutputType without action + */ + export type EmailCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the EmailCountOutputType + */ + select?: EmailCountOutputTypeSelect | null + } + + /** + * EmailCountOutputType without action + */ + export type EmailCountOutputTypeCountUser_email_xrefArgs = { + where?: user_email_xrefWhereInput + } + + + /** + * Count Type Email_status_luCountOutputType + */ + + export type Email_status_luCountOutputType = { + email: number + user_email_xref: number + } + + export type Email_status_luCountOutputTypeSelect = { + email?: boolean | Email_status_luCountOutputTypeCountEmailArgs + user_email_xref?: boolean | Email_status_luCountOutputTypeCountUser_email_xrefArgs + } + + // Custom InputTypes + /** + * Email_status_luCountOutputType without action + */ + export type Email_status_luCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Email_status_luCountOutputType + */ + select?: Email_status_luCountOutputTypeSelect | null + } + + /** + * Email_status_luCountOutputType without action + */ + export type Email_status_luCountOutputTypeCountEmailArgs = { + where?: emailWhereInput + } + + /** + * Email_status_luCountOutputType without action + */ + export type Email_status_luCountOutputTypeCountUser_email_xrefArgs = { + where?: user_email_xrefWhereInput + } + + + /** + * Count Type Email_type_luCountOutputType + */ + + export type Email_type_luCountOutputType = { + email: number + } + + export type Email_type_luCountOutputTypeSelect = { + email?: boolean | Email_type_luCountOutputTypeCountEmailArgs + } + + // Custom InputTypes + /** + * Email_type_luCountOutputType without action + */ + export type Email_type_luCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Email_type_luCountOutputType + */ + select?: Email_type_luCountOutputTypeSelect | null + } + + /** + * Email_type_luCountOutputType without action + */ + export type Email_type_luCountOutputTypeCountEmailArgs = { + where?: emailWhereInput + } + + + /** + * Count Type Security_groupsCountOutputType + */ + + export type Security_groupsCountOutputType = { + user_group_xref: number + } + + export type Security_groupsCountOutputTypeSelect = { + user_group_xref?: boolean | Security_groupsCountOutputTypeCountUser_group_xrefArgs + } + + // Custom InputTypes + /** + * Security_groupsCountOutputType without action + */ + export type Security_groupsCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Security_groupsCountOutputType + */ + select?: Security_groupsCountOutputTypeSelect | null + } + + /** + * Security_groupsCountOutputType without action + */ + export type Security_groupsCountOutputTypeCountUser_group_xrefArgs = { + where?: user_group_xrefWhereInput + } + + + /** + * Count Type Security_status_luCountOutputType + */ + + export type Security_status_luCountOutputType = { + user_group_xref: number + } + + export type Security_status_luCountOutputTypeSelect = { + user_group_xref?: boolean | Security_status_luCountOutputTypeCountUser_group_xrefArgs + } + + // Custom InputTypes + /** + * Security_status_luCountOutputType without action + */ + export type Security_status_luCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Security_status_luCountOutputType + */ + select?: Security_status_luCountOutputTypeSelect | null + } + + /** + * Security_status_luCountOutputType without action + */ + export type Security_status_luCountOutputTypeCountUser_group_xrefArgs = { + where?: user_group_xrefWhereInput + } + + + /** + * Count Type Security_userCountOutputType + */ + + export type Security_userCountOutputType = { + user_group_xref: number + } + + export type Security_userCountOutputTypeSelect = { + user_group_xref?: boolean | Security_userCountOutputTypeCountUser_group_xrefArgs + } + + // Custom InputTypes + /** + * Security_userCountOutputType without action + */ + export type Security_userCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Security_userCountOutputType + */ + select?: Security_userCountOutputTypeSelect | null + } + + /** + * Security_userCountOutputType without action + */ + export type Security_userCountOutputTypeCountUser_group_xrefArgs = { + where?: user_group_xrefWhereInput + } + + + /** + * Count Type Social_login_providerCountOutputType + */ + + export type Social_login_providerCountOutputType = { + user_social_login: number + } + + export type Social_login_providerCountOutputTypeSelect = { + user_social_login?: boolean | Social_login_providerCountOutputTypeCountUser_social_loginArgs + } + + // Custom InputTypes + /** + * Social_login_providerCountOutputType without action + */ + export type Social_login_providerCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Social_login_providerCountOutputType + */ + select?: Social_login_providerCountOutputTypeSelect | null + } + + /** + * Social_login_providerCountOutputType without action + */ + export type Social_login_providerCountOutputTypeCountUser_social_loginArgs = { + where?: user_social_loginWhereInput + } + + + /** + * Count Type Sso_login_providerCountOutputType + */ + + export type Sso_login_providerCountOutputType = { + user_sso_login: number + } + + export type Sso_login_providerCountOutputTypeSelect = { + user_sso_login?: boolean | Sso_login_providerCountOutputTypeCountUser_sso_loginArgs + } + + // Custom InputTypes + /** + * Sso_login_providerCountOutputType without action + */ + export type Sso_login_providerCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the Sso_login_providerCountOutputType + */ + select?: Sso_login_providerCountOutputTypeSelect | null + } + + /** + * Sso_login_providerCountOutputType without action + */ + export type Sso_login_providerCountOutputTypeCountUser_sso_loginArgs = { + where?: user_sso_loginWhereInput + } + + + /** + * Count Type UserCountOutputType + */ + + export type UserCountOutputType = { + user_achievement: number + user_otp_email: number + user_social_login: number + user_sso_login: number + user_status: number + user_email_xref: number + emails: number + } + + export type UserCountOutputTypeSelect = { + user_achievement?: boolean | UserCountOutputTypeCountUser_achievementArgs + user_otp_email?: boolean | UserCountOutputTypeCountUser_otp_emailArgs + user_social_login?: boolean | UserCountOutputTypeCountUser_social_loginArgs + user_sso_login?: boolean | UserCountOutputTypeCountUser_sso_loginArgs + user_status?: boolean | UserCountOutputTypeCountUser_statusArgs + user_email_xref?: boolean | UserCountOutputTypeCountUser_email_xrefArgs + emails?: boolean | UserCountOutputTypeCountEmailsArgs + } + + // Custom InputTypes + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the UserCountOutputType + */ + select?: UserCountOutputTypeSelect | null + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountUser_achievementArgs = { + where?: user_achievementWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountUser_otp_emailArgs = { + where?: user_otp_emailWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountUser_social_loginArgs = { + where?: user_social_loginWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountUser_sso_loginArgs = { + where?: user_sso_loginWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountUser_statusArgs = { + where?: user_statusWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountUser_email_xrefArgs = { + where?: user_email_xrefWhereInput + } + + /** + * UserCountOutputType without action + */ + export type UserCountOutputTypeCountEmailsArgs = { + where?: emailWhereInput + } + + + /** + * Count Type User_status_luCountOutputType + */ + + export type User_status_luCountOutputType = { + user_status: number + } + + export type User_status_luCountOutputTypeSelect = { + user_status?: boolean | User_status_luCountOutputTypeCountUser_statusArgs + } + + // Custom InputTypes + /** + * User_status_luCountOutputType without action + */ + export type User_status_luCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the User_status_luCountOutputType + */ + select?: User_status_luCountOutputTypeSelect | null + } + + /** + * User_status_luCountOutputType without action + */ + export type User_status_luCountOutputTypeCountUser_statusArgs = { + where?: user_statusWhereInput + } + + + /** + * Count Type User_status_type_luCountOutputType + */ + + export type User_status_type_luCountOutputType = { + user_status: number + } + + export type User_status_type_luCountOutputTypeSelect = { + user_status?: boolean | User_status_type_luCountOutputTypeCountUser_statusArgs + } + + // Custom InputTypes + /** + * User_status_type_luCountOutputType without action + */ + export type User_status_type_luCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the User_status_type_luCountOutputType + */ + select?: User_status_type_luCountOutputTypeSelect | null + } + + /** + * User_status_type_luCountOutputType without action + */ + export type User_status_type_luCountOutputTypeCountUser_statusArgs = { + where?: user_statusWhereInput + } + + + /** + * Count Type RoleCountOutputType + */ + + export type RoleCountOutputType = { + roleAssignments: number + } + + export type RoleCountOutputTypeSelect = { + roleAssignments?: boolean | RoleCountOutputTypeCountRoleAssignmentsArgs + } + + // Custom InputTypes + /** + * RoleCountOutputType without action + */ + export type RoleCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the RoleCountOutputType + */ + select?: RoleCountOutputTypeSelect | null + } + + /** + * RoleCountOutputType without action + */ + export type RoleCountOutputTypeCountRoleAssignmentsArgs = { + where?: RoleAssignmentWhereInput + } + + + /** + * Models + */ + + /** + * Model achievement_type_lu + */ + + export type AggregateAchievement_type_lu = { + _count: Achievement_type_luCountAggregateOutputType | null + _avg: Achievement_type_luAvgAggregateOutputType | null + _sum: Achievement_type_luSumAggregateOutputType | null + _min: Achievement_type_luMinAggregateOutputType | null + _max: Achievement_type_luMaxAggregateOutputType | null + } + + export type Achievement_type_luAvgAggregateOutputType = { + achievement_type_id: Decimal | null + } + + export type Achievement_type_luSumAggregateOutputType = { + achievement_type_id: Decimal | null + } + + export type Achievement_type_luMinAggregateOutputType = { + achievement_type_id: Decimal | null + achievement_type_desc: string | null + } + + export type Achievement_type_luMaxAggregateOutputType = { + achievement_type_id: Decimal | null + achievement_type_desc: string | null + } + + export type Achievement_type_luCountAggregateOutputType = { + achievement_type_id: number + achievement_type_desc: number + _all: number + } + + + export type Achievement_type_luAvgAggregateInputType = { + achievement_type_id?: true + } + + export type Achievement_type_luSumAggregateInputType = { + achievement_type_id?: true + } + + export type Achievement_type_luMinAggregateInputType = { + achievement_type_id?: true + achievement_type_desc?: true + } + + export type Achievement_type_luMaxAggregateInputType = { + achievement_type_id?: true + achievement_type_desc?: true + } + + export type Achievement_type_luCountAggregateInputType = { + achievement_type_id?: true + achievement_type_desc?: true + _all?: true + } + + export type Achievement_type_luAggregateArgs = { + /** + * Filter which achievement_type_lu to aggregate. + */ + where?: achievement_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of achievement_type_lus to fetch. + */ + orderBy?: achievement_type_luOrderByWithRelationInput | achievement_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: achievement_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` achievement_type_lus 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` achievement_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned achievement_type_lus + **/ + _count?: true | Achievement_type_luCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Achievement_type_luAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Achievement_type_luSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Achievement_type_luMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Achievement_type_luMaxAggregateInputType + } + + export type GetAchievement_type_luAggregateType = { + [P in keyof T & keyof AggregateAchievement_type_lu]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type achievement_type_luGroupByArgs = { + where?: achievement_type_luWhereInput + orderBy?: achievement_type_luOrderByWithAggregationInput | achievement_type_luOrderByWithAggregationInput[] + by: Achievement_type_luScalarFieldEnum[] | Achievement_type_luScalarFieldEnum + having?: achievement_type_luScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Achievement_type_luCountAggregateInputType | true + _avg?: Achievement_type_luAvgAggregateInputType + _sum?: Achievement_type_luSumAggregateInputType + _min?: Achievement_type_luMinAggregateInputType + _max?: Achievement_type_luMaxAggregateInputType + } + + export type Achievement_type_luGroupByOutputType = { + achievement_type_id: Decimal + achievement_type_desc: string + _count: Achievement_type_luCountAggregateOutputType | null + _avg: Achievement_type_luAvgAggregateOutputType | null + _sum: Achievement_type_luSumAggregateOutputType | null + _min: Achievement_type_luMinAggregateOutputType | null + _max: Achievement_type_luMaxAggregateOutputType | null + } + + type GetAchievement_type_luGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Achievement_type_luGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type achievement_type_luSelect = $Extensions.GetSelect<{ + achievement_type_id?: boolean + achievement_type_desc?: boolean + user_achievement?: boolean | achievement_type_lu$user_achievementArgs + _count?: boolean | Achievement_type_luCountOutputTypeDefaultArgs + }, ExtArgs["result"]["achievement_type_lu"]> + + export type achievement_type_luSelectCreateManyAndReturn = $Extensions.GetSelect<{ + achievement_type_id?: boolean + achievement_type_desc?: boolean + }, ExtArgs["result"]["achievement_type_lu"]> + + export type achievement_type_luSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + achievement_type_id?: boolean + achievement_type_desc?: boolean + }, ExtArgs["result"]["achievement_type_lu"]> + + export type achievement_type_luSelectScalar = { + achievement_type_id?: boolean + achievement_type_desc?: boolean + } + + export type achievement_type_luOmit = $Extensions.GetOmit<"achievement_type_id" | "achievement_type_desc", ExtArgs["result"]["achievement_type_lu"]> + export type achievement_type_luInclude = { + user_achievement?: boolean | achievement_type_lu$user_achievementArgs + _count?: boolean | Achievement_type_luCountOutputTypeDefaultArgs + } + export type achievement_type_luIncludeCreateManyAndReturn = {} + export type achievement_type_luIncludeUpdateManyAndReturn = {} + + export type $achievement_type_luPayload = { + name: "achievement_type_lu" + objects: { + user_achievement: Prisma.$user_achievementPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + achievement_type_id: Prisma.Decimal + achievement_type_desc: string + }, ExtArgs["result"]["achievement_type_lu"]> + composites: {} + } + + type achievement_type_luGetPayload = $Result.GetResult + + type achievement_type_luCountArgs = + Omit & { + select?: Achievement_type_luCountAggregateInputType | true + } + + export interface achievement_type_luDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['achievement_type_lu'], meta: { name: 'achievement_type_lu' } } + /** + * Find zero or one Achievement_type_lu that matches the filter. + * @param {achievement_type_luFindUniqueArgs} args - Arguments to find a Achievement_type_lu + * @example + * // Get one Achievement_type_lu + * const achievement_type_lu = await prisma.achievement_type_lu.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Achievement_type_lu that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {achievement_type_luFindUniqueOrThrowArgs} args - Arguments to find a Achievement_type_lu + * @example + * // Get one Achievement_type_lu + * const achievement_type_lu = await prisma.achievement_type_lu.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Achievement_type_lu 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 {achievement_type_luFindFirstArgs} args - Arguments to find a Achievement_type_lu + * @example + * // Get one Achievement_type_lu + * const achievement_type_lu = await prisma.achievement_type_lu.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Achievement_type_lu 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 {achievement_type_luFindFirstOrThrowArgs} args - Arguments to find a Achievement_type_lu + * @example + * // Get one Achievement_type_lu + * const achievement_type_lu = await prisma.achievement_type_lu.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Achievement_type_lus 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 {achievement_type_luFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Achievement_type_lus + * const achievement_type_lus = await prisma.achievement_type_lu.findMany() + * + * // Get first 10 Achievement_type_lus + * const achievement_type_lus = await prisma.achievement_type_lu.findMany({ take: 10 }) + * + * // Only select the `achievement_type_id` + * const achievement_type_luWithAchievement_type_idOnly = await prisma.achievement_type_lu.findMany({ select: { achievement_type_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Achievement_type_lu. + * @param {achievement_type_luCreateArgs} args - Arguments to create a Achievement_type_lu. + * @example + * // Create one Achievement_type_lu + * const Achievement_type_lu = await prisma.achievement_type_lu.create({ + * data: { + * // ... data to create a Achievement_type_lu + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Achievement_type_lus. + * @param {achievement_type_luCreateManyArgs} args - Arguments to create many Achievement_type_lus. + * @example + * // Create many Achievement_type_lus + * const achievement_type_lu = await prisma.achievement_type_lu.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Achievement_type_lus and returns the data saved in the database. + * @param {achievement_type_luCreateManyAndReturnArgs} args - Arguments to create many Achievement_type_lus. + * @example + * // Create many Achievement_type_lus + * const achievement_type_lu = await prisma.achievement_type_lu.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Achievement_type_lus and only return the `achievement_type_id` + * const achievement_type_luWithAchievement_type_idOnly = await prisma.achievement_type_lu.createManyAndReturn({ + * select: { achievement_type_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Achievement_type_lu. + * @param {achievement_type_luDeleteArgs} args - Arguments to delete one Achievement_type_lu. + * @example + * // Delete one Achievement_type_lu + * const Achievement_type_lu = await prisma.achievement_type_lu.delete({ + * where: { + * // ... filter to delete one Achievement_type_lu + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Achievement_type_lu. + * @param {achievement_type_luUpdateArgs} args - Arguments to update one Achievement_type_lu. + * @example + * // Update one Achievement_type_lu + * const achievement_type_lu = await prisma.achievement_type_lu.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Achievement_type_lus. + * @param {achievement_type_luDeleteManyArgs} args - Arguments to filter Achievement_type_lus to delete. + * @example + * // Delete a few Achievement_type_lus + * const { count } = await prisma.achievement_type_lu.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Achievement_type_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {achievement_type_luUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Achievement_type_lus + * const achievement_type_lu = await prisma.achievement_type_lu.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Achievement_type_lus and returns the data updated in the database. + * @param {achievement_type_luUpdateManyAndReturnArgs} args - Arguments to update many Achievement_type_lus. + * @example + * // Update many Achievement_type_lus + * const achievement_type_lu = await prisma.achievement_type_lu.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Achievement_type_lus and only return the `achievement_type_id` + * const achievement_type_luWithAchievement_type_idOnly = await prisma.achievement_type_lu.updateManyAndReturn({ + * select: { achievement_type_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Achievement_type_lu. + * @param {achievement_type_luUpsertArgs} args - Arguments to update or create a Achievement_type_lu. + * @example + * // Update or create a Achievement_type_lu + * const achievement_type_lu = await prisma.achievement_type_lu.upsert({ + * create: { + * // ... data to create a Achievement_type_lu + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Achievement_type_lu we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Achievement_type_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {achievement_type_luCountArgs} args - Arguments to filter Achievement_type_lus to count. + * @example + * // Count the number of Achievement_type_lus + * const count = await prisma.achievement_type_lu.count({ + * where: { + * // ... the filter for the Achievement_type_lus 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 Achievement_type_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Achievement_type_luAggregateArgs} 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 Achievement_type_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {achievement_type_luGroupByArgs} 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 achievement_type_luGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: achievement_type_luGroupByArgs['orderBy'] } + : { orderBy?: achievement_type_luGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetAchievement_type_luGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the achievement_type_lu model + */ + readonly fields: achievement_type_luFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for achievement_type_lu. + * 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__achievement_type_luClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_achievement = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 achievement_type_lu model + */ + interface achievement_type_luFieldRefs { + readonly achievement_type_id: FieldRef<"achievement_type_lu", 'Decimal'> + readonly achievement_type_desc: FieldRef<"achievement_type_lu", 'String'> + } + + + // Custom InputTypes + /** + * achievement_type_lu findUnique + */ + export type achievement_type_luFindUniqueArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * Filter, which achievement_type_lu to fetch. + */ + where: achievement_type_luWhereUniqueInput + } + + /** + * achievement_type_lu findUniqueOrThrow + */ + export type achievement_type_luFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * Filter, which achievement_type_lu to fetch. + */ + where: achievement_type_luWhereUniqueInput + } + + /** + * achievement_type_lu findFirst + */ + export type achievement_type_luFindFirstArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * Filter, which achievement_type_lu to fetch. + */ + where?: achievement_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of achievement_type_lus to fetch. + */ + orderBy?: achievement_type_luOrderByWithRelationInput | achievement_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for achievement_type_lus. + */ + cursor?: achievement_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` achievement_type_lus 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` achievement_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of achievement_type_lus. + */ + distinct?: Achievement_type_luScalarFieldEnum | Achievement_type_luScalarFieldEnum[] + } + + /** + * achievement_type_lu findFirstOrThrow + */ + export type achievement_type_luFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * Filter, which achievement_type_lu to fetch. + */ + where?: achievement_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of achievement_type_lus to fetch. + */ + orderBy?: achievement_type_luOrderByWithRelationInput | achievement_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for achievement_type_lus. + */ + cursor?: achievement_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` achievement_type_lus 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` achievement_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of achievement_type_lus. + */ + distinct?: Achievement_type_luScalarFieldEnum | Achievement_type_luScalarFieldEnum[] + } + + /** + * achievement_type_lu findMany + */ + export type achievement_type_luFindManyArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * Filter, which achievement_type_lus to fetch. + */ + where?: achievement_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of achievement_type_lus to fetch. + */ + orderBy?: achievement_type_luOrderByWithRelationInput | achievement_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing achievement_type_lus. + */ + cursor?: achievement_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` achievement_type_lus 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` achievement_type_lus. + */ + skip?: number + distinct?: Achievement_type_luScalarFieldEnum | Achievement_type_luScalarFieldEnum[] + } + + /** + * achievement_type_lu create + */ + export type achievement_type_luCreateArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * The data needed to create a achievement_type_lu. + */ + data: XOR + } + + /** + * achievement_type_lu createMany + */ + export type achievement_type_luCreateManyArgs = { + /** + * The data used to create many achievement_type_lus. + */ + data: achievement_type_luCreateManyInput | achievement_type_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * achievement_type_lu createManyAndReturn + */ + export type achievement_type_luCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelectCreateManyAndReturn | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * The data used to create many achievement_type_lus. + */ + data: achievement_type_luCreateManyInput | achievement_type_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * achievement_type_lu update + */ + export type achievement_type_luUpdateArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * The data needed to update a achievement_type_lu. + */ + data: XOR + /** + * Choose, which achievement_type_lu to update. + */ + where: achievement_type_luWhereUniqueInput + } + + /** + * achievement_type_lu updateMany + */ + export type achievement_type_luUpdateManyArgs = { + /** + * The data used to update achievement_type_lus. + */ + data: XOR + /** + * Filter which achievement_type_lus to update + */ + where?: achievement_type_luWhereInput + /** + * Limit how many achievement_type_lus to update. + */ + limit?: number + } + + /** + * achievement_type_lu updateManyAndReturn + */ + export type achievement_type_luUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * The data used to update achievement_type_lus. + */ + data: XOR + /** + * Filter which achievement_type_lus to update + */ + where?: achievement_type_luWhereInput + /** + * Limit how many achievement_type_lus to update. + */ + limit?: number + } + + /** + * achievement_type_lu upsert + */ + export type achievement_type_luUpsertArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * The filter to search for the achievement_type_lu to update in case it exists. + */ + where: achievement_type_luWhereUniqueInput + /** + * In case the achievement_type_lu found by the `where` argument doesn't exist, create a new achievement_type_lu with this data. + */ + create: XOR + /** + * In case the achievement_type_lu was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * achievement_type_lu delete + */ + export type achievement_type_luDeleteArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + /** + * Filter which achievement_type_lu to delete. + */ + where: achievement_type_luWhereUniqueInput + } + + /** + * achievement_type_lu deleteMany + */ + export type achievement_type_luDeleteManyArgs = { + /** + * Filter which achievement_type_lus to delete + */ + where?: achievement_type_luWhereInput + /** + * Limit how many achievement_type_lus to delete. + */ + limit?: number + } + + /** + * achievement_type_lu.user_achievement + */ + export type achievement_type_lu$user_achievementArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + where?: user_achievementWhereInput + orderBy?: user_achievementOrderByWithRelationInput | user_achievementOrderByWithRelationInput[] + cursor?: user_achievementWhereUniqueInput + take?: number + skip?: number + distinct?: User_achievementScalarFieldEnum | User_achievementScalarFieldEnum[] + } + + /** + * achievement_type_lu without action + */ + export type achievement_type_luDefaultArgs = { + /** + * Select specific fields to fetch from the achievement_type_lu + */ + select?: achievement_type_luSelect | null + /** + * Omit specific fields from the achievement_type_lu + */ + omit?: achievement_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: achievement_type_luInclude | null + } + + + /** + * Model country + */ + + export type AggregateCountry = { + _count: CountryCountAggregateOutputType | null + _avg: CountryAvgAggregateOutputType | null + _sum: CountrySumAggregateOutputType | null + _min: CountryMinAggregateOutputType | null + _max: CountryMaxAggregateOutputType | null + } + + export type CountryAvgAggregateOutputType = { + participating: Decimal | null + default_taxform_id: Decimal | null + longitude: Decimal | null + latitude: Decimal | null + } + + export type CountrySumAggregateOutputType = { + participating: Decimal | null + default_taxform_id: Decimal | null + longitude: Decimal | null + latitude: Decimal | null + } + + export type CountryMinAggregateOutputType = { + country_code: string | null + country_name: string | null + modify_date: Date | null + participating: Decimal | null + default_taxform_id: Decimal | null + longitude: Decimal | null + latitude: Decimal | null + region: string | null + iso_name: string | null + iso_alpha2_code: string | null + iso_alpha3_code: string | null + } + + export type CountryMaxAggregateOutputType = { + country_code: string | null + country_name: string | null + modify_date: Date | null + participating: Decimal | null + default_taxform_id: Decimal | null + longitude: Decimal | null + latitude: Decimal | null + region: string | null + iso_name: string | null + iso_alpha2_code: string | null + iso_alpha3_code: string | null + } + + export type CountryCountAggregateOutputType = { + country_code: number + country_name: number + modify_date: number + participating: number + default_taxform_id: number + longitude: number + latitude: number + region: number + iso_name: number + iso_alpha2_code: number + iso_alpha3_code: number + _all: number + } + + + export type CountryAvgAggregateInputType = { + participating?: true + default_taxform_id?: true + longitude?: true + latitude?: true + } + + export type CountrySumAggregateInputType = { + participating?: true + default_taxform_id?: true + longitude?: true + latitude?: true + } + + export type CountryMinAggregateInputType = { + country_code?: true + country_name?: true + modify_date?: true + participating?: true + default_taxform_id?: true + longitude?: true + latitude?: true + region?: true + iso_name?: true + iso_alpha2_code?: true + iso_alpha3_code?: true + } + + export type CountryMaxAggregateInputType = { + country_code?: true + country_name?: true + modify_date?: true + participating?: true + default_taxform_id?: true + longitude?: true + latitude?: true + region?: true + iso_name?: true + iso_alpha2_code?: true + iso_alpha3_code?: true + } + + export type CountryCountAggregateInputType = { + country_code?: true + country_name?: true + modify_date?: true + participating?: true + default_taxform_id?: true + longitude?: true + latitude?: true + region?: true + iso_name?: true + iso_alpha2_code?: true + iso_alpha3_code?: true + _all?: true + } + + export type CountryAggregateArgs = { + /** + * Filter which country to aggregate. + */ + where?: countryWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of countries to fetch. + */ + orderBy?: countryOrderByWithRelationInput | countryOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: countryWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` countries 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` countries. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned countries + **/ + _count?: true | CountryCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: CountryAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: CountrySumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: CountryMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: CountryMaxAggregateInputType + } + + export type GetCountryAggregateType = { + [P in keyof T & keyof AggregateCountry]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type countryGroupByArgs = { + where?: countryWhereInput + orderBy?: countryOrderByWithAggregationInput | countryOrderByWithAggregationInput[] + by: CountryScalarFieldEnum[] | CountryScalarFieldEnum + having?: countryScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: CountryCountAggregateInputType | true + _avg?: CountryAvgAggregateInputType + _sum?: CountrySumAggregateInputType + _min?: CountryMinAggregateInputType + _max?: CountryMaxAggregateInputType + } + + export type CountryGroupByOutputType = { + country_code: string + country_name: string + modify_date: Date | null + participating: Decimal | null + default_taxform_id: Decimal | null + longitude: Decimal | null + latitude: Decimal | null + region: string | null + iso_name: string | null + iso_alpha2_code: string | null + iso_alpha3_code: string | null + _count: CountryCountAggregateOutputType | null + _avg: CountryAvgAggregateOutputType | null + _sum: CountrySumAggregateOutputType | null + _min: CountryMinAggregateOutputType | null + _max: CountryMaxAggregateOutputType | null + } + + type GetCountryGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof CountryGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type countrySelect = $Extensions.GetSelect<{ + country_code?: boolean + country_name?: boolean + modify_date?: boolean + participating?: boolean + default_taxform_id?: boolean + longitude?: boolean + latitude?: boolean + region?: boolean + iso_name?: boolean + iso_alpha2_code?: boolean + iso_alpha3_code?: boolean + }, ExtArgs["result"]["country"]> + + export type countrySelectCreateManyAndReturn = $Extensions.GetSelect<{ + country_code?: boolean + country_name?: boolean + modify_date?: boolean + participating?: boolean + default_taxform_id?: boolean + longitude?: boolean + latitude?: boolean + region?: boolean + iso_name?: boolean + iso_alpha2_code?: boolean + iso_alpha3_code?: boolean + }, ExtArgs["result"]["country"]> + + export type countrySelectUpdateManyAndReturn = $Extensions.GetSelect<{ + country_code?: boolean + country_name?: boolean + modify_date?: boolean + participating?: boolean + default_taxform_id?: boolean + longitude?: boolean + latitude?: boolean + region?: boolean + iso_name?: boolean + iso_alpha2_code?: boolean + iso_alpha3_code?: boolean + }, ExtArgs["result"]["country"]> + + export type countrySelectScalar = { + country_code?: boolean + country_name?: boolean + modify_date?: boolean + participating?: boolean + default_taxform_id?: boolean + longitude?: boolean + latitude?: boolean + region?: boolean + iso_name?: boolean + iso_alpha2_code?: boolean + iso_alpha3_code?: boolean + } + + export type countryOmit = $Extensions.GetOmit<"country_code" | "country_name" | "modify_date" | "participating" | "default_taxform_id" | "longitude" | "latitude" | "region" | "iso_name" | "iso_alpha2_code" | "iso_alpha3_code", ExtArgs["result"]["country"]> + + export type $countryPayload = { + name: "country" + objects: {} + scalars: $Extensions.GetPayloadResult<{ + country_code: string + country_name: string + modify_date: Date | null + participating: Prisma.Decimal | null + default_taxform_id: Prisma.Decimal | null + longitude: Prisma.Decimal | null + latitude: Prisma.Decimal | null + region: string | null + iso_name: string | null + iso_alpha2_code: string | null + iso_alpha3_code: string | null + }, ExtArgs["result"]["country"]> + composites: {} + } + + type countryGetPayload = $Result.GetResult + + type countryCountArgs = + Omit & { + select?: CountryCountAggregateInputType | true + } + + export interface countryDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['country'], meta: { name: 'country' } } + /** + * Find zero or one Country that matches the filter. + * @param {countryFindUniqueArgs} args - Arguments to find a Country + * @example + * // Get one Country + * const country = await prisma.country.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Country that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {countryFindUniqueOrThrowArgs} args - Arguments to find a Country + * @example + * // Get one Country + * const country = await prisma.country.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Country 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 {countryFindFirstArgs} args - Arguments to find a Country + * @example + * // Get one Country + * const country = await prisma.country.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Country 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 {countryFindFirstOrThrowArgs} args - Arguments to find a Country + * @example + * // Get one Country + * const country = await prisma.country.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Countries 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 {countryFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Countries + * const countries = await prisma.country.findMany() + * + * // Get first 10 Countries + * const countries = await prisma.country.findMany({ take: 10 }) + * + * // Only select the `country_code` + * const countryWithCountry_codeOnly = await prisma.country.findMany({ select: { country_code: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Country. + * @param {countryCreateArgs} args - Arguments to create a Country. + * @example + * // Create one Country + * const Country = await prisma.country.create({ + * data: { + * // ... data to create a Country + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Countries. + * @param {countryCreateManyArgs} args - Arguments to create many Countries. + * @example + * // Create many Countries + * const country = await prisma.country.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Countries and returns the data saved in the database. + * @param {countryCreateManyAndReturnArgs} args - Arguments to create many Countries. + * @example + * // Create many Countries + * const country = await prisma.country.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Countries and only return the `country_code` + * const countryWithCountry_codeOnly = await prisma.country.createManyAndReturn({ + * select: { country_code: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Country. + * @param {countryDeleteArgs} args - Arguments to delete one Country. + * @example + * // Delete one Country + * const Country = await prisma.country.delete({ + * where: { + * // ... filter to delete one Country + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Country. + * @param {countryUpdateArgs} args - Arguments to update one Country. + * @example + * // Update one Country + * const country = await prisma.country.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Countries. + * @param {countryDeleteManyArgs} args - Arguments to filter Countries to delete. + * @example + * // Delete a few Countries + * const { count } = await prisma.country.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Countries. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {countryUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Countries + * const country = await prisma.country.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Countries and returns the data updated in the database. + * @param {countryUpdateManyAndReturnArgs} args - Arguments to update many Countries. + * @example + * // Update many Countries + * const country = await prisma.country.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Countries and only return the `country_code` + * const countryWithCountry_codeOnly = await prisma.country.updateManyAndReturn({ + * select: { country_code: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Country. + * @param {countryUpsertArgs} args - Arguments to update or create a Country. + * @example + * // Update or create a Country + * const country = await prisma.country.upsert({ + * create: { + * // ... data to create a Country + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Country we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__countryClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Countries. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {countryCountArgs} args - Arguments to filter Countries to count. + * @example + * // Count the number of Countries + * const count = await prisma.country.count({ + * where: { + * // ... the filter for the Countries 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 Country. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {CountryAggregateArgs} 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 Country. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {countryGroupByArgs} 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 countryGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: countryGroupByArgs['orderBy'] } + : { orderBy?: countryGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetCountryGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the country model + */ + readonly fields: countryFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for country. + * 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__countryClient 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 country model + */ + interface countryFieldRefs { + readonly country_code: FieldRef<"country", 'String'> + readonly country_name: FieldRef<"country", 'String'> + readonly modify_date: FieldRef<"country", 'DateTime'> + readonly participating: FieldRef<"country", 'Decimal'> + readonly default_taxform_id: FieldRef<"country", 'Decimal'> + readonly longitude: FieldRef<"country", 'Decimal'> + readonly latitude: FieldRef<"country", 'Decimal'> + readonly region: FieldRef<"country", 'String'> + readonly iso_name: FieldRef<"country", 'String'> + readonly iso_alpha2_code: FieldRef<"country", 'String'> + readonly iso_alpha3_code: FieldRef<"country", 'String'> + } + + + // Custom InputTypes + /** + * country findUnique + */ + export type countryFindUniqueArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * Filter, which country to fetch. + */ + where: countryWhereUniqueInput + } + + /** + * country findUniqueOrThrow + */ + export type countryFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * Filter, which country to fetch. + */ + where: countryWhereUniqueInput + } + + /** + * country findFirst + */ + export type countryFindFirstArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * Filter, which country to fetch. + */ + where?: countryWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of countries to fetch. + */ + orderBy?: countryOrderByWithRelationInput | countryOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for countries. + */ + cursor?: countryWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` countries 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` countries. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of countries. + */ + distinct?: CountryScalarFieldEnum | CountryScalarFieldEnum[] + } + + /** + * country findFirstOrThrow + */ + export type countryFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * Filter, which country to fetch. + */ + where?: countryWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of countries to fetch. + */ + orderBy?: countryOrderByWithRelationInput | countryOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for countries. + */ + cursor?: countryWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` countries 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` countries. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of countries. + */ + distinct?: CountryScalarFieldEnum | CountryScalarFieldEnum[] + } + + /** + * country findMany + */ + export type countryFindManyArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * Filter, which countries to fetch. + */ + where?: countryWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of countries to fetch. + */ + orderBy?: countryOrderByWithRelationInput | countryOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing countries. + */ + cursor?: countryWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` countries 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` countries. + */ + skip?: number + distinct?: CountryScalarFieldEnum | CountryScalarFieldEnum[] + } + + /** + * country create + */ + export type countryCreateArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * The data needed to create a country. + */ + data: XOR + } + + /** + * country createMany + */ + export type countryCreateManyArgs = { + /** + * The data used to create many countries. + */ + data: countryCreateManyInput | countryCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * country createManyAndReturn + */ + export type countryCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelectCreateManyAndReturn | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * The data used to create many countries. + */ + data: countryCreateManyInput | countryCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * country update + */ + export type countryUpdateArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * The data needed to update a country. + */ + data: XOR + /** + * Choose, which country to update. + */ + where: countryWhereUniqueInput + } + + /** + * country updateMany + */ + export type countryUpdateManyArgs = { + /** + * The data used to update countries. + */ + data: XOR + /** + * Filter which countries to update + */ + where?: countryWhereInput + /** + * Limit how many countries to update. + */ + limit?: number + } + + /** + * country updateManyAndReturn + */ + export type countryUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelectUpdateManyAndReturn | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * The data used to update countries. + */ + data: XOR + /** + * Filter which countries to update + */ + where?: countryWhereInput + /** + * Limit how many countries to update. + */ + limit?: number + } + + /** + * country upsert + */ + export type countryUpsertArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * The filter to search for the country to update in case it exists. + */ + where: countryWhereUniqueInput + /** + * In case the country found by the `where` argument doesn't exist, create a new country with this data. + */ + create: XOR + /** + * In case the country was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * country delete + */ + export type countryDeleteArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + /** + * Filter which country to delete. + */ + where: countryWhereUniqueInput + } + + /** + * country deleteMany + */ + export type countryDeleteManyArgs = { + /** + * Filter which countries to delete + */ + where?: countryWhereInput + /** + * Limit how many countries to delete. + */ + limit?: number + } + + /** + * country without action + */ + export type countryDefaultArgs = { + /** + * Select specific fields to fetch from the country + */ + select?: countrySelect | null + /** + * Omit specific fields from the country + */ + omit?: countryOmit | null + } + + + /** + * Model dice_connection + */ + + export type AggregateDice_connection = { + _count: Dice_connectionCountAggregateOutputType | null + _avg: Dice_connectionAvgAggregateOutputType | null + _sum: Dice_connectionSumAggregateOutputType | null + _min: Dice_connectionMinAggregateOutputType | null + _max: Dice_connectionMaxAggregateOutputType | null + } + + export type Dice_connectionAvgAggregateOutputType = { + id: number | null + user_id: Decimal | null + } + + export type Dice_connectionSumAggregateOutputType = { + id: number | null + user_id: Decimal | null + } + + export type Dice_connectionMinAggregateOutputType = { + id: number | null + user_id: Decimal | null + connection: string | null + accepted: boolean | null + created_at: Date | null + short_url: string | null + con_created_at: Date | null + } + + export type Dice_connectionMaxAggregateOutputType = { + id: number | null + user_id: Decimal | null + connection: string | null + accepted: boolean | null + created_at: Date | null + short_url: string | null + con_created_at: Date | null + } + + export type Dice_connectionCountAggregateOutputType = { + id: number + user_id: number + connection: number + accepted: number + created_at: number + short_url: number + con_created_at: number + _all: number + } + + + export type Dice_connectionAvgAggregateInputType = { + id?: true + user_id?: true + } + + export type Dice_connectionSumAggregateInputType = { + id?: true + user_id?: true + } + + export type Dice_connectionMinAggregateInputType = { + id?: true + user_id?: true + connection?: true + accepted?: true + created_at?: true + short_url?: true + con_created_at?: true + } + + export type Dice_connectionMaxAggregateInputType = { + id?: true + user_id?: true + connection?: true + accepted?: true + created_at?: true + short_url?: true + con_created_at?: true + } + + export type Dice_connectionCountAggregateInputType = { + id?: true + user_id?: true + connection?: true + accepted?: true + created_at?: true + short_url?: true + con_created_at?: true + _all?: true + } + + export type Dice_connectionAggregateArgs = { + /** + * Filter which dice_connection to aggregate. + */ + where?: dice_connectionWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of dice_connections to fetch. + */ + orderBy?: dice_connectionOrderByWithRelationInput | dice_connectionOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: dice_connectionWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` dice_connections 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` dice_connections. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned dice_connections + **/ + _count?: true | Dice_connectionCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Dice_connectionAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Dice_connectionSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Dice_connectionMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Dice_connectionMaxAggregateInputType + } + + export type GetDice_connectionAggregateType = { + [P in keyof T & keyof AggregateDice_connection]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type dice_connectionGroupByArgs = { + where?: dice_connectionWhereInput + orderBy?: dice_connectionOrderByWithAggregationInput | dice_connectionOrderByWithAggregationInput[] + by: Dice_connectionScalarFieldEnum[] | Dice_connectionScalarFieldEnum + having?: dice_connectionScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Dice_connectionCountAggregateInputType | true + _avg?: Dice_connectionAvgAggregateInputType + _sum?: Dice_connectionSumAggregateInputType + _min?: Dice_connectionMinAggregateInputType + _max?: Dice_connectionMaxAggregateInputType + } + + export type Dice_connectionGroupByOutputType = { + id: number + user_id: Decimal + connection: string | null + accepted: boolean + created_at: Date + short_url: string | null + con_created_at: Date | null + _count: Dice_connectionCountAggregateOutputType | null + _avg: Dice_connectionAvgAggregateOutputType | null + _sum: Dice_connectionSumAggregateOutputType | null + _min: Dice_connectionMinAggregateOutputType | null + _max: Dice_connectionMaxAggregateOutputType | null + } + + type GetDice_connectionGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Dice_connectionGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type dice_connectionSelect = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + connection?: boolean + accepted?: boolean + created_at?: boolean + short_url?: boolean + con_created_at?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["dice_connection"]> + + export type dice_connectionSelectCreateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + connection?: boolean + accepted?: boolean + created_at?: boolean + short_url?: boolean + con_created_at?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["dice_connection"]> + + export type dice_connectionSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + connection?: boolean + accepted?: boolean + created_at?: boolean + short_url?: boolean + con_created_at?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["dice_connection"]> + + export type dice_connectionSelectScalar = { + id?: boolean + user_id?: boolean + connection?: boolean + accepted?: boolean + created_at?: boolean + short_url?: boolean + con_created_at?: boolean + } + + export type dice_connectionOmit = $Extensions.GetOmit<"id" | "user_id" | "connection" | "accepted" | "created_at" | "short_url" | "con_created_at", ExtArgs["result"]["dice_connection"]> + export type dice_connectionInclude = { + user?: boolean | userDefaultArgs + } + export type dice_connectionIncludeCreateManyAndReturn = { + user?: boolean | userDefaultArgs + } + export type dice_connectionIncludeUpdateManyAndReturn = { + user?: boolean | userDefaultArgs + } + + export type $dice_connectionPayload = { + name: "dice_connection" + objects: { + user: Prisma.$userPayload + } + scalars: $Extensions.GetPayloadResult<{ + id: number + user_id: Prisma.Decimal + connection: string | null + accepted: boolean + created_at: Date + short_url: string | null + con_created_at: Date | null + }, ExtArgs["result"]["dice_connection"]> + composites: {} + } + + type dice_connectionGetPayload = $Result.GetResult + + type dice_connectionCountArgs = + Omit & { + select?: Dice_connectionCountAggregateInputType | true + } + + export interface dice_connectionDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['dice_connection'], meta: { name: 'dice_connection' } } + /** + * Find zero or one Dice_connection that matches the filter. + * @param {dice_connectionFindUniqueArgs} args - Arguments to find a Dice_connection + * @example + * // Get one Dice_connection + * const dice_connection = await prisma.dice_connection.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Dice_connection that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {dice_connectionFindUniqueOrThrowArgs} args - Arguments to find a Dice_connection + * @example + * // Get one Dice_connection + * const dice_connection = await prisma.dice_connection.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Dice_connection 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 {dice_connectionFindFirstArgs} args - Arguments to find a Dice_connection + * @example + * // Get one Dice_connection + * const dice_connection = await prisma.dice_connection.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Dice_connection 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 {dice_connectionFindFirstOrThrowArgs} args - Arguments to find a Dice_connection + * @example + * // Get one Dice_connection + * const dice_connection = await prisma.dice_connection.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Dice_connections 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 {dice_connectionFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Dice_connections + * const dice_connections = await prisma.dice_connection.findMany() + * + * // Get first 10 Dice_connections + * const dice_connections = await prisma.dice_connection.findMany({ take: 10 }) + * + * // Only select the `id` + * const dice_connectionWithIdOnly = await prisma.dice_connection.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Dice_connection. + * @param {dice_connectionCreateArgs} args - Arguments to create a Dice_connection. + * @example + * // Create one Dice_connection + * const Dice_connection = await prisma.dice_connection.create({ + * data: { + * // ... data to create a Dice_connection + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Dice_connections. + * @param {dice_connectionCreateManyArgs} args - Arguments to create many Dice_connections. + * @example + * // Create many Dice_connections + * const dice_connection = await prisma.dice_connection.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Dice_connections and returns the data saved in the database. + * @param {dice_connectionCreateManyAndReturnArgs} args - Arguments to create many Dice_connections. + * @example + * // Create many Dice_connections + * const dice_connection = await prisma.dice_connection.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Dice_connections and only return the `id` + * const dice_connectionWithIdOnly = await prisma.dice_connection.createManyAndReturn({ + * select: { id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Dice_connection. + * @param {dice_connectionDeleteArgs} args - Arguments to delete one Dice_connection. + * @example + * // Delete one Dice_connection + * const Dice_connection = await prisma.dice_connection.delete({ + * where: { + * // ... filter to delete one Dice_connection + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Dice_connection. + * @param {dice_connectionUpdateArgs} args - Arguments to update one Dice_connection. + * @example + * // Update one Dice_connection + * const dice_connection = await prisma.dice_connection.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Dice_connections. + * @param {dice_connectionDeleteManyArgs} args - Arguments to filter Dice_connections to delete. + * @example + * // Delete a few Dice_connections + * const { count } = await prisma.dice_connection.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Dice_connections. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {dice_connectionUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Dice_connections + * const dice_connection = await prisma.dice_connection.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Dice_connections and returns the data updated in the database. + * @param {dice_connectionUpdateManyAndReturnArgs} args - Arguments to update many Dice_connections. + * @example + * // Update many Dice_connections + * const dice_connection = await prisma.dice_connection.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Dice_connections and only return the `id` + * const dice_connectionWithIdOnly = await prisma.dice_connection.updateManyAndReturn({ + * select: { id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Dice_connection. + * @param {dice_connectionUpsertArgs} args - Arguments to update or create a Dice_connection. + * @example + * // Update or create a Dice_connection + * const dice_connection = await prisma.dice_connection.upsert({ + * create: { + * // ... data to create a Dice_connection + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Dice_connection we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__dice_connectionClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Dice_connections. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {dice_connectionCountArgs} args - Arguments to filter Dice_connections to count. + * @example + * // Count the number of Dice_connections + * const count = await prisma.dice_connection.count({ + * where: { + * // ... the filter for the Dice_connections 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 Dice_connection. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Dice_connectionAggregateArgs} 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 Dice_connection. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {dice_connectionGroupByArgs} 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 dice_connectionGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: dice_connectionGroupByArgs['orderBy'] } + : { orderBy?: dice_connectionGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetDice_connectionGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the dice_connection model + */ + readonly fields: dice_connectionFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for dice_connection. + * 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__dice_connectionClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 dice_connection model + */ + interface dice_connectionFieldRefs { + readonly id: FieldRef<"dice_connection", 'Int'> + readonly user_id: FieldRef<"dice_connection", 'Decimal'> + readonly connection: FieldRef<"dice_connection", 'String'> + readonly accepted: FieldRef<"dice_connection", 'Boolean'> + readonly created_at: FieldRef<"dice_connection", 'DateTime'> + readonly short_url: FieldRef<"dice_connection", 'String'> + readonly con_created_at: FieldRef<"dice_connection", 'DateTime'> + } + + + // Custom InputTypes + /** + * dice_connection findUnique + */ + export type dice_connectionFindUniqueArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * Filter, which dice_connection to fetch. + */ + where: dice_connectionWhereUniqueInput + } + + /** + * dice_connection findUniqueOrThrow + */ + export type dice_connectionFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * Filter, which dice_connection to fetch. + */ + where: dice_connectionWhereUniqueInput + } + + /** + * dice_connection findFirst + */ + export type dice_connectionFindFirstArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * Filter, which dice_connection to fetch. + */ + where?: dice_connectionWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of dice_connections to fetch. + */ + orderBy?: dice_connectionOrderByWithRelationInput | dice_connectionOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for dice_connections. + */ + cursor?: dice_connectionWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` dice_connections 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` dice_connections. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of dice_connections. + */ + distinct?: Dice_connectionScalarFieldEnum | Dice_connectionScalarFieldEnum[] + } + + /** + * dice_connection findFirstOrThrow + */ + export type dice_connectionFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * Filter, which dice_connection to fetch. + */ + where?: dice_connectionWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of dice_connections to fetch. + */ + orderBy?: dice_connectionOrderByWithRelationInput | dice_connectionOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for dice_connections. + */ + cursor?: dice_connectionWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` dice_connections 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` dice_connections. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of dice_connections. + */ + distinct?: Dice_connectionScalarFieldEnum | Dice_connectionScalarFieldEnum[] + } + + /** + * dice_connection findMany + */ + export type dice_connectionFindManyArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * Filter, which dice_connections to fetch. + */ + where?: dice_connectionWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of dice_connections to fetch. + */ + orderBy?: dice_connectionOrderByWithRelationInput | dice_connectionOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing dice_connections. + */ + cursor?: dice_connectionWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` dice_connections 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` dice_connections. + */ + skip?: number + distinct?: Dice_connectionScalarFieldEnum | Dice_connectionScalarFieldEnum[] + } + + /** + * dice_connection create + */ + export type dice_connectionCreateArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * The data needed to create a dice_connection. + */ + data: XOR + } + + /** + * dice_connection createMany + */ + export type dice_connectionCreateManyArgs = { + /** + * The data used to create many dice_connections. + */ + data: dice_connectionCreateManyInput | dice_connectionCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * dice_connection createManyAndReturn + */ + export type dice_connectionCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelectCreateManyAndReturn | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * The data used to create many dice_connections. + */ + data: dice_connectionCreateManyInput | dice_connectionCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionIncludeCreateManyAndReturn | null + } + + /** + * dice_connection update + */ + export type dice_connectionUpdateArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * The data needed to update a dice_connection. + */ + data: XOR + /** + * Choose, which dice_connection to update. + */ + where: dice_connectionWhereUniqueInput + } + + /** + * dice_connection updateMany + */ + export type dice_connectionUpdateManyArgs = { + /** + * The data used to update dice_connections. + */ + data: XOR + /** + * Filter which dice_connections to update + */ + where?: dice_connectionWhereInput + /** + * Limit how many dice_connections to update. + */ + limit?: number + } + + /** + * dice_connection updateManyAndReturn + */ + export type dice_connectionUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * The data used to update dice_connections. + */ + data: XOR + /** + * Filter which dice_connections to update + */ + where?: dice_connectionWhereInput + /** + * Limit how many dice_connections to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionIncludeUpdateManyAndReturn | null + } + + /** + * dice_connection upsert + */ + export type dice_connectionUpsertArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * The filter to search for the dice_connection to update in case it exists. + */ + where: dice_connectionWhereUniqueInput + /** + * In case the dice_connection found by the `where` argument doesn't exist, create a new dice_connection with this data. + */ + create: XOR + /** + * In case the dice_connection was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * dice_connection delete + */ + export type dice_connectionDeleteArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + /** + * Filter which dice_connection to delete. + */ + where: dice_connectionWhereUniqueInput + } + + /** + * dice_connection deleteMany + */ + export type dice_connectionDeleteManyArgs = { + /** + * Filter which dice_connections to delete + */ + where?: dice_connectionWhereInput + /** + * Limit how many dice_connections to delete. + */ + limit?: number + } + + /** + * dice_connection without action + */ + export type dice_connectionDefaultArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + } + + + /** + * Model email + */ + + export type AggregateEmail = { + _count: EmailCountAggregateOutputType | null + _avg: EmailAvgAggregateOutputType | null + _sum: EmailSumAggregateOutputType | null + _min: EmailMinAggregateOutputType | null + _max: EmailMaxAggregateOutputType | null + } + + export type EmailAvgAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + email_type_id: Decimal | null + primary_ind: Decimal | null + status_id: Decimal | null + } + + export type EmailSumAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + email_type_id: Decimal | null + primary_ind: Decimal | null + status_id: Decimal | null + } + + export type EmailMinAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + email_type_id: Decimal | null + address: string | null + create_date: Date | null + modify_date: Date | null + primary_ind: Decimal | null + status_id: Decimal | null + } + + export type EmailMaxAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + email_type_id: Decimal | null + address: string | null + create_date: Date | null + modify_date: Date | null + primary_ind: Decimal | null + status_id: Decimal | null + } + + export type EmailCountAggregateOutputType = { + user_id: number + email_id: number + email_type_id: number + address: number + create_date: number + modify_date: number + primary_ind: number + status_id: number + _all: number + } + + + export type EmailAvgAggregateInputType = { + user_id?: true + email_id?: true + email_type_id?: true + primary_ind?: true + status_id?: true + } + + export type EmailSumAggregateInputType = { + user_id?: true + email_id?: true + email_type_id?: true + primary_ind?: true + status_id?: true + } + + export type EmailMinAggregateInputType = { + user_id?: true + email_id?: true + email_type_id?: true + address?: true + create_date?: true + modify_date?: true + primary_ind?: true + status_id?: true + } + + export type EmailMaxAggregateInputType = { + user_id?: true + email_id?: true + email_type_id?: true + address?: true + create_date?: true + modify_date?: true + primary_ind?: true + status_id?: true + } + + export type EmailCountAggregateInputType = { + user_id?: true + email_id?: true + email_type_id?: true + address?: true + create_date?: true + modify_date?: true + primary_ind?: true + status_id?: true + _all?: true + } + + export type EmailAggregateArgs = { + /** + * Filter which email to aggregate. + */ + where?: emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of emails to fetch. + */ + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` emails 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` emails. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned emails + **/ + _count?: true | EmailCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: EmailAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: EmailSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: EmailMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: EmailMaxAggregateInputType + } + + export type GetEmailAggregateType = { + [P in keyof T & keyof AggregateEmail]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type emailGroupByArgs = { + where?: emailWhereInput + orderBy?: emailOrderByWithAggregationInput | emailOrderByWithAggregationInput[] + by: EmailScalarFieldEnum[] | EmailScalarFieldEnum + having?: emailScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: EmailCountAggregateInputType | true + _avg?: EmailAvgAggregateInputType + _sum?: EmailSumAggregateInputType + _min?: EmailMinAggregateInputType + _max?: EmailMaxAggregateInputType + } + + export type EmailGroupByOutputType = { + user_id: Decimal | null + email_id: Decimal + email_type_id: Decimal | null + address: string | null + create_date: Date | null + modify_date: Date | null + primary_ind: Decimal | null + status_id: Decimal | null + _count: EmailCountAggregateOutputType | null + _avg: EmailAvgAggregateOutputType | null + _sum: EmailSumAggregateOutputType | null + _min: EmailMinAggregateOutputType | null + _max: EmailMaxAggregateOutputType | null + } + + type GetEmailGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof EmailGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type emailSelect = $Extensions.GetSelect<{ + user_id?: boolean + email_id?: boolean + email_type_id?: boolean + address?: boolean + create_date?: boolean + modify_date?: boolean + primary_ind?: boolean + status_id?: boolean + email_status_lu?: boolean | email$email_status_luArgs + email_type_lu?: boolean | email$email_type_luArgs + user_email_xref?: boolean | email$user_email_xrefArgs + user?: boolean | email$userArgs + _count?: boolean | EmailCountOutputTypeDefaultArgs + }, ExtArgs["result"]["email"]> + + export type emailSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + email_id?: boolean + email_type_id?: boolean + address?: boolean + create_date?: boolean + modify_date?: boolean + primary_ind?: boolean + status_id?: boolean + email_status_lu?: boolean | email$email_status_luArgs + email_type_lu?: boolean | email$email_type_luArgs + user?: boolean | email$userArgs + }, ExtArgs["result"]["email"]> + + export type emailSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + email_id?: boolean + email_type_id?: boolean + address?: boolean + create_date?: boolean + modify_date?: boolean + primary_ind?: boolean + status_id?: boolean + email_status_lu?: boolean | email$email_status_luArgs + email_type_lu?: boolean | email$email_type_luArgs + user?: boolean | email$userArgs + }, ExtArgs["result"]["email"]> + + export type emailSelectScalar = { + user_id?: boolean + email_id?: boolean + email_type_id?: boolean + address?: boolean + create_date?: boolean + modify_date?: boolean + primary_ind?: boolean + status_id?: boolean + } + + export type emailOmit = $Extensions.GetOmit<"user_id" | "email_id" | "email_type_id" | "address" | "create_date" | "modify_date" | "primary_ind" | "status_id", ExtArgs["result"]["email"]> + export type emailInclude = { + email_status_lu?: boolean | email$email_status_luArgs + email_type_lu?: boolean | email$email_type_luArgs + user_email_xref?: boolean | email$user_email_xrefArgs + user?: boolean | email$userArgs + _count?: boolean | EmailCountOutputTypeDefaultArgs + } + export type emailIncludeCreateManyAndReturn = { + email_status_lu?: boolean | email$email_status_luArgs + email_type_lu?: boolean | email$email_type_luArgs + user?: boolean | email$userArgs + } + export type emailIncludeUpdateManyAndReturn = { + email_status_lu?: boolean | email$email_status_luArgs + email_type_lu?: boolean | email$email_type_luArgs + user?: boolean | email$userArgs + } + + export type $emailPayload = { + name: "email" + objects: { + email_status_lu: Prisma.$email_status_luPayload | null + email_type_lu: Prisma.$email_type_luPayload | null + user_email_xref: Prisma.$user_email_xrefPayload[] + user: Prisma.$userPayload | null + } + scalars: $Extensions.GetPayloadResult<{ + user_id: Prisma.Decimal | null + email_id: Prisma.Decimal + email_type_id: Prisma.Decimal | null + address: string | null + create_date: Date | null + modify_date: Date | null + primary_ind: Prisma.Decimal | null + status_id: Prisma.Decimal | null + }, ExtArgs["result"]["email"]> + composites: {} + } + + type emailGetPayload = $Result.GetResult + + type emailCountArgs = + Omit & { + select?: EmailCountAggregateInputType | true + } + + export interface emailDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['email'], meta: { name: 'email' } } + /** + * Find zero or one Email that matches the filter. + * @param {emailFindUniqueArgs} args - Arguments to find a Email + * @example + * // Get one Email + * const email = await prisma.email.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Email that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {emailFindUniqueOrThrowArgs} args - Arguments to find a Email + * @example + * // Get one Email + * const email = await prisma.email.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Email 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 {emailFindFirstArgs} args - Arguments to find a Email + * @example + * // Get one Email + * const email = await prisma.email.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Email 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 {emailFindFirstOrThrowArgs} args - Arguments to find a Email + * @example + * // Get one Email + * const email = await prisma.email.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Emails 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 {emailFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Emails + * const emails = await prisma.email.findMany() + * + * // Get first 10 Emails + * const emails = await prisma.email.findMany({ take: 10 }) + * + * // Only select the `user_id` + * const emailWithUser_idOnly = await prisma.email.findMany({ select: { user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Email. + * @param {emailCreateArgs} args - Arguments to create a Email. + * @example + * // Create one Email + * const Email = await prisma.email.create({ + * data: { + * // ... data to create a Email + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Emails. + * @param {emailCreateManyArgs} args - Arguments to create many Emails. + * @example + * // Create many Emails + * const email = await prisma.email.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Emails and returns the data saved in the database. + * @param {emailCreateManyAndReturnArgs} args - Arguments to create many Emails. + * @example + * // Create many Emails + * const email = await prisma.email.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Emails and only return the `user_id` + * const emailWithUser_idOnly = await prisma.email.createManyAndReturn({ + * select: { user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Email. + * @param {emailDeleteArgs} args - Arguments to delete one Email. + * @example + * // Delete one Email + * const Email = await prisma.email.delete({ + * where: { + * // ... filter to delete one Email + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Email. + * @param {emailUpdateArgs} args - Arguments to update one Email. + * @example + * // Update one Email + * const email = await prisma.email.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Emails. + * @param {emailDeleteManyArgs} args - Arguments to filter Emails to delete. + * @example + * // Delete a few Emails + * const { count } = await prisma.email.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Emails. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {emailUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Emails + * const email = await prisma.email.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Emails and returns the data updated in the database. + * @param {emailUpdateManyAndReturnArgs} args - Arguments to update many Emails. + * @example + * // Update many Emails + * const email = await prisma.email.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Emails and only return the `user_id` + * const emailWithUser_idOnly = await prisma.email.updateManyAndReturn({ + * select: { user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Email. + * @param {emailUpsertArgs} args - Arguments to update or create a Email. + * @example + * // Update or create a Email + * const email = await prisma.email.upsert({ + * create: { + * // ... data to create a Email + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Email we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__emailClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Emails. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {emailCountArgs} args - Arguments to filter Emails to count. + * @example + * // Count the number of Emails + * const count = await prisma.email.count({ + * where: { + * // ... the filter for the Emails 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 Email. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {EmailAggregateArgs} 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 Email. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {emailGroupByArgs} 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 emailGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: emailGroupByArgs['orderBy'] } + : { orderBy?: emailGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetEmailGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the email model + */ + readonly fields: emailFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for email. + * 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__emailClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + email_status_lu = {}>(args?: Subset>): Prisma__email_status_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + email_type_lu = {}>(args?: Subset>): Prisma__email_type_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + user_email_xref = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 email model + */ + interface emailFieldRefs { + readonly user_id: FieldRef<"email", 'Decimal'> + readonly email_id: FieldRef<"email", 'Decimal'> + readonly email_type_id: FieldRef<"email", 'Decimal'> + readonly address: FieldRef<"email", 'String'> + readonly create_date: FieldRef<"email", 'DateTime'> + readonly modify_date: FieldRef<"email", 'DateTime'> + readonly primary_ind: FieldRef<"email", 'Decimal'> + readonly status_id: FieldRef<"email", 'Decimal'> + } + + + // Custom InputTypes + /** + * email findUnique + */ + export type emailFindUniqueArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * Filter, which email to fetch. + */ + where: emailWhereUniqueInput + } + + /** + * email findUniqueOrThrow + */ + export type emailFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * Filter, which email to fetch. + */ + where: emailWhereUniqueInput + } + + /** + * email findFirst + */ + export type emailFindFirstArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * Filter, which email to fetch. + */ + where?: emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of emails to fetch. + */ + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for emails. + */ + cursor?: emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` emails 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` emails. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of emails. + */ + distinct?: EmailScalarFieldEnum | EmailScalarFieldEnum[] + } + + /** + * email findFirstOrThrow + */ + export type emailFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * Filter, which email to fetch. + */ + where?: emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of emails to fetch. + */ + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for emails. + */ + cursor?: emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` emails 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` emails. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of emails. + */ + distinct?: EmailScalarFieldEnum | EmailScalarFieldEnum[] + } + + /** + * email findMany + */ + export type emailFindManyArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * Filter, which emails to fetch. + */ + where?: emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of emails to fetch. + */ + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing emails. + */ + cursor?: emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` emails 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` emails. + */ + skip?: number + distinct?: EmailScalarFieldEnum | EmailScalarFieldEnum[] + } + + /** + * email create + */ + export type emailCreateArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * The data needed to create a email. + */ + data?: XOR + } + + /** + * email createMany + */ + export type emailCreateManyArgs = { + /** + * The data used to create many emails. + */ + data: emailCreateManyInput | emailCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * email createManyAndReturn + */ + export type emailCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelectCreateManyAndReturn | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * The data used to create many emails. + */ + data: emailCreateManyInput | emailCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: emailIncludeCreateManyAndReturn | null + } + + /** + * email update + */ + export type emailUpdateArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * The data needed to update a email. + */ + data: XOR + /** + * Choose, which email to update. + */ + where: emailWhereUniqueInput + } + + /** + * email updateMany + */ + export type emailUpdateManyArgs = { + /** + * The data used to update emails. + */ + data: XOR + /** + * Filter which emails to update + */ + where?: emailWhereInput + /** + * Limit how many emails to update. + */ + limit?: number + } + + /** + * email updateManyAndReturn + */ + export type emailUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * The data used to update emails. + */ + data: XOR + /** + * Filter which emails to update + */ + where?: emailWhereInput + /** + * Limit how many emails to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: emailIncludeUpdateManyAndReturn | null + } + + /** + * email upsert + */ + export type emailUpsertArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * The filter to search for the email to update in case it exists. + */ + where: emailWhereUniqueInput + /** + * In case the email found by the `where` argument doesn't exist, create a new email with this data. + */ + create: XOR + /** + * In case the email was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * email delete + */ + export type emailDeleteArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + /** + * Filter which email to delete. + */ + where: emailWhereUniqueInput + } + + /** + * email deleteMany + */ + export type emailDeleteManyArgs = { + /** + * Filter which emails to delete + */ + where?: emailWhereInput + /** + * Limit how many emails to delete. + */ + limit?: number + } + + /** + * email.email_status_lu + */ + export type email$email_status_luArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + where?: email_status_luWhereInput + } + + /** + * email.email_type_lu + */ + export type email$email_type_luArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + where?: email_type_luWhereInput + } + + /** + * email.user_email_xref + */ + export type email$user_email_xrefArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + where?: user_email_xrefWhereInput + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + cursor?: user_email_xrefWhereUniqueInput + take?: number + skip?: number + distinct?: User_email_xrefScalarFieldEnum | User_email_xrefScalarFieldEnum[] + } + + /** + * email.user + */ + export type email$userArgs = { + /** + * 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 + where?: userWhereInput + } + + /** + * email without action + */ + export type emailDefaultArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + } + + + /** + * Model email_status_lu + */ + + export type AggregateEmail_status_lu = { + _count: Email_status_luCountAggregateOutputType | null + _avg: Email_status_luAvgAggregateOutputType | null + _sum: Email_status_luSumAggregateOutputType | null + _min: Email_status_luMinAggregateOutputType | null + _max: Email_status_luMaxAggregateOutputType | null + } + + export type Email_status_luAvgAggregateOutputType = { + status_id: Decimal | null + } + + export type Email_status_luSumAggregateOutputType = { + status_id: Decimal | null + } + + export type Email_status_luMinAggregateOutputType = { + status_id: Decimal | null + status_desc: string | null + create_date: Date | null + modify_date: Date | null + } + + export type Email_status_luMaxAggregateOutputType = { + status_id: Decimal | null + status_desc: string | null + create_date: Date | null + modify_date: Date | null + } + + export type Email_status_luCountAggregateOutputType = { + status_id: number + status_desc: number + create_date: number + modify_date: number + _all: number + } + + + export type Email_status_luAvgAggregateInputType = { + status_id?: true + } + + export type Email_status_luSumAggregateInputType = { + status_id?: true + } + + export type Email_status_luMinAggregateInputType = { + status_id?: true + status_desc?: true + create_date?: true + modify_date?: true + } + + export type Email_status_luMaxAggregateInputType = { + status_id?: true + status_desc?: true + create_date?: true + modify_date?: true + } + + export type Email_status_luCountAggregateInputType = { + status_id?: true + status_desc?: true + create_date?: true + modify_date?: true + _all?: true + } + + export type Email_status_luAggregateArgs = { + /** + * Filter which email_status_lu to aggregate. + */ + where?: email_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_status_lus to fetch. + */ + orderBy?: email_status_luOrderByWithRelationInput | email_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: email_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_status_lus 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` email_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned email_status_lus + **/ + _count?: true | Email_status_luCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Email_status_luAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Email_status_luSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Email_status_luMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Email_status_luMaxAggregateInputType + } + + export type GetEmail_status_luAggregateType = { + [P in keyof T & keyof AggregateEmail_status_lu]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type email_status_luGroupByArgs = { + where?: email_status_luWhereInput + orderBy?: email_status_luOrderByWithAggregationInput | email_status_luOrderByWithAggregationInput[] + by: Email_status_luScalarFieldEnum[] | Email_status_luScalarFieldEnum + having?: email_status_luScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Email_status_luCountAggregateInputType | true + _avg?: Email_status_luAvgAggregateInputType + _sum?: Email_status_luSumAggregateInputType + _min?: Email_status_luMinAggregateInputType + _max?: Email_status_luMaxAggregateInputType + } + + export type Email_status_luGroupByOutputType = { + status_id: Decimal + status_desc: string | null + create_date: Date | null + modify_date: Date | null + _count: Email_status_luCountAggregateOutputType | null + _avg: Email_status_luAvgAggregateOutputType | null + _sum: Email_status_luSumAggregateOutputType | null + _min: Email_status_luMinAggregateOutputType | null + _max: Email_status_luMaxAggregateOutputType | null + } + + type GetEmail_status_luGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Email_status_luGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type email_status_luSelect = $Extensions.GetSelect<{ + status_id?: boolean + status_desc?: boolean + create_date?: boolean + modify_date?: boolean + email?: boolean | email_status_lu$emailArgs + user_email_xref?: boolean | email_status_lu$user_email_xrefArgs + _count?: boolean | Email_status_luCountOutputTypeDefaultArgs + }, ExtArgs["result"]["email_status_lu"]> + + export type email_status_luSelectCreateManyAndReturn = $Extensions.GetSelect<{ + status_id?: boolean + status_desc?: boolean + create_date?: boolean + modify_date?: boolean + }, ExtArgs["result"]["email_status_lu"]> + + export type email_status_luSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + status_id?: boolean + status_desc?: boolean + create_date?: boolean + modify_date?: boolean + }, ExtArgs["result"]["email_status_lu"]> + + export type email_status_luSelectScalar = { + status_id?: boolean + status_desc?: boolean + create_date?: boolean + modify_date?: boolean + } + + export type email_status_luOmit = $Extensions.GetOmit<"status_id" | "status_desc" | "create_date" | "modify_date", ExtArgs["result"]["email_status_lu"]> + export type email_status_luInclude = { + email?: boolean | email_status_lu$emailArgs + user_email_xref?: boolean | email_status_lu$user_email_xrefArgs + _count?: boolean | Email_status_luCountOutputTypeDefaultArgs + } + export type email_status_luIncludeCreateManyAndReturn = {} + export type email_status_luIncludeUpdateManyAndReturn = {} + + export type $email_status_luPayload = { + name: "email_status_lu" + objects: { + email: Prisma.$emailPayload[] + user_email_xref: Prisma.$user_email_xrefPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + status_id: Prisma.Decimal + status_desc: string | null + create_date: Date | null + modify_date: Date | null + }, ExtArgs["result"]["email_status_lu"]> + composites: {} + } + + type email_status_luGetPayload = $Result.GetResult + + type email_status_luCountArgs = + Omit & { + select?: Email_status_luCountAggregateInputType | true + } + + export interface email_status_luDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['email_status_lu'], meta: { name: 'email_status_lu' } } + /** + * Find zero or one Email_status_lu that matches the filter. + * @param {email_status_luFindUniqueArgs} args - Arguments to find a Email_status_lu + * @example + * // Get one Email_status_lu + * const email_status_lu = await prisma.email_status_lu.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Email_status_lu that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {email_status_luFindUniqueOrThrowArgs} args - Arguments to find a Email_status_lu + * @example + * // Get one Email_status_lu + * const email_status_lu = await prisma.email_status_lu.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Email_status_lu 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 {email_status_luFindFirstArgs} args - Arguments to find a Email_status_lu + * @example + * // Get one Email_status_lu + * const email_status_lu = await prisma.email_status_lu.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Email_status_lu 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 {email_status_luFindFirstOrThrowArgs} args - Arguments to find a Email_status_lu + * @example + * // Get one Email_status_lu + * const email_status_lu = await prisma.email_status_lu.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Email_status_lus 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 {email_status_luFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Email_status_lus + * const email_status_lus = await prisma.email_status_lu.findMany() + * + * // Get first 10 Email_status_lus + * const email_status_lus = await prisma.email_status_lu.findMany({ take: 10 }) + * + * // Only select the `status_id` + * const email_status_luWithStatus_idOnly = await prisma.email_status_lu.findMany({ select: { status_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Email_status_lu. + * @param {email_status_luCreateArgs} args - Arguments to create a Email_status_lu. + * @example + * // Create one Email_status_lu + * const Email_status_lu = await prisma.email_status_lu.create({ + * data: { + * // ... data to create a Email_status_lu + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Email_status_lus. + * @param {email_status_luCreateManyArgs} args - Arguments to create many Email_status_lus. + * @example + * // Create many Email_status_lus + * const email_status_lu = await prisma.email_status_lu.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Email_status_lus and returns the data saved in the database. + * @param {email_status_luCreateManyAndReturnArgs} args - Arguments to create many Email_status_lus. + * @example + * // Create many Email_status_lus + * const email_status_lu = await prisma.email_status_lu.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Email_status_lus and only return the `status_id` + * const email_status_luWithStatus_idOnly = await prisma.email_status_lu.createManyAndReturn({ + * select: { status_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Email_status_lu. + * @param {email_status_luDeleteArgs} args - Arguments to delete one Email_status_lu. + * @example + * // Delete one Email_status_lu + * const Email_status_lu = await prisma.email_status_lu.delete({ + * where: { + * // ... filter to delete one Email_status_lu + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Email_status_lu. + * @param {email_status_luUpdateArgs} args - Arguments to update one Email_status_lu. + * @example + * // Update one Email_status_lu + * const email_status_lu = await prisma.email_status_lu.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Email_status_lus. + * @param {email_status_luDeleteManyArgs} args - Arguments to filter Email_status_lus to delete. + * @example + * // Delete a few Email_status_lus + * const { count } = await prisma.email_status_lu.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Email_status_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {email_status_luUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Email_status_lus + * const email_status_lu = await prisma.email_status_lu.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Email_status_lus and returns the data updated in the database. + * @param {email_status_luUpdateManyAndReturnArgs} args - Arguments to update many Email_status_lus. + * @example + * // Update many Email_status_lus + * const email_status_lu = await prisma.email_status_lu.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Email_status_lus and only return the `status_id` + * const email_status_luWithStatus_idOnly = await prisma.email_status_lu.updateManyAndReturn({ + * select: { status_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Email_status_lu. + * @param {email_status_luUpsertArgs} args - Arguments to update or create a Email_status_lu. + * @example + * // Update or create a Email_status_lu + * const email_status_lu = await prisma.email_status_lu.upsert({ + * create: { + * // ... data to create a Email_status_lu + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Email_status_lu we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__email_status_luClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Email_status_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {email_status_luCountArgs} args - Arguments to filter Email_status_lus to count. + * @example + * // Count the number of Email_status_lus + * const count = await prisma.email_status_lu.count({ + * where: { + * // ... the filter for the Email_status_lus 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 Email_status_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Email_status_luAggregateArgs} 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 Email_status_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {email_status_luGroupByArgs} 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 email_status_luGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: email_status_luGroupByArgs['orderBy'] } + : { orderBy?: email_status_luGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetEmail_status_luGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the email_status_lu model + */ + readonly fields: email_status_luFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for email_status_lu. + * 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__email_status_luClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + email = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user_email_xref = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 email_status_lu model + */ + interface email_status_luFieldRefs { + readonly status_id: FieldRef<"email_status_lu", 'Decimal'> + readonly status_desc: FieldRef<"email_status_lu", 'String'> + readonly create_date: FieldRef<"email_status_lu", 'DateTime'> + readonly modify_date: FieldRef<"email_status_lu", 'DateTime'> + } + + + // Custom InputTypes + /** + * email_status_lu findUnique + */ + export type email_status_luFindUniqueArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * Filter, which email_status_lu to fetch. + */ + where: email_status_luWhereUniqueInput + } + + /** + * email_status_lu findUniqueOrThrow + */ + export type email_status_luFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * Filter, which email_status_lu to fetch. + */ + where: email_status_luWhereUniqueInput + } + + /** + * email_status_lu findFirst + */ + export type email_status_luFindFirstArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * Filter, which email_status_lu to fetch. + */ + where?: email_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_status_lus to fetch. + */ + orderBy?: email_status_luOrderByWithRelationInput | email_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for email_status_lus. + */ + cursor?: email_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_status_lus 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` email_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of email_status_lus. + */ + distinct?: Email_status_luScalarFieldEnum | Email_status_luScalarFieldEnum[] + } + + /** + * email_status_lu findFirstOrThrow + */ + export type email_status_luFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * Filter, which email_status_lu to fetch. + */ + where?: email_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_status_lus to fetch. + */ + orderBy?: email_status_luOrderByWithRelationInput | email_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for email_status_lus. + */ + cursor?: email_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_status_lus 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` email_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of email_status_lus. + */ + distinct?: Email_status_luScalarFieldEnum | Email_status_luScalarFieldEnum[] + } + + /** + * email_status_lu findMany + */ + export type email_status_luFindManyArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * Filter, which email_status_lus to fetch. + */ + where?: email_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_status_lus to fetch. + */ + orderBy?: email_status_luOrderByWithRelationInput | email_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing email_status_lus. + */ + cursor?: email_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_status_lus 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` email_status_lus. + */ + skip?: number + distinct?: Email_status_luScalarFieldEnum | Email_status_luScalarFieldEnum[] + } + + /** + * email_status_lu create + */ + export type email_status_luCreateArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * The data needed to create a email_status_lu. + */ + data: XOR + } + + /** + * email_status_lu createMany + */ + export type email_status_luCreateManyArgs = { + /** + * The data used to create many email_status_lus. + */ + data: email_status_luCreateManyInput | email_status_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * email_status_lu createManyAndReturn + */ + export type email_status_luCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelectCreateManyAndReturn | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * The data used to create many email_status_lus. + */ + data: email_status_luCreateManyInput | email_status_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * email_status_lu update + */ + export type email_status_luUpdateArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * The data needed to update a email_status_lu. + */ + data: XOR + /** + * Choose, which email_status_lu to update. + */ + where: email_status_luWhereUniqueInput + } + + /** + * email_status_lu updateMany + */ + export type email_status_luUpdateManyArgs = { + /** + * The data used to update email_status_lus. + */ + data: XOR + /** + * Filter which email_status_lus to update + */ + where?: email_status_luWhereInput + /** + * Limit how many email_status_lus to update. + */ + limit?: number + } + + /** + * email_status_lu updateManyAndReturn + */ + export type email_status_luUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * The data used to update email_status_lus. + */ + data: XOR + /** + * Filter which email_status_lus to update + */ + where?: email_status_luWhereInput + /** + * Limit how many email_status_lus to update. + */ + limit?: number + } + + /** + * email_status_lu upsert + */ + export type email_status_luUpsertArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * The filter to search for the email_status_lu to update in case it exists. + */ + where: email_status_luWhereUniqueInput + /** + * In case the email_status_lu found by the `where` argument doesn't exist, create a new email_status_lu with this data. + */ + create: XOR + /** + * In case the email_status_lu was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * email_status_lu delete + */ + export type email_status_luDeleteArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + /** + * Filter which email_status_lu to delete. + */ + where: email_status_luWhereUniqueInput + } + + /** + * email_status_lu deleteMany + */ + export type email_status_luDeleteManyArgs = { + /** + * Filter which email_status_lus to delete + */ + where?: email_status_luWhereInput + /** + * Limit how many email_status_lus to delete. + */ + limit?: number + } + + /** + * email_status_lu.email + */ + export type email_status_lu$emailArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + where?: emailWhereInput + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + cursor?: emailWhereUniqueInput + take?: number + skip?: number + distinct?: EmailScalarFieldEnum | EmailScalarFieldEnum[] + } + + /** + * email_status_lu.user_email_xref + */ + export type email_status_lu$user_email_xrefArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + where?: user_email_xrefWhereInput + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + cursor?: user_email_xrefWhereUniqueInput + take?: number + skip?: number + distinct?: User_email_xrefScalarFieldEnum | User_email_xrefScalarFieldEnum[] + } + + /** + * email_status_lu without action + */ + export type email_status_luDefaultArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + } + + + /** + * Model email_type_lu + */ + + export type AggregateEmail_type_lu = { + _count: Email_type_luCountAggregateOutputType | null + _avg: Email_type_luAvgAggregateOutputType | null + _sum: Email_type_luSumAggregateOutputType | null + _min: Email_type_luMinAggregateOutputType | null + _max: Email_type_luMaxAggregateOutputType | null + } + + export type Email_type_luAvgAggregateOutputType = { + email_type_id: Decimal | null + } + + export type Email_type_luSumAggregateOutputType = { + email_type_id: Decimal | null + } + + export type Email_type_luMinAggregateOutputType = { + email_type_id: Decimal | null + email_type_desc: string | null + create_date: Date | null + modify_date: Date | null + } + + export type Email_type_luMaxAggregateOutputType = { + email_type_id: Decimal | null + email_type_desc: string | null + create_date: Date | null + modify_date: Date | null + } + + export type Email_type_luCountAggregateOutputType = { + email_type_id: number + email_type_desc: number + create_date: number + modify_date: number + _all: number + } + + + export type Email_type_luAvgAggregateInputType = { + email_type_id?: true + } + + export type Email_type_luSumAggregateInputType = { + email_type_id?: true + } + + export type Email_type_luMinAggregateInputType = { + email_type_id?: true + email_type_desc?: true + create_date?: true + modify_date?: true + } + + export type Email_type_luMaxAggregateInputType = { + email_type_id?: true + email_type_desc?: true + create_date?: true + modify_date?: true + } + + export type Email_type_luCountAggregateInputType = { + email_type_id?: true + email_type_desc?: true + create_date?: true + modify_date?: true + _all?: true + } + + export type Email_type_luAggregateArgs = { + /** + * Filter which email_type_lu to aggregate. + */ + where?: email_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_type_lus to fetch. + */ + orderBy?: email_type_luOrderByWithRelationInput | email_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: email_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_type_lus 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` email_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned email_type_lus + **/ + _count?: true | Email_type_luCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Email_type_luAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Email_type_luSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Email_type_luMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Email_type_luMaxAggregateInputType + } + + export type GetEmail_type_luAggregateType = { + [P in keyof T & keyof AggregateEmail_type_lu]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type email_type_luGroupByArgs = { + where?: email_type_luWhereInput + orderBy?: email_type_luOrderByWithAggregationInput | email_type_luOrderByWithAggregationInput[] + by: Email_type_luScalarFieldEnum[] | Email_type_luScalarFieldEnum + having?: email_type_luScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Email_type_luCountAggregateInputType | true + _avg?: Email_type_luAvgAggregateInputType + _sum?: Email_type_luSumAggregateInputType + _min?: Email_type_luMinAggregateInputType + _max?: Email_type_luMaxAggregateInputType + } + + export type Email_type_luGroupByOutputType = { + email_type_id: Decimal + email_type_desc: string | null + create_date: Date | null + modify_date: Date | null + _count: Email_type_luCountAggregateOutputType | null + _avg: Email_type_luAvgAggregateOutputType | null + _sum: Email_type_luSumAggregateOutputType | null + _min: Email_type_luMinAggregateOutputType | null + _max: Email_type_luMaxAggregateOutputType | null + } + + type GetEmail_type_luGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Email_type_luGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type email_type_luSelect = $Extensions.GetSelect<{ + email_type_id?: boolean + email_type_desc?: boolean + create_date?: boolean + modify_date?: boolean + email?: boolean | email_type_lu$emailArgs + _count?: boolean | Email_type_luCountOutputTypeDefaultArgs + }, ExtArgs["result"]["email_type_lu"]> + + export type email_type_luSelectCreateManyAndReturn = $Extensions.GetSelect<{ + email_type_id?: boolean + email_type_desc?: boolean + create_date?: boolean + modify_date?: boolean + }, ExtArgs["result"]["email_type_lu"]> + + export type email_type_luSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + email_type_id?: boolean + email_type_desc?: boolean + create_date?: boolean + modify_date?: boolean + }, ExtArgs["result"]["email_type_lu"]> + + export type email_type_luSelectScalar = { + email_type_id?: boolean + email_type_desc?: boolean + create_date?: boolean + modify_date?: boolean + } + + export type email_type_luOmit = $Extensions.GetOmit<"email_type_id" | "email_type_desc" | "create_date" | "modify_date", ExtArgs["result"]["email_type_lu"]> + export type email_type_luInclude = { + email?: boolean | email_type_lu$emailArgs + _count?: boolean | Email_type_luCountOutputTypeDefaultArgs + } + export type email_type_luIncludeCreateManyAndReturn = {} + export type email_type_luIncludeUpdateManyAndReturn = {} + + export type $email_type_luPayload = { + name: "email_type_lu" + objects: { + email: Prisma.$emailPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + email_type_id: Prisma.Decimal + email_type_desc: string | null + create_date: Date | null + modify_date: Date | null + }, ExtArgs["result"]["email_type_lu"]> + composites: {} + } + + type email_type_luGetPayload = $Result.GetResult + + type email_type_luCountArgs = + Omit & { + select?: Email_type_luCountAggregateInputType | true + } + + export interface email_type_luDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['email_type_lu'], meta: { name: 'email_type_lu' } } + /** + * Find zero or one Email_type_lu that matches the filter. + * @param {email_type_luFindUniqueArgs} args - Arguments to find a Email_type_lu + * @example + * // Get one Email_type_lu + * const email_type_lu = await prisma.email_type_lu.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Email_type_lu that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {email_type_luFindUniqueOrThrowArgs} args - Arguments to find a Email_type_lu + * @example + * // Get one Email_type_lu + * const email_type_lu = await prisma.email_type_lu.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Email_type_lu 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 {email_type_luFindFirstArgs} args - Arguments to find a Email_type_lu + * @example + * // Get one Email_type_lu + * const email_type_lu = await prisma.email_type_lu.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Email_type_lu 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 {email_type_luFindFirstOrThrowArgs} args - Arguments to find a Email_type_lu + * @example + * // Get one Email_type_lu + * const email_type_lu = await prisma.email_type_lu.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Email_type_lus 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 {email_type_luFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Email_type_lus + * const email_type_lus = await prisma.email_type_lu.findMany() + * + * // Get first 10 Email_type_lus + * const email_type_lus = await prisma.email_type_lu.findMany({ take: 10 }) + * + * // Only select the `email_type_id` + * const email_type_luWithEmail_type_idOnly = await prisma.email_type_lu.findMany({ select: { email_type_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Email_type_lu. + * @param {email_type_luCreateArgs} args - Arguments to create a Email_type_lu. + * @example + * // Create one Email_type_lu + * const Email_type_lu = await prisma.email_type_lu.create({ + * data: { + * // ... data to create a Email_type_lu + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Email_type_lus. + * @param {email_type_luCreateManyArgs} args - Arguments to create many Email_type_lus. + * @example + * // Create many Email_type_lus + * const email_type_lu = await prisma.email_type_lu.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Email_type_lus and returns the data saved in the database. + * @param {email_type_luCreateManyAndReturnArgs} args - Arguments to create many Email_type_lus. + * @example + * // Create many Email_type_lus + * const email_type_lu = await prisma.email_type_lu.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Email_type_lus and only return the `email_type_id` + * const email_type_luWithEmail_type_idOnly = await prisma.email_type_lu.createManyAndReturn({ + * select: { email_type_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Email_type_lu. + * @param {email_type_luDeleteArgs} args - Arguments to delete one Email_type_lu. + * @example + * // Delete one Email_type_lu + * const Email_type_lu = await prisma.email_type_lu.delete({ + * where: { + * // ... filter to delete one Email_type_lu + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Email_type_lu. + * @param {email_type_luUpdateArgs} args - Arguments to update one Email_type_lu. + * @example + * // Update one Email_type_lu + * const email_type_lu = await prisma.email_type_lu.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Email_type_lus. + * @param {email_type_luDeleteManyArgs} args - Arguments to filter Email_type_lus to delete. + * @example + * // Delete a few Email_type_lus + * const { count } = await prisma.email_type_lu.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Email_type_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {email_type_luUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Email_type_lus + * const email_type_lu = await prisma.email_type_lu.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Email_type_lus and returns the data updated in the database. + * @param {email_type_luUpdateManyAndReturnArgs} args - Arguments to update many Email_type_lus. + * @example + * // Update many Email_type_lus + * const email_type_lu = await prisma.email_type_lu.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Email_type_lus and only return the `email_type_id` + * const email_type_luWithEmail_type_idOnly = await prisma.email_type_lu.updateManyAndReturn({ + * select: { email_type_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Email_type_lu. + * @param {email_type_luUpsertArgs} args - Arguments to update or create a Email_type_lu. + * @example + * // Update or create a Email_type_lu + * const email_type_lu = await prisma.email_type_lu.upsert({ + * create: { + * // ... data to create a Email_type_lu + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Email_type_lu we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__email_type_luClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Email_type_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {email_type_luCountArgs} args - Arguments to filter Email_type_lus to count. + * @example + * // Count the number of Email_type_lus + * const count = await prisma.email_type_lu.count({ + * where: { + * // ... the filter for the Email_type_lus 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 Email_type_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Email_type_luAggregateArgs} 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 Email_type_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {email_type_luGroupByArgs} 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 email_type_luGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: email_type_luGroupByArgs['orderBy'] } + : { orderBy?: email_type_luGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetEmail_type_luGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the email_type_lu model + */ + readonly fields: email_type_luFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for email_type_lu. + * 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__email_type_luClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + email = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 email_type_lu model + */ + interface email_type_luFieldRefs { + readonly email_type_id: FieldRef<"email_type_lu", 'Decimal'> + readonly email_type_desc: FieldRef<"email_type_lu", 'String'> + readonly create_date: FieldRef<"email_type_lu", 'DateTime'> + readonly modify_date: FieldRef<"email_type_lu", 'DateTime'> + } + + + // Custom InputTypes + /** + * email_type_lu findUnique + */ + export type email_type_luFindUniqueArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * Filter, which email_type_lu to fetch. + */ + where: email_type_luWhereUniqueInput + } + + /** + * email_type_lu findUniqueOrThrow + */ + export type email_type_luFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * Filter, which email_type_lu to fetch. + */ + where: email_type_luWhereUniqueInput + } + + /** + * email_type_lu findFirst + */ + export type email_type_luFindFirstArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * Filter, which email_type_lu to fetch. + */ + where?: email_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_type_lus to fetch. + */ + orderBy?: email_type_luOrderByWithRelationInput | email_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for email_type_lus. + */ + cursor?: email_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_type_lus 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` email_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of email_type_lus. + */ + distinct?: Email_type_luScalarFieldEnum | Email_type_luScalarFieldEnum[] + } + + /** + * email_type_lu findFirstOrThrow + */ + export type email_type_luFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * Filter, which email_type_lu to fetch. + */ + where?: email_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_type_lus to fetch. + */ + orderBy?: email_type_luOrderByWithRelationInput | email_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for email_type_lus. + */ + cursor?: email_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_type_lus 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` email_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of email_type_lus. + */ + distinct?: Email_type_luScalarFieldEnum | Email_type_luScalarFieldEnum[] + } + + /** + * email_type_lu findMany + */ + export type email_type_luFindManyArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * Filter, which email_type_lus to fetch. + */ + where?: email_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of email_type_lus to fetch. + */ + orderBy?: email_type_luOrderByWithRelationInput | email_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing email_type_lus. + */ + cursor?: email_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` email_type_lus 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` email_type_lus. + */ + skip?: number + distinct?: Email_type_luScalarFieldEnum | Email_type_luScalarFieldEnum[] + } + + /** + * email_type_lu create + */ + export type email_type_luCreateArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * The data needed to create a email_type_lu. + */ + data: XOR + } + + /** + * email_type_lu createMany + */ + export type email_type_luCreateManyArgs = { + /** + * The data used to create many email_type_lus. + */ + data: email_type_luCreateManyInput | email_type_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * email_type_lu createManyAndReturn + */ + export type email_type_luCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelectCreateManyAndReturn | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * The data used to create many email_type_lus. + */ + data: email_type_luCreateManyInput | email_type_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * email_type_lu update + */ + export type email_type_luUpdateArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * The data needed to update a email_type_lu. + */ + data: XOR + /** + * Choose, which email_type_lu to update. + */ + where: email_type_luWhereUniqueInput + } + + /** + * email_type_lu updateMany + */ + export type email_type_luUpdateManyArgs = { + /** + * The data used to update email_type_lus. + */ + data: XOR + /** + * Filter which email_type_lus to update + */ + where?: email_type_luWhereInput + /** + * Limit how many email_type_lus to update. + */ + limit?: number + } + + /** + * email_type_lu updateManyAndReturn + */ + export type email_type_luUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * The data used to update email_type_lus. + */ + data: XOR + /** + * Filter which email_type_lus to update + */ + where?: email_type_luWhereInput + /** + * Limit how many email_type_lus to update. + */ + limit?: number + } + + /** + * email_type_lu upsert + */ + export type email_type_luUpsertArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * The filter to search for the email_type_lu to update in case it exists. + */ + where: email_type_luWhereUniqueInput + /** + * In case the email_type_lu found by the `where` argument doesn't exist, create a new email_type_lu with this data. + */ + create: XOR + /** + * In case the email_type_lu was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * email_type_lu delete + */ + export type email_type_luDeleteArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + /** + * Filter which email_type_lu to delete. + */ + where: email_type_luWhereUniqueInput + } + + /** + * email_type_lu deleteMany + */ + export type email_type_luDeleteManyArgs = { + /** + * Filter which email_type_lus to delete + */ + where?: email_type_luWhereInput + /** + * Limit how many email_type_lus to delete. + */ + limit?: number + } + + /** + * email_type_lu.email + */ + export type email_type_lu$emailArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + where?: emailWhereInput + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + cursor?: emailWhereUniqueInput + take?: number + skip?: number + distinct?: EmailScalarFieldEnum | EmailScalarFieldEnum[] + } + + /** + * email_type_lu without action + */ + export type email_type_luDefaultArgs = { + /** + * Select specific fields to fetch from the email_type_lu + */ + select?: email_type_luSelect | null + /** + * Omit specific fields from the email_type_lu + */ + omit?: email_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_type_luInclude | null + } + + + /** + * Model id_sequences + */ + + export type AggregateId_sequences = { + _count: Id_sequencesCountAggregateOutputType | null + _avg: Id_sequencesAvgAggregateOutputType | null + _sum: Id_sequencesSumAggregateOutputType | null + _min: Id_sequencesMinAggregateOutputType | null + _max: Id_sequencesMaxAggregateOutputType | null + } + + export type Id_sequencesAvgAggregateOutputType = { + next_block_start: Decimal | null + block_size: Decimal | null + exhausted: Decimal | null + } + + export type Id_sequencesSumAggregateOutputType = { + next_block_start: Decimal | null + block_size: Decimal | null + exhausted: Decimal | null + } + + export type Id_sequencesMinAggregateOutputType = { + name: string | null + next_block_start: Decimal | null + block_size: Decimal | null + exhausted: Decimal | null + } + + export type Id_sequencesMaxAggregateOutputType = { + name: string | null + next_block_start: Decimal | null + block_size: Decimal | null + exhausted: Decimal | null + } + + export type Id_sequencesCountAggregateOutputType = { + name: number + next_block_start: number + block_size: number + exhausted: number + _all: number + } + + + export type Id_sequencesAvgAggregateInputType = { + next_block_start?: true + block_size?: true + exhausted?: true + } + + export type Id_sequencesSumAggregateInputType = { + next_block_start?: true + block_size?: true + exhausted?: true + } + + export type Id_sequencesMinAggregateInputType = { + name?: true + next_block_start?: true + block_size?: true + exhausted?: true + } + + export type Id_sequencesMaxAggregateInputType = { + name?: true + next_block_start?: true + block_size?: true + exhausted?: true + } + + export type Id_sequencesCountAggregateInputType = { + name?: true + next_block_start?: true + block_size?: true + exhausted?: true + _all?: true + } + + export type Id_sequencesAggregateArgs = { + /** + * Filter which id_sequences to aggregate. + */ + where?: id_sequencesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of id_sequences to fetch. + */ + orderBy?: id_sequencesOrderByWithRelationInput | id_sequencesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: id_sequencesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` id_sequences 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` id_sequences. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned id_sequences + **/ + _count?: true | Id_sequencesCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Id_sequencesAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Id_sequencesSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Id_sequencesMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Id_sequencesMaxAggregateInputType + } + + export type GetId_sequencesAggregateType = { + [P in keyof T & keyof AggregateId_sequences]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type id_sequencesGroupByArgs = { + where?: id_sequencesWhereInput + orderBy?: id_sequencesOrderByWithAggregationInput | id_sequencesOrderByWithAggregationInput[] + by: Id_sequencesScalarFieldEnum[] | Id_sequencesScalarFieldEnum + having?: id_sequencesScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Id_sequencesCountAggregateInputType | true + _avg?: Id_sequencesAvgAggregateInputType + _sum?: Id_sequencesSumAggregateInputType + _min?: Id_sequencesMinAggregateInputType + _max?: Id_sequencesMaxAggregateInputType + } + + export type Id_sequencesGroupByOutputType = { + name: string + next_block_start: Decimal + block_size: Decimal + exhausted: Decimal + _count: Id_sequencesCountAggregateOutputType | null + _avg: Id_sequencesAvgAggregateOutputType | null + _sum: Id_sequencesSumAggregateOutputType | null + _min: Id_sequencesMinAggregateOutputType | null + _max: Id_sequencesMaxAggregateOutputType | null + } + + type GetId_sequencesGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Id_sequencesGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type id_sequencesSelect = $Extensions.GetSelect<{ + name?: boolean + next_block_start?: boolean + block_size?: boolean + exhausted?: boolean + }, ExtArgs["result"]["id_sequences"]> + + export type id_sequencesSelectCreateManyAndReturn = $Extensions.GetSelect<{ + name?: boolean + next_block_start?: boolean + block_size?: boolean + exhausted?: boolean + }, ExtArgs["result"]["id_sequences"]> + + export type id_sequencesSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + name?: boolean + next_block_start?: boolean + block_size?: boolean + exhausted?: boolean + }, ExtArgs["result"]["id_sequences"]> + + export type id_sequencesSelectScalar = { + name?: boolean + next_block_start?: boolean + block_size?: boolean + exhausted?: boolean + } + + export type id_sequencesOmit = $Extensions.GetOmit<"name" | "next_block_start" | "block_size" | "exhausted", ExtArgs["result"]["id_sequences"]> + + export type $id_sequencesPayload = { + name: "id_sequences" + objects: {} + scalars: $Extensions.GetPayloadResult<{ + name: string + next_block_start: Prisma.Decimal + block_size: Prisma.Decimal + exhausted: Prisma.Decimal + }, ExtArgs["result"]["id_sequences"]> + composites: {} + } + + type id_sequencesGetPayload = $Result.GetResult + + type id_sequencesCountArgs = + Omit & { + select?: Id_sequencesCountAggregateInputType | true + } + + export interface id_sequencesDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['id_sequences'], meta: { name: 'id_sequences' } } + /** + * Find zero or one Id_sequences that matches the filter. + * @param {id_sequencesFindUniqueArgs} args - Arguments to find a Id_sequences + * @example + * // Get one Id_sequences + * const id_sequences = await prisma.id_sequences.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Id_sequences that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {id_sequencesFindUniqueOrThrowArgs} args - Arguments to find a Id_sequences + * @example + * // Get one Id_sequences + * const id_sequences = await prisma.id_sequences.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Id_sequences 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 {id_sequencesFindFirstArgs} args - Arguments to find a Id_sequences + * @example + * // Get one Id_sequences + * const id_sequences = await prisma.id_sequences.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Id_sequences 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 {id_sequencesFindFirstOrThrowArgs} args - Arguments to find a Id_sequences + * @example + * // Get one Id_sequences + * const id_sequences = await prisma.id_sequences.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Id_sequences 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 {id_sequencesFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Id_sequences + * const id_sequences = await prisma.id_sequences.findMany() + * + * // Get first 10 Id_sequences + * const id_sequences = await prisma.id_sequences.findMany({ take: 10 }) + * + * // Only select the `name` + * const id_sequencesWithNameOnly = await prisma.id_sequences.findMany({ select: { name: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Id_sequences. + * @param {id_sequencesCreateArgs} args - Arguments to create a Id_sequences. + * @example + * // Create one Id_sequences + * const Id_sequences = await prisma.id_sequences.create({ + * data: { + * // ... data to create a Id_sequences + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Id_sequences. + * @param {id_sequencesCreateManyArgs} args - Arguments to create many Id_sequences. + * @example + * // Create many Id_sequences + * const id_sequences = await prisma.id_sequences.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Id_sequences and returns the data saved in the database. + * @param {id_sequencesCreateManyAndReturnArgs} args - Arguments to create many Id_sequences. + * @example + * // Create many Id_sequences + * const id_sequences = await prisma.id_sequences.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Id_sequences and only return the `name` + * const id_sequencesWithNameOnly = await prisma.id_sequences.createManyAndReturn({ + * select: { name: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Id_sequences. + * @param {id_sequencesDeleteArgs} args - Arguments to delete one Id_sequences. + * @example + * // Delete one Id_sequences + * const Id_sequences = await prisma.id_sequences.delete({ + * where: { + * // ... filter to delete one Id_sequences + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Id_sequences. + * @param {id_sequencesUpdateArgs} args - Arguments to update one Id_sequences. + * @example + * // Update one Id_sequences + * const id_sequences = await prisma.id_sequences.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Id_sequences. + * @param {id_sequencesDeleteManyArgs} args - Arguments to filter Id_sequences to delete. + * @example + * // Delete a few Id_sequences + * const { count } = await prisma.id_sequences.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Id_sequences. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {id_sequencesUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Id_sequences + * const id_sequences = await prisma.id_sequences.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Id_sequences and returns the data updated in the database. + * @param {id_sequencesUpdateManyAndReturnArgs} args - Arguments to update many Id_sequences. + * @example + * // Update many Id_sequences + * const id_sequences = await prisma.id_sequences.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Id_sequences and only return the `name` + * const id_sequencesWithNameOnly = await prisma.id_sequences.updateManyAndReturn({ + * select: { name: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Id_sequences. + * @param {id_sequencesUpsertArgs} args - Arguments to update or create a Id_sequences. + * @example + * // Update or create a Id_sequences + * const id_sequences = await prisma.id_sequences.upsert({ + * create: { + * // ... data to create a Id_sequences + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Id_sequences we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__id_sequencesClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Id_sequences. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {id_sequencesCountArgs} args - Arguments to filter Id_sequences to count. + * @example + * // Count the number of Id_sequences + * const count = await prisma.id_sequences.count({ + * where: { + * // ... the filter for the Id_sequences 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 Id_sequences. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Id_sequencesAggregateArgs} 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 Id_sequences. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {id_sequencesGroupByArgs} 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 id_sequencesGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: id_sequencesGroupByArgs['orderBy'] } + : { orderBy?: id_sequencesGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetId_sequencesGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the id_sequences model + */ + readonly fields: id_sequencesFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for id_sequences. + * 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__id_sequencesClient 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 id_sequences model + */ + interface id_sequencesFieldRefs { + readonly name: FieldRef<"id_sequences", 'String'> + readonly next_block_start: FieldRef<"id_sequences", 'Decimal'> + readonly block_size: FieldRef<"id_sequences", 'Decimal'> + readonly exhausted: FieldRef<"id_sequences", 'Decimal'> + } + + + // Custom InputTypes + /** + * id_sequences findUnique + */ + export type id_sequencesFindUniqueArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * Filter, which id_sequences to fetch. + */ + where: id_sequencesWhereUniqueInput + } + + /** + * id_sequences findUniqueOrThrow + */ + export type id_sequencesFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * Filter, which id_sequences to fetch. + */ + where: id_sequencesWhereUniqueInput + } + + /** + * id_sequences findFirst + */ + export type id_sequencesFindFirstArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * Filter, which id_sequences to fetch. + */ + where?: id_sequencesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of id_sequences to fetch. + */ + orderBy?: id_sequencesOrderByWithRelationInput | id_sequencesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for id_sequences. + */ + cursor?: id_sequencesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` id_sequences 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` id_sequences. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of id_sequences. + */ + distinct?: Id_sequencesScalarFieldEnum | Id_sequencesScalarFieldEnum[] + } + + /** + * id_sequences findFirstOrThrow + */ + export type id_sequencesFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * Filter, which id_sequences to fetch. + */ + where?: id_sequencesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of id_sequences to fetch. + */ + orderBy?: id_sequencesOrderByWithRelationInput | id_sequencesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for id_sequences. + */ + cursor?: id_sequencesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` id_sequences 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` id_sequences. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of id_sequences. + */ + distinct?: Id_sequencesScalarFieldEnum | Id_sequencesScalarFieldEnum[] + } + + /** + * id_sequences findMany + */ + export type id_sequencesFindManyArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * Filter, which id_sequences to fetch. + */ + where?: id_sequencesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of id_sequences to fetch. + */ + orderBy?: id_sequencesOrderByWithRelationInput | id_sequencesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing id_sequences. + */ + cursor?: id_sequencesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` id_sequences 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` id_sequences. + */ + skip?: number + distinct?: Id_sequencesScalarFieldEnum | Id_sequencesScalarFieldEnum[] + } + + /** + * id_sequences create + */ + export type id_sequencesCreateArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * The data needed to create a id_sequences. + */ + data: XOR + } + + /** + * id_sequences createMany + */ + export type id_sequencesCreateManyArgs = { + /** + * The data used to create many id_sequences. + */ + data: id_sequencesCreateManyInput | id_sequencesCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * id_sequences createManyAndReturn + */ + export type id_sequencesCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelectCreateManyAndReturn | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * The data used to create many id_sequences. + */ + data: id_sequencesCreateManyInput | id_sequencesCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * id_sequences update + */ + export type id_sequencesUpdateArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * The data needed to update a id_sequences. + */ + data: XOR + /** + * Choose, which id_sequences to update. + */ + where: id_sequencesWhereUniqueInput + } + + /** + * id_sequences updateMany + */ + export type id_sequencesUpdateManyArgs = { + /** + * The data used to update id_sequences. + */ + data: XOR + /** + * Filter which id_sequences to update + */ + where?: id_sequencesWhereInput + /** + * Limit how many id_sequences to update. + */ + limit?: number + } + + /** + * id_sequences updateManyAndReturn + */ + export type id_sequencesUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * The data used to update id_sequences. + */ + data: XOR + /** + * Filter which id_sequences to update + */ + where?: id_sequencesWhereInput + /** + * Limit how many id_sequences to update. + */ + limit?: number + } + + /** + * id_sequences upsert + */ + export type id_sequencesUpsertArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * The filter to search for the id_sequences to update in case it exists. + */ + where: id_sequencesWhereUniqueInput + /** + * In case the id_sequences found by the `where` argument doesn't exist, create a new id_sequences with this data. + */ + create: XOR + /** + * In case the id_sequences was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * id_sequences delete + */ + export type id_sequencesDeleteArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + /** + * Filter which id_sequences to delete. + */ + where: id_sequencesWhereUniqueInput + } + + /** + * id_sequences deleteMany + */ + export type id_sequencesDeleteManyArgs = { + /** + * Filter which id_sequences to delete + */ + where?: id_sequencesWhereInput + /** + * Limit how many id_sequences to delete. + */ + limit?: number + } + + /** + * id_sequences without action + */ + export type id_sequencesDefaultArgs = { + /** + * Select specific fields to fetch from the id_sequences + */ + select?: id_sequencesSelect | null + /** + * Omit specific fields from the id_sequences + */ + omit?: id_sequencesOmit | null + } + + + /** + * Model invalid_handles + */ + + export type AggregateInvalid_handles = { + _count: Invalid_handlesCountAggregateOutputType | null + _avg: Invalid_handlesAvgAggregateOutputType | null + _sum: Invalid_handlesSumAggregateOutputType | null + _min: Invalid_handlesMinAggregateOutputType | null + _max: Invalid_handlesMaxAggregateOutputType | null + } + + export type Invalid_handlesAvgAggregateOutputType = { + invalid_handle_id: number | null + } + + export type Invalid_handlesSumAggregateOutputType = { + invalid_handle_id: number | null + } + + export type Invalid_handlesMinAggregateOutputType = { + invalid_handle_id: number | null + invalid_handle: string | null + } + + export type Invalid_handlesMaxAggregateOutputType = { + invalid_handle_id: number | null + invalid_handle: string | null + } + + export type Invalid_handlesCountAggregateOutputType = { + invalid_handle_id: number + invalid_handle: number + _all: number + } + + + export type Invalid_handlesAvgAggregateInputType = { + invalid_handle_id?: true + } + + export type Invalid_handlesSumAggregateInputType = { + invalid_handle_id?: true + } + + export type Invalid_handlesMinAggregateInputType = { + invalid_handle_id?: true + invalid_handle?: true + } + + export type Invalid_handlesMaxAggregateInputType = { + invalid_handle_id?: true + invalid_handle?: true + } + + export type Invalid_handlesCountAggregateInputType = { + invalid_handle_id?: true + invalid_handle?: true + _all?: true + } + + export type Invalid_handlesAggregateArgs = { + /** + * Filter which invalid_handles to aggregate. + */ + where?: invalid_handlesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of invalid_handles to fetch. + */ + orderBy?: invalid_handlesOrderByWithRelationInput | invalid_handlesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: invalid_handlesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` invalid_handles 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` invalid_handles. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned invalid_handles + **/ + _count?: true | Invalid_handlesCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Invalid_handlesAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Invalid_handlesSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Invalid_handlesMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Invalid_handlesMaxAggregateInputType + } + + export type GetInvalid_handlesAggregateType = { + [P in keyof T & keyof AggregateInvalid_handles]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type invalid_handlesGroupByArgs = { + where?: invalid_handlesWhereInput + orderBy?: invalid_handlesOrderByWithAggregationInput | invalid_handlesOrderByWithAggregationInput[] + by: Invalid_handlesScalarFieldEnum[] | Invalid_handlesScalarFieldEnum + having?: invalid_handlesScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Invalid_handlesCountAggregateInputType | true + _avg?: Invalid_handlesAvgAggregateInputType + _sum?: Invalid_handlesSumAggregateInputType + _min?: Invalid_handlesMinAggregateInputType + _max?: Invalid_handlesMaxAggregateInputType + } + + export type Invalid_handlesGroupByOutputType = { + invalid_handle_id: number + invalid_handle: string + _count: Invalid_handlesCountAggregateOutputType | null + _avg: Invalid_handlesAvgAggregateOutputType | null + _sum: Invalid_handlesSumAggregateOutputType | null + _min: Invalid_handlesMinAggregateOutputType | null + _max: Invalid_handlesMaxAggregateOutputType | null + } + + type GetInvalid_handlesGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Invalid_handlesGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type invalid_handlesSelect = $Extensions.GetSelect<{ + invalid_handle_id?: boolean + invalid_handle?: boolean + }, ExtArgs["result"]["invalid_handles"]> + + export type invalid_handlesSelectCreateManyAndReturn = $Extensions.GetSelect<{ + invalid_handle_id?: boolean + invalid_handle?: boolean + }, ExtArgs["result"]["invalid_handles"]> + + export type invalid_handlesSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + invalid_handle_id?: boolean + invalid_handle?: boolean + }, ExtArgs["result"]["invalid_handles"]> + + export type invalid_handlesSelectScalar = { + invalid_handle_id?: boolean + invalid_handle?: boolean + } + + export type invalid_handlesOmit = $Extensions.GetOmit<"invalid_handle_id" | "invalid_handle", ExtArgs["result"]["invalid_handles"]> + + export type $invalid_handlesPayload = { + name: "invalid_handles" + objects: {} + scalars: $Extensions.GetPayloadResult<{ + invalid_handle_id: number + invalid_handle: string + }, ExtArgs["result"]["invalid_handles"]> + composites: {} + } + + type invalid_handlesGetPayload = $Result.GetResult + + type invalid_handlesCountArgs = + Omit & { + select?: Invalid_handlesCountAggregateInputType | true + } + + export interface invalid_handlesDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['invalid_handles'], meta: { name: 'invalid_handles' } } + /** + * Find zero or one Invalid_handles that matches the filter. + * @param {invalid_handlesFindUniqueArgs} args - Arguments to find a Invalid_handles + * @example + * // Get one Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Invalid_handles that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {invalid_handlesFindUniqueOrThrowArgs} args - Arguments to find a Invalid_handles + * @example + * // Get one Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Invalid_handles 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 {invalid_handlesFindFirstArgs} args - Arguments to find a Invalid_handles + * @example + * // Get one Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Invalid_handles 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 {invalid_handlesFindFirstOrThrowArgs} args - Arguments to find a Invalid_handles + * @example + * // Get one Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Invalid_handles 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 {invalid_handlesFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findMany() + * + * // Get first 10 Invalid_handles + * const invalid_handles = await prisma.invalid_handles.findMany({ take: 10 }) + * + * // Only select the `invalid_handle_id` + * const invalid_handlesWithInvalid_handle_idOnly = await prisma.invalid_handles.findMany({ select: { invalid_handle_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Invalid_handles. + * @param {invalid_handlesCreateArgs} args - Arguments to create a Invalid_handles. + * @example + * // Create one Invalid_handles + * const Invalid_handles = await prisma.invalid_handles.create({ + * data: { + * // ... data to create a Invalid_handles + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Invalid_handles. + * @param {invalid_handlesCreateManyArgs} args - Arguments to create many Invalid_handles. + * @example + * // Create many Invalid_handles + * const invalid_handles = await prisma.invalid_handles.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Invalid_handles and returns the data saved in the database. + * @param {invalid_handlesCreateManyAndReturnArgs} args - Arguments to create many Invalid_handles. + * @example + * // Create many Invalid_handles + * const invalid_handles = await prisma.invalid_handles.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Invalid_handles and only return the `invalid_handle_id` + * const invalid_handlesWithInvalid_handle_idOnly = await prisma.invalid_handles.createManyAndReturn({ + * select: { invalid_handle_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Invalid_handles. + * @param {invalid_handlesDeleteArgs} args - Arguments to delete one Invalid_handles. + * @example + * // Delete one Invalid_handles + * const Invalid_handles = await prisma.invalid_handles.delete({ + * where: { + * // ... filter to delete one Invalid_handles + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Invalid_handles. + * @param {invalid_handlesUpdateArgs} args - Arguments to update one Invalid_handles. + * @example + * // Update one Invalid_handles + * const invalid_handles = await prisma.invalid_handles.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Invalid_handles. + * @param {invalid_handlesDeleteManyArgs} args - Arguments to filter Invalid_handles to delete. + * @example + * // Delete a few Invalid_handles + * const { count } = await prisma.invalid_handles.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Invalid_handles. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {invalid_handlesUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Invalid_handles + * const invalid_handles = await prisma.invalid_handles.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Invalid_handles and returns the data updated in the database. + * @param {invalid_handlesUpdateManyAndReturnArgs} args - Arguments to update many Invalid_handles. + * @example + * // Update many Invalid_handles + * const invalid_handles = await prisma.invalid_handles.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Invalid_handles and only return the `invalid_handle_id` + * const invalid_handlesWithInvalid_handle_idOnly = await prisma.invalid_handles.updateManyAndReturn({ + * select: { invalid_handle_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Invalid_handles. + * @param {invalid_handlesUpsertArgs} args - Arguments to update or create a Invalid_handles. + * @example + * // Update or create a Invalid_handles + * const invalid_handles = await prisma.invalid_handles.upsert({ + * create: { + * // ... data to create a Invalid_handles + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Invalid_handles we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__invalid_handlesClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Invalid_handles. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {invalid_handlesCountArgs} args - Arguments to filter Invalid_handles to count. + * @example + * // Count the number of Invalid_handles + * const count = await prisma.invalid_handles.count({ + * where: { + * // ... the filter for the Invalid_handles 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 Invalid_handles. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Invalid_handlesAggregateArgs} 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 Invalid_handles. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {invalid_handlesGroupByArgs} 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 invalid_handlesGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: invalid_handlesGroupByArgs['orderBy'] } + : { orderBy?: invalid_handlesGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetInvalid_handlesGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the invalid_handles model + */ + readonly fields: invalid_handlesFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for invalid_handles. + * 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__invalid_handlesClient 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 invalid_handles model + */ + interface invalid_handlesFieldRefs { + readonly invalid_handle_id: FieldRef<"invalid_handles", 'Int'> + readonly invalid_handle: FieldRef<"invalid_handles", 'String'> + } + + + // Custom InputTypes + /** + * invalid_handles findUnique + */ + export type invalid_handlesFindUniqueArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * Filter, which invalid_handles to fetch. + */ + where: invalid_handlesWhereUniqueInput + } + + /** + * invalid_handles findUniqueOrThrow + */ + export type invalid_handlesFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * Filter, which invalid_handles to fetch. + */ + where: invalid_handlesWhereUniqueInput + } + + /** + * invalid_handles findFirst + */ + export type invalid_handlesFindFirstArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * Filter, which invalid_handles to fetch. + */ + where?: invalid_handlesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of invalid_handles to fetch. + */ + orderBy?: invalid_handlesOrderByWithRelationInput | invalid_handlesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for invalid_handles. + */ + cursor?: invalid_handlesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` invalid_handles 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` invalid_handles. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of invalid_handles. + */ + distinct?: Invalid_handlesScalarFieldEnum | Invalid_handlesScalarFieldEnum[] + } + + /** + * invalid_handles findFirstOrThrow + */ + export type invalid_handlesFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * Filter, which invalid_handles to fetch. + */ + where?: invalid_handlesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of invalid_handles to fetch. + */ + orderBy?: invalid_handlesOrderByWithRelationInput | invalid_handlesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for invalid_handles. + */ + cursor?: invalid_handlesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` invalid_handles 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` invalid_handles. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of invalid_handles. + */ + distinct?: Invalid_handlesScalarFieldEnum | Invalid_handlesScalarFieldEnum[] + } + + /** + * invalid_handles findMany + */ + export type invalid_handlesFindManyArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * Filter, which invalid_handles to fetch. + */ + where?: invalid_handlesWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of invalid_handles to fetch. + */ + orderBy?: invalid_handlesOrderByWithRelationInput | invalid_handlesOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing invalid_handles. + */ + cursor?: invalid_handlesWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` invalid_handles 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` invalid_handles. + */ + skip?: number + distinct?: Invalid_handlesScalarFieldEnum | Invalid_handlesScalarFieldEnum[] + } + + /** + * invalid_handles create + */ + export type invalid_handlesCreateArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * The data needed to create a invalid_handles. + */ + data: XOR + } + + /** + * invalid_handles createMany + */ + export type invalid_handlesCreateManyArgs = { + /** + * The data used to create many invalid_handles. + */ + data: invalid_handlesCreateManyInput | invalid_handlesCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * invalid_handles createManyAndReturn + */ + export type invalid_handlesCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelectCreateManyAndReturn | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * The data used to create many invalid_handles. + */ + data: invalid_handlesCreateManyInput | invalid_handlesCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * invalid_handles update + */ + export type invalid_handlesUpdateArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * The data needed to update a invalid_handles. + */ + data: XOR + /** + * Choose, which invalid_handles to update. + */ + where: invalid_handlesWhereUniqueInput + } + + /** + * invalid_handles updateMany + */ + export type invalid_handlesUpdateManyArgs = { + /** + * The data used to update invalid_handles. + */ + data: XOR + /** + * Filter which invalid_handles to update + */ + where?: invalid_handlesWhereInput + /** + * Limit how many invalid_handles to update. + */ + limit?: number + } + + /** + * invalid_handles updateManyAndReturn + */ + export type invalid_handlesUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * The data used to update invalid_handles. + */ + data: XOR + /** + * Filter which invalid_handles to update + */ + where?: invalid_handlesWhereInput + /** + * Limit how many invalid_handles to update. + */ + limit?: number + } + + /** + * invalid_handles upsert + */ + export type invalid_handlesUpsertArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * The filter to search for the invalid_handles to update in case it exists. + */ + where: invalid_handlesWhereUniqueInput + /** + * In case the invalid_handles found by the `where` argument doesn't exist, create a new invalid_handles with this data. + */ + create: XOR + /** + * In case the invalid_handles was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * invalid_handles delete + */ + export type invalid_handlesDeleteArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + /** + * Filter which invalid_handles to delete. + */ + where: invalid_handlesWhereUniqueInput + } + + /** + * invalid_handles deleteMany + */ + export type invalid_handlesDeleteManyArgs = { + /** + * Filter which invalid_handles to delete + */ + where?: invalid_handlesWhereInput + /** + * Limit how many invalid_handles to delete. + */ + limit?: number + } + + /** + * invalid_handles without action + */ + export type invalid_handlesDefaultArgs = { + /** + * Select specific fields to fetch from the invalid_handles + */ + select?: invalid_handlesSelect | null + /** + * Omit specific fields from the invalid_handles + */ + omit?: invalid_handlesOmit | null + } + + + /** + * Model security_groups + */ + + export type AggregateSecurity_groups = { + _count: Security_groupsCountAggregateOutputType | null + _avg: Security_groupsAvgAggregateOutputType | null + _sum: Security_groupsSumAggregateOutputType | null + _min: Security_groupsMinAggregateOutputType | null + _max: Security_groupsMaxAggregateOutputType | null + } + + export type Security_groupsAvgAggregateOutputType = { + group_id: Decimal | null + challenge_group_ind: number | null + create_user_id: Decimal | null + } + + export type Security_groupsSumAggregateOutputType = { + group_id: Decimal | null + challenge_group_ind: number | null + create_user_id: Decimal | null + } + + export type Security_groupsMinAggregateOutputType = { + group_id: Decimal | null + description: string | null + challenge_group_ind: number | null + create_user_id: Decimal | null + } + + export type Security_groupsMaxAggregateOutputType = { + group_id: Decimal | null + description: string | null + challenge_group_ind: number | null + create_user_id: Decimal | null + } + + export type Security_groupsCountAggregateOutputType = { + group_id: number + description: number + challenge_group_ind: number + create_user_id: number + _all: number + } + + + export type Security_groupsAvgAggregateInputType = { + group_id?: true + challenge_group_ind?: true + create_user_id?: true + } + + export type Security_groupsSumAggregateInputType = { + group_id?: true + challenge_group_ind?: true + create_user_id?: true + } + + export type Security_groupsMinAggregateInputType = { + group_id?: true + description?: true + challenge_group_ind?: true + create_user_id?: true + } + + export type Security_groupsMaxAggregateInputType = { + group_id?: true + description?: true + challenge_group_ind?: true + create_user_id?: true + } + + export type Security_groupsCountAggregateInputType = { + group_id?: true + description?: true + challenge_group_ind?: true + create_user_id?: true + _all?: true + } + + export type Security_groupsAggregateArgs = { + /** + * Filter which security_groups to aggregate. + */ + where?: security_groupsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_groups to fetch. + */ + orderBy?: security_groupsOrderByWithRelationInput | security_groupsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: security_groupsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_groups 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` security_groups. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned security_groups + **/ + _count?: true | Security_groupsCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Security_groupsAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Security_groupsSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Security_groupsMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Security_groupsMaxAggregateInputType + } + + export type GetSecurity_groupsAggregateType = { + [P in keyof T & keyof AggregateSecurity_groups]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type security_groupsGroupByArgs = { + where?: security_groupsWhereInput + orderBy?: security_groupsOrderByWithAggregationInput | security_groupsOrderByWithAggregationInput[] + by: Security_groupsScalarFieldEnum[] | Security_groupsScalarFieldEnum + having?: security_groupsScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Security_groupsCountAggregateInputType | true + _avg?: Security_groupsAvgAggregateInputType + _sum?: Security_groupsSumAggregateInputType + _min?: Security_groupsMinAggregateInputType + _max?: Security_groupsMaxAggregateInputType + } + + export type Security_groupsGroupByOutputType = { + group_id: Decimal + description: string + challenge_group_ind: number + create_user_id: Decimal | null + _count: Security_groupsCountAggregateOutputType | null + _avg: Security_groupsAvgAggregateOutputType | null + _sum: Security_groupsSumAggregateOutputType | null + _min: Security_groupsMinAggregateOutputType | null + _max: Security_groupsMaxAggregateOutputType | null + } + + type GetSecurity_groupsGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Security_groupsGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type security_groupsSelect = $Extensions.GetSelect<{ + group_id?: boolean + description?: boolean + challenge_group_ind?: boolean + create_user_id?: boolean + user_group_xref?: boolean | security_groups$user_group_xrefArgs + _count?: boolean | Security_groupsCountOutputTypeDefaultArgs + }, ExtArgs["result"]["security_groups"]> + + export type security_groupsSelectCreateManyAndReturn = $Extensions.GetSelect<{ + group_id?: boolean + description?: boolean + challenge_group_ind?: boolean + create_user_id?: boolean + }, ExtArgs["result"]["security_groups"]> + + export type security_groupsSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + group_id?: boolean + description?: boolean + challenge_group_ind?: boolean + create_user_id?: boolean + }, ExtArgs["result"]["security_groups"]> + + export type security_groupsSelectScalar = { + group_id?: boolean + description?: boolean + challenge_group_ind?: boolean + create_user_id?: boolean + } + + export type security_groupsOmit = $Extensions.GetOmit<"group_id" | "description" | "challenge_group_ind" | "create_user_id", ExtArgs["result"]["security_groups"]> + export type security_groupsInclude = { + user_group_xref?: boolean | security_groups$user_group_xrefArgs + _count?: boolean | Security_groupsCountOutputTypeDefaultArgs + } + export type security_groupsIncludeCreateManyAndReturn = {} + export type security_groupsIncludeUpdateManyAndReturn = {} + + export type $security_groupsPayload = { + name: "security_groups" + objects: { + user_group_xref: Prisma.$user_group_xrefPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + group_id: Prisma.Decimal + description: string + challenge_group_ind: number + create_user_id: Prisma.Decimal | null + }, ExtArgs["result"]["security_groups"]> + composites: {} + } + + type security_groupsGetPayload = $Result.GetResult + + type security_groupsCountArgs = + Omit & { + select?: Security_groupsCountAggregateInputType | true + } + + export interface security_groupsDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['security_groups'], meta: { name: 'security_groups' } } + /** + * Find zero or one Security_groups that matches the filter. + * @param {security_groupsFindUniqueArgs} args - Arguments to find a Security_groups + * @example + * // Get one Security_groups + * const security_groups = await prisma.security_groups.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Security_groups that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {security_groupsFindUniqueOrThrowArgs} args - Arguments to find a Security_groups + * @example + * // Get one Security_groups + * const security_groups = await prisma.security_groups.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Security_groups 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 {security_groupsFindFirstArgs} args - Arguments to find a Security_groups + * @example + * // Get one Security_groups + * const security_groups = await prisma.security_groups.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Security_groups 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 {security_groupsFindFirstOrThrowArgs} args - Arguments to find a Security_groups + * @example + * // Get one Security_groups + * const security_groups = await prisma.security_groups.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Security_groups 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 {security_groupsFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Security_groups + * const security_groups = await prisma.security_groups.findMany() + * + * // Get first 10 Security_groups + * const security_groups = await prisma.security_groups.findMany({ take: 10 }) + * + * // Only select the `group_id` + * const security_groupsWithGroup_idOnly = await prisma.security_groups.findMany({ select: { group_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Security_groups. + * @param {security_groupsCreateArgs} args - Arguments to create a Security_groups. + * @example + * // Create one Security_groups + * const Security_groups = await prisma.security_groups.create({ + * data: { + * // ... data to create a Security_groups + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Security_groups. + * @param {security_groupsCreateManyArgs} args - Arguments to create many Security_groups. + * @example + * // Create many Security_groups + * const security_groups = await prisma.security_groups.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Security_groups and returns the data saved in the database. + * @param {security_groupsCreateManyAndReturnArgs} args - Arguments to create many Security_groups. + * @example + * // Create many Security_groups + * const security_groups = await prisma.security_groups.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Security_groups and only return the `group_id` + * const security_groupsWithGroup_idOnly = await prisma.security_groups.createManyAndReturn({ + * select: { group_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Security_groups. + * @param {security_groupsDeleteArgs} args - Arguments to delete one Security_groups. + * @example + * // Delete one Security_groups + * const Security_groups = await prisma.security_groups.delete({ + * where: { + * // ... filter to delete one Security_groups + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Security_groups. + * @param {security_groupsUpdateArgs} args - Arguments to update one Security_groups. + * @example + * // Update one Security_groups + * const security_groups = await prisma.security_groups.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Security_groups. + * @param {security_groupsDeleteManyArgs} args - Arguments to filter Security_groups to delete. + * @example + * // Delete a few Security_groups + * const { count } = await prisma.security_groups.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Security_groups. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_groupsUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Security_groups + * const security_groups = await prisma.security_groups.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Security_groups and returns the data updated in the database. + * @param {security_groupsUpdateManyAndReturnArgs} args - Arguments to update many Security_groups. + * @example + * // Update many Security_groups + * const security_groups = await prisma.security_groups.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Security_groups and only return the `group_id` + * const security_groupsWithGroup_idOnly = await prisma.security_groups.updateManyAndReturn({ + * select: { group_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Security_groups. + * @param {security_groupsUpsertArgs} args - Arguments to update or create a Security_groups. + * @example + * // Update or create a Security_groups + * const security_groups = await prisma.security_groups.upsert({ + * create: { + * // ... data to create a Security_groups + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Security_groups we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__security_groupsClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Security_groups. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_groupsCountArgs} args - Arguments to filter Security_groups to count. + * @example + * // Count the number of Security_groups + * const count = await prisma.security_groups.count({ + * where: { + * // ... the filter for the Security_groups 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 Security_groups. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Security_groupsAggregateArgs} 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 Security_groups. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_groupsGroupByArgs} 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 security_groupsGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: security_groupsGroupByArgs['orderBy'] } + : { orderBy?: security_groupsGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSecurity_groupsGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the security_groups model + */ + readonly fields: security_groupsFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for security_groups. + * 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__security_groupsClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_group_xref = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 security_groups model + */ + interface security_groupsFieldRefs { + readonly group_id: FieldRef<"security_groups", 'Decimal'> + readonly description: FieldRef<"security_groups", 'String'> + readonly challenge_group_ind: FieldRef<"security_groups", 'Int'> + readonly create_user_id: FieldRef<"security_groups", 'Decimal'> + } + + + // Custom InputTypes + /** + * security_groups findUnique + */ + export type security_groupsFindUniqueArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * Filter, which security_groups to fetch. + */ + where: security_groupsWhereUniqueInput + } + + /** + * security_groups findUniqueOrThrow + */ + export type security_groupsFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * Filter, which security_groups to fetch. + */ + where: security_groupsWhereUniqueInput + } + + /** + * security_groups findFirst + */ + export type security_groupsFindFirstArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * Filter, which security_groups to fetch. + */ + where?: security_groupsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_groups to fetch. + */ + orderBy?: security_groupsOrderByWithRelationInput | security_groupsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for security_groups. + */ + cursor?: security_groupsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_groups 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` security_groups. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of security_groups. + */ + distinct?: Security_groupsScalarFieldEnum | Security_groupsScalarFieldEnum[] + } + + /** + * security_groups findFirstOrThrow + */ + export type security_groupsFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * Filter, which security_groups to fetch. + */ + where?: security_groupsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_groups to fetch. + */ + orderBy?: security_groupsOrderByWithRelationInput | security_groupsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for security_groups. + */ + cursor?: security_groupsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_groups 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` security_groups. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of security_groups. + */ + distinct?: Security_groupsScalarFieldEnum | Security_groupsScalarFieldEnum[] + } + + /** + * security_groups findMany + */ + export type security_groupsFindManyArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * Filter, which security_groups to fetch. + */ + where?: security_groupsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_groups to fetch. + */ + orderBy?: security_groupsOrderByWithRelationInput | security_groupsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing security_groups. + */ + cursor?: security_groupsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_groups 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` security_groups. + */ + skip?: number + distinct?: Security_groupsScalarFieldEnum | Security_groupsScalarFieldEnum[] + } + + /** + * security_groups create + */ + export type security_groupsCreateArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * The data needed to create a security_groups. + */ + data: XOR + } + + /** + * security_groups createMany + */ + export type security_groupsCreateManyArgs = { + /** + * The data used to create many security_groups. + */ + data: security_groupsCreateManyInput | security_groupsCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * security_groups createManyAndReturn + */ + export type security_groupsCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelectCreateManyAndReturn | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * The data used to create many security_groups. + */ + data: security_groupsCreateManyInput | security_groupsCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * security_groups update + */ + export type security_groupsUpdateArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * The data needed to update a security_groups. + */ + data: XOR + /** + * Choose, which security_groups to update. + */ + where: security_groupsWhereUniqueInput + } + + /** + * security_groups updateMany + */ + export type security_groupsUpdateManyArgs = { + /** + * The data used to update security_groups. + */ + data: XOR + /** + * Filter which security_groups to update + */ + where?: security_groupsWhereInput + /** + * Limit how many security_groups to update. + */ + limit?: number + } + + /** + * security_groups updateManyAndReturn + */ + export type security_groupsUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * The data used to update security_groups. + */ + data: XOR + /** + * Filter which security_groups to update + */ + where?: security_groupsWhereInput + /** + * Limit how many security_groups to update. + */ + limit?: number + } + + /** + * security_groups upsert + */ + export type security_groupsUpsertArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * The filter to search for the security_groups to update in case it exists. + */ + where: security_groupsWhereUniqueInput + /** + * In case the security_groups found by the `where` argument doesn't exist, create a new security_groups with this data. + */ + create: XOR + /** + * In case the security_groups was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * security_groups delete + */ + export type security_groupsDeleteArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + /** + * Filter which security_groups to delete. + */ + where: security_groupsWhereUniqueInput + } + + /** + * security_groups deleteMany + */ + export type security_groupsDeleteManyArgs = { + /** + * Filter which security_groups to delete + */ + where?: security_groupsWhereInput + /** + * Limit how many security_groups to delete. + */ + limit?: number + } + + /** + * security_groups.user_group_xref + */ + export type security_groups$user_group_xrefArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + where?: user_group_xrefWhereInput + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + cursor?: user_group_xrefWhereUniqueInput + take?: number + skip?: number + distinct?: User_group_xrefScalarFieldEnum | User_group_xrefScalarFieldEnum[] + } + + /** + * security_groups without action + */ + export type security_groupsDefaultArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + } + + + /** + * Model security_status_lu + */ + + export type AggregateSecurity_status_lu = { + _count: Security_status_luCountAggregateOutputType | null + _avg: Security_status_luAvgAggregateOutputType | null + _sum: Security_status_luSumAggregateOutputType | null + _min: Security_status_luMinAggregateOutputType | null + _max: Security_status_luMaxAggregateOutputType | null + } + + export type Security_status_luAvgAggregateOutputType = { + security_status_id: Decimal | null + } + + export type Security_status_luSumAggregateOutputType = { + security_status_id: Decimal | null + } + + export type Security_status_luMinAggregateOutputType = { + security_status_id: Decimal | null + status_desc: string | null + } + + export type Security_status_luMaxAggregateOutputType = { + security_status_id: Decimal | null + status_desc: string | null + } + + export type Security_status_luCountAggregateOutputType = { + security_status_id: number + status_desc: number + _all: number + } + + + export type Security_status_luAvgAggregateInputType = { + security_status_id?: true + } + + export type Security_status_luSumAggregateInputType = { + security_status_id?: true + } + + export type Security_status_luMinAggregateInputType = { + security_status_id?: true + status_desc?: true + } + + export type Security_status_luMaxAggregateInputType = { + security_status_id?: true + status_desc?: true + } + + export type Security_status_luCountAggregateInputType = { + security_status_id?: true + status_desc?: true + _all?: true + } + + export type Security_status_luAggregateArgs = { + /** + * Filter which security_status_lu to aggregate. + */ + where?: security_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_status_lus to fetch. + */ + orderBy?: security_status_luOrderByWithRelationInput | security_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: security_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_status_lus 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` security_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned security_status_lus + **/ + _count?: true | Security_status_luCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Security_status_luAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Security_status_luSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Security_status_luMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Security_status_luMaxAggregateInputType + } + + export type GetSecurity_status_luAggregateType = { + [P in keyof T & keyof AggregateSecurity_status_lu]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type security_status_luGroupByArgs = { + where?: security_status_luWhereInput + orderBy?: security_status_luOrderByWithAggregationInput | security_status_luOrderByWithAggregationInput[] + by: Security_status_luScalarFieldEnum[] | Security_status_luScalarFieldEnum + having?: security_status_luScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Security_status_luCountAggregateInputType | true + _avg?: Security_status_luAvgAggregateInputType + _sum?: Security_status_luSumAggregateInputType + _min?: Security_status_luMinAggregateInputType + _max?: Security_status_luMaxAggregateInputType + } + + export type Security_status_luGroupByOutputType = { + security_status_id: Decimal + status_desc: string | null + _count: Security_status_luCountAggregateOutputType | null + _avg: Security_status_luAvgAggregateOutputType | null + _sum: Security_status_luSumAggregateOutputType | null + _min: Security_status_luMinAggregateOutputType | null + _max: Security_status_luMaxAggregateOutputType | null + } + + type GetSecurity_status_luGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Security_status_luGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type security_status_luSelect = $Extensions.GetSelect<{ + security_status_id?: boolean + status_desc?: boolean + user_group_xref?: boolean | security_status_lu$user_group_xrefArgs + _count?: boolean | Security_status_luCountOutputTypeDefaultArgs + }, ExtArgs["result"]["security_status_lu"]> + + export type security_status_luSelectCreateManyAndReturn = $Extensions.GetSelect<{ + security_status_id?: boolean + status_desc?: boolean + }, ExtArgs["result"]["security_status_lu"]> + + export type security_status_luSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + security_status_id?: boolean + status_desc?: boolean + }, ExtArgs["result"]["security_status_lu"]> + + export type security_status_luSelectScalar = { + security_status_id?: boolean + status_desc?: boolean + } + + export type security_status_luOmit = $Extensions.GetOmit<"security_status_id" | "status_desc", ExtArgs["result"]["security_status_lu"]> + export type security_status_luInclude = { + user_group_xref?: boolean | security_status_lu$user_group_xrefArgs + _count?: boolean | Security_status_luCountOutputTypeDefaultArgs + } + export type security_status_luIncludeCreateManyAndReturn = {} + export type security_status_luIncludeUpdateManyAndReturn = {} + + export type $security_status_luPayload = { + name: "security_status_lu" + objects: { + user_group_xref: Prisma.$user_group_xrefPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + security_status_id: Prisma.Decimal + status_desc: string | null + }, ExtArgs["result"]["security_status_lu"]> + composites: {} + } + + type security_status_luGetPayload = $Result.GetResult + + type security_status_luCountArgs = + Omit & { + select?: Security_status_luCountAggregateInputType | true + } + + export interface security_status_luDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['security_status_lu'], meta: { name: 'security_status_lu' } } + /** + * Find zero or one Security_status_lu that matches the filter. + * @param {security_status_luFindUniqueArgs} args - Arguments to find a Security_status_lu + * @example + * // Get one Security_status_lu + * const security_status_lu = await prisma.security_status_lu.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Security_status_lu that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {security_status_luFindUniqueOrThrowArgs} args - Arguments to find a Security_status_lu + * @example + * // Get one Security_status_lu + * const security_status_lu = await prisma.security_status_lu.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Security_status_lu 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 {security_status_luFindFirstArgs} args - Arguments to find a Security_status_lu + * @example + * // Get one Security_status_lu + * const security_status_lu = await prisma.security_status_lu.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Security_status_lu 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 {security_status_luFindFirstOrThrowArgs} args - Arguments to find a Security_status_lu + * @example + * // Get one Security_status_lu + * const security_status_lu = await prisma.security_status_lu.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Security_status_lus 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 {security_status_luFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Security_status_lus + * const security_status_lus = await prisma.security_status_lu.findMany() + * + * // Get first 10 Security_status_lus + * const security_status_lus = await prisma.security_status_lu.findMany({ take: 10 }) + * + * // Only select the `security_status_id` + * const security_status_luWithSecurity_status_idOnly = await prisma.security_status_lu.findMany({ select: { security_status_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Security_status_lu. + * @param {security_status_luCreateArgs} args - Arguments to create a Security_status_lu. + * @example + * // Create one Security_status_lu + * const Security_status_lu = await prisma.security_status_lu.create({ + * data: { + * // ... data to create a Security_status_lu + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Security_status_lus. + * @param {security_status_luCreateManyArgs} args - Arguments to create many Security_status_lus. + * @example + * // Create many Security_status_lus + * const security_status_lu = await prisma.security_status_lu.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Security_status_lus and returns the data saved in the database. + * @param {security_status_luCreateManyAndReturnArgs} args - Arguments to create many Security_status_lus. + * @example + * // Create many Security_status_lus + * const security_status_lu = await prisma.security_status_lu.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Security_status_lus and only return the `security_status_id` + * const security_status_luWithSecurity_status_idOnly = await prisma.security_status_lu.createManyAndReturn({ + * select: { security_status_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Security_status_lu. + * @param {security_status_luDeleteArgs} args - Arguments to delete one Security_status_lu. + * @example + * // Delete one Security_status_lu + * const Security_status_lu = await prisma.security_status_lu.delete({ + * where: { + * // ... filter to delete one Security_status_lu + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Security_status_lu. + * @param {security_status_luUpdateArgs} args - Arguments to update one Security_status_lu. + * @example + * // Update one Security_status_lu + * const security_status_lu = await prisma.security_status_lu.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Security_status_lus. + * @param {security_status_luDeleteManyArgs} args - Arguments to filter Security_status_lus to delete. + * @example + * // Delete a few Security_status_lus + * const { count } = await prisma.security_status_lu.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Security_status_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_status_luUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Security_status_lus + * const security_status_lu = await prisma.security_status_lu.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Security_status_lus and returns the data updated in the database. + * @param {security_status_luUpdateManyAndReturnArgs} args - Arguments to update many Security_status_lus. + * @example + * // Update many Security_status_lus + * const security_status_lu = await prisma.security_status_lu.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Security_status_lus and only return the `security_status_id` + * const security_status_luWithSecurity_status_idOnly = await prisma.security_status_lu.updateManyAndReturn({ + * select: { security_status_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Security_status_lu. + * @param {security_status_luUpsertArgs} args - Arguments to update or create a Security_status_lu. + * @example + * // Update or create a Security_status_lu + * const security_status_lu = await prisma.security_status_lu.upsert({ + * create: { + * // ... data to create a Security_status_lu + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Security_status_lu we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__security_status_luClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Security_status_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_status_luCountArgs} args - Arguments to filter Security_status_lus to count. + * @example + * // Count the number of Security_status_lus + * const count = await prisma.security_status_lu.count({ + * where: { + * // ... the filter for the Security_status_lus 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 Security_status_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Security_status_luAggregateArgs} 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 Security_status_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_status_luGroupByArgs} 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 security_status_luGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: security_status_luGroupByArgs['orderBy'] } + : { orderBy?: security_status_luGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSecurity_status_luGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the security_status_lu model + */ + readonly fields: security_status_luFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for security_status_lu. + * 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__security_status_luClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_group_xref = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 security_status_lu model + */ + interface security_status_luFieldRefs { + readonly security_status_id: FieldRef<"security_status_lu", 'Decimal'> + readonly status_desc: FieldRef<"security_status_lu", 'String'> + } + + + // Custom InputTypes + /** + * security_status_lu findUnique + */ + export type security_status_luFindUniqueArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * Filter, which security_status_lu to fetch. + */ + where: security_status_luWhereUniqueInput + } + + /** + * security_status_lu findUniqueOrThrow + */ + export type security_status_luFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * Filter, which security_status_lu to fetch. + */ + where: security_status_luWhereUniqueInput + } + + /** + * security_status_lu findFirst + */ + export type security_status_luFindFirstArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * Filter, which security_status_lu to fetch. + */ + where?: security_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_status_lus to fetch. + */ + orderBy?: security_status_luOrderByWithRelationInput | security_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for security_status_lus. + */ + cursor?: security_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_status_lus 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` security_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of security_status_lus. + */ + distinct?: Security_status_luScalarFieldEnum | Security_status_luScalarFieldEnum[] + } + + /** + * security_status_lu findFirstOrThrow + */ + export type security_status_luFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * Filter, which security_status_lu to fetch. + */ + where?: security_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_status_lus to fetch. + */ + orderBy?: security_status_luOrderByWithRelationInput | security_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for security_status_lus. + */ + cursor?: security_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_status_lus 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` security_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of security_status_lus. + */ + distinct?: Security_status_luScalarFieldEnum | Security_status_luScalarFieldEnum[] + } + + /** + * security_status_lu findMany + */ + export type security_status_luFindManyArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * Filter, which security_status_lus to fetch. + */ + where?: security_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_status_lus to fetch. + */ + orderBy?: security_status_luOrderByWithRelationInput | security_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing security_status_lus. + */ + cursor?: security_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_status_lus 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` security_status_lus. + */ + skip?: number + distinct?: Security_status_luScalarFieldEnum | Security_status_luScalarFieldEnum[] + } + + /** + * security_status_lu create + */ + export type security_status_luCreateArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * The data needed to create a security_status_lu. + */ + data: XOR + } + + /** + * security_status_lu createMany + */ + export type security_status_luCreateManyArgs = { + /** + * The data used to create many security_status_lus. + */ + data: security_status_luCreateManyInput | security_status_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * security_status_lu createManyAndReturn + */ + export type security_status_luCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelectCreateManyAndReturn | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * The data used to create many security_status_lus. + */ + data: security_status_luCreateManyInput | security_status_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * security_status_lu update + */ + export type security_status_luUpdateArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * The data needed to update a security_status_lu. + */ + data: XOR + /** + * Choose, which security_status_lu to update. + */ + where: security_status_luWhereUniqueInput + } + + /** + * security_status_lu updateMany + */ + export type security_status_luUpdateManyArgs = { + /** + * The data used to update security_status_lus. + */ + data: XOR + /** + * Filter which security_status_lus to update + */ + where?: security_status_luWhereInput + /** + * Limit how many security_status_lus to update. + */ + limit?: number + } + + /** + * security_status_lu updateManyAndReturn + */ + export type security_status_luUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * The data used to update security_status_lus. + */ + data: XOR + /** + * Filter which security_status_lus to update + */ + where?: security_status_luWhereInput + /** + * Limit how many security_status_lus to update. + */ + limit?: number + } + + /** + * security_status_lu upsert + */ + export type security_status_luUpsertArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * The filter to search for the security_status_lu to update in case it exists. + */ + where: security_status_luWhereUniqueInput + /** + * In case the security_status_lu found by the `where` argument doesn't exist, create a new security_status_lu with this data. + */ + create: XOR + /** + * In case the security_status_lu was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * security_status_lu delete + */ + export type security_status_luDeleteArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + /** + * Filter which security_status_lu to delete. + */ + where: security_status_luWhereUniqueInput + } + + /** + * security_status_lu deleteMany + */ + export type security_status_luDeleteManyArgs = { + /** + * Filter which security_status_lus to delete + */ + where?: security_status_luWhereInput + /** + * Limit how many security_status_lus to delete. + */ + limit?: number + } + + /** + * security_status_lu.user_group_xref + */ + export type security_status_lu$user_group_xrefArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + where?: user_group_xrefWhereInput + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + cursor?: user_group_xrefWhereUniqueInput + take?: number + skip?: number + distinct?: User_group_xrefScalarFieldEnum | User_group_xrefScalarFieldEnum[] + } + + /** + * security_status_lu without action + */ + export type security_status_luDefaultArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + } + + + /** + * Model security_user + */ + + export type AggregateSecurity_user = { + _count: Security_userCountAggregateOutputType | null + _avg: Security_userAvgAggregateOutputType | null + _sum: Security_userSumAggregateOutputType | null + _min: Security_userMinAggregateOutputType | null + _max: Security_userMaxAggregateOutputType | null + } + + export type Security_userAvgAggregateOutputType = { + login_id: Decimal | null + create_user_id: Decimal | null + } + + export type Security_userSumAggregateOutputType = { + login_id: Decimal | null + create_user_id: Decimal | null + } + + export type Security_userMinAggregateOutputType = { + login_id: Decimal | null + user_id: string | null + password: string | null + create_user_id: Decimal | null + modify_date: Date | null + } + + export type Security_userMaxAggregateOutputType = { + login_id: Decimal | null + user_id: string | null + password: string | null + create_user_id: Decimal | null + modify_date: Date | null + } + + export type Security_userCountAggregateOutputType = { + login_id: number + user_id: number + password: number + create_user_id: number + modify_date: number + _all: number + } + + + export type Security_userAvgAggregateInputType = { + login_id?: true + create_user_id?: true + } + + export type Security_userSumAggregateInputType = { + login_id?: true + create_user_id?: true + } + + export type Security_userMinAggregateInputType = { + login_id?: true + user_id?: true + password?: true + create_user_id?: true + modify_date?: true + } + + export type Security_userMaxAggregateInputType = { + login_id?: true + user_id?: true + password?: true + create_user_id?: true + modify_date?: true + } + + export type Security_userCountAggregateInputType = { + login_id?: true + user_id?: true + password?: true + create_user_id?: true + modify_date?: true + _all?: true + } + + export type Security_userAggregateArgs = { + /** + * Filter which security_user to aggregate. + */ + where?: security_userWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_users to fetch. + */ + orderBy?: security_userOrderByWithRelationInput | security_userOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: security_userWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_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` security_users. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned security_users + **/ + _count?: true | Security_userCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Security_userAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Security_userSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Security_userMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Security_userMaxAggregateInputType + } + + export type GetSecurity_userAggregateType = { + [P in keyof T & keyof AggregateSecurity_user]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type security_userGroupByArgs = { + where?: security_userWhereInput + orderBy?: security_userOrderByWithAggregationInput | security_userOrderByWithAggregationInput[] + by: Security_userScalarFieldEnum[] | Security_userScalarFieldEnum + having?: security_userScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Security_userCountAggregateInputType | true + _avg?: Security_userAvgAggregateInputType + _sum?: Security_userSumAggregateInputType + _min?: Security_userMinAggregateInputType + _max?: Security_userMaxAggregateInputType + } + + export type Security_userGroupByOutputType = { + login_id: Decimal + user_id: string + password: string + create_user_id: Decimal | null + modify_date: Date | null + _count: Security_userCountAggregateOutputType | null + _avg: Security_userAvgAggregateOutputType | null + _sum: Security_userSumAggregateOutputType | null + _min: Security_userMinAggregateOutputType | null + _max: Security_userMaxAggregateOutputType | null + } + + type GetSecurity_userGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Security_userGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type security_userSelect = $Extensions.GetSelect<{ + login_id?: boolean + user_id?: boolean + password?: boolean + create_user_id?: boolean + modify_date?: boolean + user_group_xref?: boolean | security_user$user_group_xrefArgs + _count?: boolean | Security_userCountOutputTypeDefaultArgs + }, ExtArgs["result"]["security_user"]> + + export type security_userSelectCreateManyAndReturn = $Extensions.GetSelect<{ + login_id?: boolean + user_id?: boolean + password?: boolean + create_user_id?: boolean + modify_date?: boolean + }, ExtArgs["result"]["security_user"]> + + export type security_userSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + login_id?: boolean + user_id?: boolean + password?: boolean + create_user_id?: boolean + modify_date?: boolean + }, ExtArgs["result"]["security_user"]> + + export type security_userSelectScalar = { + login_id?: boolean + user_id?: boolean + password?: boolean + create_user_id?: boolean + modify_date?: boolean + } + + export type security_userOmit = $Extensions.GetOmit<"login_id" | "user_id" | "password" | "create_user_id" | "modify_date", ExtArgs["result"]["security_user"]> + export type security_userInclude = { + user_group_xref?: boolean | security_user$user_group_xrefArgs + _count?: boolean | Security_userCountOutputTypeDefaultArgs + } + export type security_userIncludeCreateManyAndReturn = {} + export type security_userIncludeUpdateManyAndReturn = {} + + export type $security_userPayload = { + name: "security_user" + objects: { + user_group_xref: Prisma.$user_group_xrefPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + login_id: Prisma.Decimal + user_id: string + password: string + create_user_id: Prisma.Decimal | null + modify_date: Date | null + }, ExtArgs["result"]["security_user"]> + composites: {} + } + + type security_userGetPayload = $Result.GetResult + + type security_userCountArgs = + Omit & { + select?: Security_userCountAggregateInputType | true + } + + export interface security_userDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['security_user'], meta: { name: 'security_user' } } + /** + * Find zero or one Security_user that matches the filter. + * @param {security_userFindUniqueArgs} args - Arguments to find a Security_user + * @example + * // Get one Security_user + * const security_user = await prisma.security_user.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Security_user that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {security_userFindUniqueOrThrowArgs} args - Arguments to find a Security_user + * @example + * // Get one Security_user + * const security_user = await prisma.security_user.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Security_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 {security_userFindFirstArgs} args - Arguments to find a Security_user + * @example + * // Get one Security_user + * const security_user = await prisma.security_user.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Security_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 {security_userFindFirstOrThrowArgs} args - Arguments to find a Security_user + * @example + * // Get one Security_user + * const security_user = await prisma.security_user.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Security_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 {security_userFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Security_users + * const security_users = await prisma.security_user.findMany() + * + * // Get first 10 Security_users + * const security_users = await prisma.security_user.findMany({ take: 10 }) + * + * // Only select the `login_id` + * const security_userWithLogin_idOnly = await prisma.security_user.findMany({ select: { login_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Security_user. + * @param {security_userCreateArgs} args - Arguments to create a Security_user. + * @example + * // Create one Security_user + * const Security_user = await prisma.security_user.create({ + * data: { + * // ... data to create a Security_user + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Security_users. + * @param {security_userCreateManyArgs} args - Arguments to create many Security_users. + * @example + * // Create many Security_users + * const security_user = await prisma.security_user.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Security_users and returns the data saved in the database. + * @param {security_userCreateManyAndReturnArgs} args - Arguments to create many Security_users. + * @example + * // Create many Security_users + * const security_user = await prisma.security_user.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Security_users and only return the `login_id` + * const security_userWithLogin_idOnly = await prisma.security_user.createManyAndReturn({ + * select: { login_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Security_user. + * @param {security_userDeleteArgs} args - Arguments to delete one Security_user. + * @example + * // Delete one Security_user + * const Security_user = await prisma.security_user.delete({ + * where: { + * // ... filter to delete one Security_user + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Security_user. + * @param {security_userUpdateArgs} args - Arguments to update one Security_user. + * @example + * // Update one Security_user + * const security_user = await prisma.security_user.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Security_users. + * @param {security_userDeleteManyArgs} args - Arguments to filter Security_users to delete. + * @example + * // Delete a few Security_users + * const { count } = await prisma.security_user.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Security_users. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_userUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Security_users + * const security_user = await prisma.security_user.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Security_users and returns the data updated in the database. + * @param {security_userUpdateManyAndReturnArgs} args - Arguments to update many Security_users. + * @example + * // Update many Security_users + * const security_user = await prisma.security_user.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Security_users and only return the `login_id` + * const security_userWithLogin_idOnly = await prisma.security_user.updateManyAndReturn({ + * select: { login_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Security_user. + * @param {security_userUpsertArgs} args - Arguments to update or create a Security_user. + * @example + * // Update or create a Security_user + * const security_user = await prisma.security_user.upsert({ + * create: { + * // ... data to create a Security_user + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Security_user we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__security_userClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Security_users. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_userCountArgs} args - Arguments to filter Security_users to count. + * @example + * // Count the number of Security_users + * const count = await prisma.security_user.count({ + * where: { + * // ... the filter for the Security_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 Security_user. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Security_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 Security_user. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {security_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 security_userGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: security_userGroupByArgs['orderBy'] } + : { orderBy?: security_userGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSecurity_userGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the security_user model + */ + readonly fields: security_userFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for security_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__security_userClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_group_xref = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 security_user model + */ + interface security_userFieldRefs { + readonly login_id: FieldRef<"security_user", 'Decimal'> + readonly user_id: FieldRef<"security_user", 'String'> + readonly password: FieldRef<"security_user", 'String'> + readonly create_user_id: FieldRef<"security_user", 'Decimal'> + readonly modify_date: FieldRef<"security_user", 'DateTime'> + } + + + // Custom InputTypes + /** + * security_user findUnique + */ + export type security_userFindUniqueArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * Filter, which security_user to fetch. + */ + where: security_userWhereUniqueInput + } + + /** + * security_user findUniqueOrThrow + */ + export type security_userFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * Filter, which security_user to fetch. + */ + where: security_userWhereUniqueInput + } + + /** + * security_user findFirst + */ + export type security_userFindFirstArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * Filter, which security_user to fetch. + */ + where?: security_userWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_users to fetch. + */ + orderBy?: security_userOrderByWithRelationInput | security_userOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for security_users. + */ + cursor?: security_userWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_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` security_users. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of security_users. + */ + distinct?: Security_userScalarFieldEnum | Security_userScalarFieldEnum[] + } + + /** + * security_user findFirstOrThrow + */ + export type security_userFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * Filter, which security_user to fetch. + */ + where?: security_userWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_users to fetch. + */ + orderBy?: security_userOrderByWithRelationInput | security_userOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for security_users. + */ + cursor?: security_userWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_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` security_users. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of security_users. + */ + distinct?: Security_userScalarFieldEnum | Security_userScalarFieldEnum[] + } + + /** + * security_user findMany + */ + export type security_userFindManyArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * Filter, which security_users to fetch. + */ + where?: security_userWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of security_users to fetch. + */ + orderBy?: security_userOrderByWithRelationInput | security_userOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing security_users. + */ + cursor?: security_userWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` security_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` security_users. + */ + skip?: number + distinct?: Security_userScalarFieldEnum | Security_userScalarFieldEnum[] + } + + /** + * security_user create + */ + export type security_userCreateArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * The data needed to create a security_user. + */ + data: XOR + } + + /** + * security_user createMany + */ + export type security_userCreateManyArgs = { + /** + * The data used to create many security_users. + */ + data: security_userCreateManyInput | security_userCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * security_user createManyAndReturn + */ + export type security_userCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelectCreateManyAndReturn | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * The data used to create many security_users. + */ + data: security_userCreateManyInput | security_userCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * security_user update + */ + export type security_userUpdateArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * The data needed to update a security_user. + */ + data: XOR + /** + * Choose, which security_user to update. + */ + where: security_userWhereUniqueInput + } + + /** + * security_user updateMany + */ + export type security_userUpdateManyArgs = { + /** + * The data used to update security_users. + */ + data: XOR + /** + * Filter which security_users to update + */ + where?: security_userWhereInput + /** + * Limit how many security_users to update. + */ + limit?: number + } + + /** + * security_user updateManyAndReturn + */ + export type security_userUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * The data used to update security_users. + */ + data: XOR + /** + * Filter which security_users to update + */ + where?: security_userWhereInput + /** + * Limit how many security_users to update. + */ + limit?: number + } + + /** + * security_user upsert + */ + export type security_userUpsertArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * The filter to search for the security_user to update in case it exists. + */ + where: security_userWhereUniqueInput + /** + * In case the security_user found by the `where` argument doesn't exist, create a new security_user with this data. + */ + create: XOR + /** + * In case the security_user was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * security_user delete + */ + export type security_userDeleteArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + /** + * Filter which security_user to delete. + */ + where: security_userWhereUniqueInput + } + + /** + * security_user deleteMany + */ + export type security_userDeleteManyArgs = { + /** + * Filter which security_users to delete + */ + where?: security_userWhereInput + /** + * Limit how many security_users to delete. + */ + limit?: number + } + + /** + * security_user.user_group_xref + */ + export type security_user$user_group_xrefArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + where?: user_group_xrefWhereInput + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + cursor?: user_group_xrefWhereUniqueInput + take?: number + skip?: number + distinct?: User_group_xrefScalarFieldEnum | User_group_xrefScalarFieldEnum[] + } + + /** + * security_user without action + */ + export type security_userDefaultArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + } + + + /** + * Model social_login_provider + */ + + export type AggregateSocial_login_provider = { + _count: Social_login_providerCountAggregateOutputType | null + _avg: Social_login_providerAvgAggregateOutputType | null + _sum: Social_login_providerSumAggregateOutputType | null + _min: Social_login_providerMinAggregateOutputType | null + _max: Social_login_providerMaxAggregateOutputType | null + } + + export type Social_login_providerAvgAggregateOutputType = { + social_login_provider_id: Decimal | null + } + + export type Social_login_providerSumAggregateOutputType = { + social_login_provider_id: Decimal | null + } + + export type Social_login_providerMinAggregateOutputType = { + social_login_provider_id: Decimal | null + name: string | null + } + + export type Social_login_providerMaxAggregateOutputType = { + social_login_provider_id: Decimal | null + name: string | null + } + + export type Social_login_providerCountAggregateOutputType = { + social_login_provider_id: number + name: number + _all: number + } + + + export type Social_login_providerAvgAggregateInputType = { + social_login_provider_id?: true + } + + export type Social_login_providerSumAggregateInputType = { + social_login_provider_id?: true + } + + export type Social_login_providerMinAggregateInputType = { + social_login_provider_id?: true + name?: true + } + + export type Social_login_providerMaxAggregateInputType = { + social_login_provider_id?: true + name?: true + } + + export type Social_login_providerCountAggregateInputType = { + social_login_provider_id?: true + name?: true + _all?: true + } + + export type Social_login_providerAggregateArgs = { + /** + * Filter which social_login_provider to aggregate. + */ + where?: social_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of social_login_providers to fetch. + */ + orderBy?: social_login_providerOrderByWithRelationInput | social_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: social_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` social_login_providers 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` social_login_providers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned social_login_providers + **/ + _count?: true | Social_login_providerCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Social_login_providerAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Social_login_providerSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Social_login_providerMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Social_login_providerMaxAggregateInputType + } + + export type GetSocial_login_providerAggregateType = { + [P in keyof T & keyof AggregateSocial_login_provider]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type social_login_providerGroupByArgs = { + where?: social_login_providerWhereInput + orderBy?: social_login_providerOrderByWithAggregationInput | social_login_providerOrderByWithAggregationInput[] + by: Social_login_providerScalarFieldEnum[] | Social_login_providerScalarFieldEnum + having?: social_login_providerScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Social_login_providerCountAggregateInputType | true + _avg?: Social_login_providerAvgAggregateInputType + _sum?: Social_login_providerSumAggregateInputType + _min?: Social_login_providerMinAggregateInputType + _max?: Social_login_providerMaxAggregateInputType + } + + export type Social_login_providerGroupByOutputType = { + social_login_provider_id: Decimal + name: string | null + _count: Social_login_providerCountAggregateOutputType | null + _avg: Social_login_providerAvgAggregateOutputType | null + _sum: Social_login_providerSumAggregateOutputType | null + _min: Social_login_providerMinAggregateOutputType | null + _max: Social_login_providerMaxAggregateOutputType | null + } + + type GetSocial_login_providerGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Social_login_providerGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type social_login_providerSelect = $Extensions.GetSelect<{ + social_login_provider_id?: boolean + name?: boolean + user_social_login?: boolean | social_login_provider$user_social_loginArgs + _count?: boolean | Social_login_providerCountOutputTypeDefaultArgs + }, ExtArgs["result"]["social_login_provider"]> + + export type social_login_providerSelectCreateManyAndReturn = $Extensions.GetSelect<{ + social_login_provider_id?: boolean + name?: boolean + }, ExtArgs["result"]["social_login_provider"]> + + export type social_login_providerSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + social_login_provider_id?: boolean + name?: boolean + }, ExtArgs["result"]["social_login_provider"]> + + export type social_login_providerSelectScalar = { + social_login_provider_id?: boolean + name?: boolean + } + + export type social_login_providerOmit = $Extensions.GetOmit<"social_login_provider_id" | "name", ExtArgs["result"]["social_login_provider"]> + export type social_login_providerInclude = { + user_social_login?: boolean | social_login_provider$user_social_loginArgs + _count?: boolean | Social_login_providerCountOutputTypeDefaultArgs + } + export type social_login_providerIncludeCreateManyAndReturn = {} + export type social_login_providerIncludeUpdateManyAndReturn = {} + + export type $social_login_providerPayload = { + name: "social_login_provider" + objects: { + user_social_login: Prisma.$user_social_loginPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + social_login_provider_id: Prisma.Decimal + name: string | null + }, ExtArgs["result"]["social_login_provider"]> + composites: {} + } + + type social_login_providerGetPayload = $Result.GetResult + + type social_login_providerCountArgs = + Omit & { + select?: Social_login_providerCountAggregateInputType | true + } + + export interface social_login_providerDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['social_login_provider'], meta: { name: 'social_login_provider' } } + /** + * Find zero or one Social_login_provider that matches the filter. + * @param {social_login_providerFindUniqueArgs} args - Arguments to find a Social_login_provider + * @example + * // Get one Social_login_provider + * const social_login_provider = await prisma.social_login_provider.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Social_login_provider that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {social_login_providerFindUniqueOrThrowArgs} args - Arguments to find a Social_login_provider + * @example + * // Get one Social_login_provider + * const social_login_provider = await prisma.social_login_provider.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Social_login_provider 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 {social_login_providerFindFirstArgs} args - Arguments to find a Social_login_provider + * @example + * // Get one Social_login_provider + * const social_login_provider = await prisma.social_login_provider.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Social_login_provider 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 {social_login_providerFindFirstOrThrowArgs} args - Arguments to find a Social_login_provider + * @example + * // Get one Social_login_provider + * const social_login_provider = await prisma.social_login_provider.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Social_login_providers 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 {social_login_providerFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Social_login_providers + * const social_login_providers = await prisma.social_login_provider.findMany() + * + * // Get first 10 Social_login_providers + * const social_login_providers = await prisma.social_login_provider.findMany({ take: 10 }) + * + * // Only select the `social_login_provider_id` + * const social_login_providerWithSocial_login_provider_idOnly = await prisma.social_login_provider.findMany({ select: { social_login_provider_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Social_login_provider. + * @param {social_login_providerCreateArgs} args - Arguments to create a Social_login_provider. + * @example + * // Create one Social_login_provider + * const Social_login_provider = await prisma.social_login_provider.create({ + * data: { + * // ... data to create a Social_login_provider + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Social_login_providers. + * @param {social_login_providerCreateManyArgs} args - Arguments to create many Social_login_providers. + * @example + * // Create many Social_login_providers + * const social_login_provider = await prisma.social_login_provider.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Social_login_providers and returns the data saved in the database. + * @param {social_login_providerCreateManyAndReturnArgs} args - Arguments to create many Social_login_providers. + * @example + * // Create many Social_login_providers + * const social_login_provider = await prisma.social_login_provider.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Social_login_providers and only return the `social_login_provider_id` + * const social_login_providerWithSocial_login_provider_idOnly = await prisma.social_login_provider.createManyAndReturn({ + * select: { social_login_provider_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Social_login_provider. + * @param {social_login_providerDeleteArgs} args - Arguments to delete one Social_login_provider. + * @example + * // Delete one Social_login_provider + * const Social_login_provider = await prisma.social_login_provider.delete({ + * where: { + * // ... filter to delete one Social_login_provider + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Social_login_provider. + * @param {social_login_providerUpdateArgs} args - Arguments to update one Social_login_provider. + * @example + * // Update one Social_login_provider + * const social_login_provider = await prisma.social_login_provider.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Social_login_providers. + * @param {social_login_providerDeleteManyArgs} args - Arguments to filter Social_login_providers to delete. + * @example + * // Delete a few Social_login_providers + * const { count } = await prisma.social_login_provider.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Social_login_providers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {social_login_providerUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Social_login_providers + * const social_login_provider = await prisma.social_login_provider.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Social_login_providers and returns the data updated in the database. + * @param {social_login_providerUpdateManyAndReturnArgs} args - Arguments to update many Social_login_providers. + * @example + * // Update many Social_login_providers + * const social_login_provider = await prisma.social_login_provider.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Social_login_providers and only return the `social_login_provider_id` + * const social_login_providerWithSocial_login_provider_idOnly = await prisma.social_login_provider.updateManyAndReturn({ + * select: { social_login_provider_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Social_login_provider. + * @param {social_login_providerUpsertArgs} args - Arguments to update or create a Social_login_provider. + * @example + * // Update or create a Social_login_provider + * const social_login_provider = await prisma.social_login_provider.upsert({ + * create: { + * // ... data to create a Social_login_provider + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Social_login_provider we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__social_login_providerClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Social_login_providers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {social_login_providerCountArgs} args - Arguments to filter Social_login_providers to count. + * @example + * // Count the number of Social_login_providers + * const count = await prisma.social_login_provider.count({ + * where: { + * // ... the filter for the Social_login_providers 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 Social_login_provider. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Social_login_providerAggregateArgs} 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 Social_login_provider. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {social_login_providerGroupByArgs} 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 social_login_providerGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: social_login_providerGroupByArgs['orderBy'] } + : { orderBy?: social_login_providerGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSocial_login_providerGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the social_login_provider model + */ + readonly fields: social_login_providerFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for social_login_provider. + * 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__social_login_providerClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_social_login = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 social_login_provider model + */ + interface social_login_providerFieldRefs { + readonly social_login_provider_id: FieldRef<"social_login_provider", 'Decimal'> + readonly name: FieldRef<"social_login_provider", 'String'> + } + + + // Custom InputTypes + /** + * social_login_provider findUnique + */ + export type social_login_providerFindUniqueArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * Filter, which social_login_provider to fetch. + */ + where: social_login_providerWhereUniqueInput + } + + /** + * social_login_provider findUniqueOrThrow + */ + export type social_login_providerFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * Filter, which social_login_provider to fetch. + */ + where: social_login_providerWhereUniqueInput + } + + /** + * social_login_provider findFirst + */ + export type social_login_providerFindFirstArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * Filter, which social_login_provider to fetch. + */ + where?: social_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of social_login_providers to fetch. + */ + orderBy?: social_login_providerOrderByWithRelationInput | social_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for social_login_providers. + */ + cursor?: social_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` social_login_providers 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` social_login_providers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of social_login_providers. + */ + distinct?: Social_login_providerScalarFieldEnum | Social_login_providerScalarFieldEnum[] + } + + /** + * social_login_provider findFirstOrThrow + */ + export type social_login_providerFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * Filter, which social_login_provider to fetch. + */ + where?: social_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of social_login_providers to fetch. + */ + orderBy?: social_login_providerOrderByWithRelationInput | social_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for social_login_providers. + */ + cursor?: social_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` social_login_providers 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` social_login_providers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of social_login_providers. + */ + distinct?: Social_login_providerScalarFieldEnum | Social_login_providerScalarFieldEnum[] + } + + /** + * social_login_provider findMany + */ + export type social_login_providerFindManyArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * Filter, which social_login_providers to fetch. + */ + where?: social_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of social_login_providers to fetch. + */ + orderBy?: social_login_providerOrderByWithRelationInput | social_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing social_login_providers. + */ + cursor?: social_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` social_login_providers 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` social_login_providers. + */ + skip?: number + distinct?: Social_login_providerScalarFieldEnum | Social_login_providerScalarFieldEnum[] + } + + /** + * social_login_provider create + */ + export type social_login_providerCreateArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * The data needed to create a social_login_provider. + */ + data: XOR + } + + /** + * social_login_provider createMany + */ + export type social_login_providerCreateManyArgs = { + /** + * The data used to create many social_login_providers. + */ + data: social_login_providerCreateManyInput | social_login_providerCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * social_login_provider createManyAndReturn + */ + export type social_login_providerCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelectCreateManyAndReturn | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * The data used to create many social_login_providers. + */ + data: social_login_providerCreateManyInput | social_login_providerCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * social_login_provider update + */ + export type social_login_providerUpdateArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * The data needed to update a social_login_provider. + */ + data: XOR + /** + * Choose, which social_login_provider to update. + */ + where: social_login_providerWhereUniqueInput + } + + /** + * social_login_provider updateMany + */ + export type social_login_providerUpdateManyArgs = { + /** + * The data used to update social_login_providers. + */ + data: XOR + /** + * Filter which social_login_providers to update + */ + where?: social_login_providerWhereInput + /** + * Limit how many social_login_providers to update. + */ + limit?: number + } + + /** + * social_login_provider updateManyAndReturn + */ + export type social_login_providerUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * The data used to update social_login_providers. + */ + data: XOR + /** + * Filter which social_login_providers to update + */ + where?: social_login_providerWhereInput + /** + * Limit how many social_login_providers to update. + */ + limit?: number + } + + /** + * social_login_provider upsert + */ + export type social_login_providerUpsertArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * The filter to search for the social_login_provider to update in case it exists. + */ + where: social_login_providerWhereUniqueInput + /** + * In case the social_login_provider found by the `where` argument doesn't exist, create a new social_login_provider with this data. + */ + create: XOR + /** + * In case the social_login_provider was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * social_login_provider delete + */ + export type social_login_providerDeleteArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + /** + * Filter which social_login_provider to delete. + */ + where: social_login_providerWhereUniqueInput + } + + /** + * social_login_provider deleteMany + */ + export type social_login_providerDeleteManyArgs = { + /** + * Filter which social_login_providers to delete + */ + where?: social_login_providerWhereInput + /** + * Limit how many social_login_providers to delete. + */ + limit?: number + } + + /** + * social_login_provider.user_social_login + */ + export type social_login_provider$user_social_loginArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + where?: user_social_loginWhereInput + orderBy?: user_social_loginOrderByWithRelationInput | user_social_loginOrderByWithRelationInput[] + cursor?: user_social_loginWhereUniqueInput + take?: number + skip?: number + distinct?: User_social_loginScalarFieldEnum | User_social_loginScalarFieldEnum[] + } + + /** + * social_login_provider without action + */ + export type social_login_providerDefaultArgs = { + /** + * Select specific fields to fetch from the social_login_provider + */ + select?: social_login_providerSelect | null + /** + * Omit specific fields from the social_login_provider + */ + omit?: social_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: social_login_providerInclude | null + } + + + /** + * Model sso_login_provider + */ + + export type AggregateSso_login_provider = { + _count: Sso_login_providerCountAggregateOutputType | null + _avg: Sso_login_providerAvgAggregateOutputType | null + _sum: Sso_login_providerSumAggregateOutputType | null + _min: Sso_login_providerMinAggregateOutputType | null + _max: Sso_login_providerMaxAggregateOutputType | null + } + + export type Sso_login_providerAvgAggregateOutputType = { + sso_login_provider_id: Decimal | null + } + + export type Sso_login_providerSumAggregateOutputType = { + sso_login_provider_id: Decimal | null + } + + export type Sso_login_providerMinAggregateOutputType = { + sso_login_provider_id: Decimal | null + name: string | null + type: string | null + identify_email_enabled: boolean | null + identify_handle_enabled: boolean | null + } + + export type Sso_login_providerMaxAggregateOutputType = { + sso_login_provider_id: Decimal | null + name: string | null + type: string | null + identify_email_enabled: boolean | null + identify_handle_enabled: boolean | null + } + + export type Sso_login_providerCountAggregateOutputType = { + sso_login_provider_id: number + name: number + type: number + identify_email_enabled: number + identify_handle_enabled: number + _all: number + } + + + export type Sso_login_providerAvgAggregateInputType = { + sso_login_provider_id?: true + } + + export type Sso_login_providerSumAggregateInputType = { + sso_login_provider_id?: true + } + + export type Sso_login_providerMinAggregateInputType = { + sso_login_provider_id?: true + name?: true + type?: true + identify_email_enabled?: true + identify_handle_enabled?: true + } + + export type Sso_login_providerMaxAggregateInputType = { + sso_login_provider_id?: true + name?: true + type?: true + identify_email_enabled?: true + identify_handle_enabled?: true + } + + export type Sso_login_providerCountAggregateInputType = { + sso_login_provider_id?: true + name?: true + type?: true + identify_email_enabled?: true + identify_handle_enabled?: true + _all?: true + } + + export type Sso_login_providerAggregateArgs = { + /** + * Filter which sso_login_provider to aggregate. + */ + where?: sso_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of sso_login_providers to fetch. + */ + orderBy?: sso_login_providerOrderByWithRelationInput | sso_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: sso_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` sso_login_providers 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` sso_login_providers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned sso_login_providers + **/ + _count?: true | Sso_login_providerCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: Sso_login_providerAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: Sso_login_providerSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: Sso_login_providerMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: Sso_login_providerMaxAggregateInputType + } + + export type GetSso_login_providerAggregateType = { + [P in keyof T & keyof AggregateSso_login_provider]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type sso_login_providerGroupByArgs = { + where?: sso_login_providerWhereInput + orderBy?: sso_login_providerOrderByWithAggregationInput | sso_login_providerOrderByWithAggregationInput[] + by: Sso_login_providerScalarFieldEnum[] | Sso_login_providerScalarFieldEnum + having?: sso_login_providerScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: Sso_login_providerCountAggregateInputType | true + _avg?: Sso_login_providerAvgAggregateInputType + _sum?: Sso_login_providerSumAggregateInputType + _min?: Sso_login_providerMinAggregateInputType + _max?: Sso_login_providerMaxAggregateInputType + } + + export type Sso_login_providerGroupByOutputType = { + sso_login_provider_id: Decimal + name: string | null + type: string + identify_email_enabled: boolean + identify_handle_enabled: boolean + _count: Sso_login_providerCountAggregateOutputType | null + _avg: Sso_login_providerAvgAggregateOutputType | null + _sum: Sso_login_providerSumAggregateOutputType | null + _min: Sso_login_providerMinAggregateOutputType | null + _max: Sso_login_providerMaxAggregateOutputType | null + } + + type GetSso_login_providerGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof Sso_login_providerGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type sso_login_providerSelect = $Extensions.GetSelect<{ + sso_login_provider_id?: boolean + name?: boolean + type?: boolean + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + user_sso_login?: boolean | sso_login_provider$user_sso_loginArgs + _count?: boolean | Sso_login_providerCountOutputTypeDefaultArgs + }, ExtArgs["result"]["sso_login_provider"]> + + export type sso_login_providerSelectCreateManyAndReturn = $Extensions.GetSelect<{ + sso_login_provider_id?: boolean + name?: boolean + type?: boolean + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + }, ExtArgs["result"]["sso_login_provider"]> + + export type sso_login_providerSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + sso_login_provider_id?: boolean + name?: boolean + type?: boolean + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + }, ExtArgs["result"]["sso_login_provider"]> + + export type sso_login_providerSelectScalar = { + sso_login_provider_id?: boolean + name?: boolean + type?: boolean + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + } + + export type sso_login_providerOmit = $Extensions.GetOmit<"sso_login_provider_id" | "name" | "type" | "identify_email_enabled" | "identify_handle_enabled", ExtArgs["result"]["sso_login_provider"]> + export type sso_login_providerInclude = { + user_sso_login?: boolean | sso_login_provider$user_sso_loginArgs + _count?: boolean | Sso_login_providerCountOutputTypeDefaultArgs + } + export type sso_login_providerIncludeCreateManyAndReturn = {} + export type sso_login_providerIncludeUpdateManyAndReturn = {} + + export type $sso_login_providerPayload = { + name: "sso_login_provider" + objects: { + user_sso_login: Prisma.$user_sso_loginPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + sso_login_provider_id: Prisma.Decimal + name: string | null + type: string + identify_email_enabled: boolean + identify_handle_enabled: boolean + }, ExtArgs["result"]["sso_login_provider"]> + composites: {} + } + + type sso_login_providerGetPayload = $Result.GetResult + + type sso_login_providerCountArgs = + Omit & { + select?: Sso_login_providerCountAggregateInputType | true + } + + export interface sso_login_providerDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['sso_login_provider'], meta: { name: 'sso_login_provider' } } + /** + * Find zero or one Sso_login_provider that matches the filter. + * @param {sso_login_providerFindUniqueArgs} args - Arguments to find a Sso_login_provider + * @example + * // Get one Sso_login_provider + * const sso_login_provider = await prisma.sso_login_provider.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Sso_login_provider that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {sso_login_providerFindUniqueOrThrowArgs} args - Arguments to find a Sso_login_provider + * @example + * // Get one Sso_login_provider + * const sso_login_provider = await prisma.sso_login_provider.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Sso_login_provider 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 {sso_login_providerFindFirstArgs} args - Arguments to find a Sso_login_provider + * @example + * // Get one Sso_login_provider + * const sso_login_provider = await prisma.sso_login_provider.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Sso_login_provider 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 {sso_login_providerFindFirstOrThrowArgs} args - Arguments to find a Sso_login_provider + * @example + * // Get one Sso_login_provider + * const sso_login_provider = await prisma.sso_login_provider.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Sso_login_providers 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 {sso_login_providerFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Sso_login_providers + * const sso_login_providers = await prisma.sso_login_provider.findMany() + * + * // Get first 10 Sso_login_providers + * const sso_login_providers = await prisma.sso_login_provider.findMany({ take: 10 }) + * + * // Only select the `sso_login_provider_id` + * const sso_login_providerWithSso_login_provider_idOnly = await prisma.sso_login_provider.findMany({ select: { sso_login_provider_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Sso_login_provider. + * @param {sso_login_providerCreateArgs} args - Arguments to create a Sso_login_provider. + * @example + * // Create one Sso_login_provider + * const Sso_login_provider = await prisma.sso_login_provider.create({ + * data: { + * // ... data to create a Sso_login_provider + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Sso_login_providers. + * @param {sso_login_providerCreateManyArgs} args - Arguments to create many Sso_login_providers. + * @example + * // Create many Sso_login_providers + * const sso_login_provider = await prisma.sso_login_provider.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Sso_login_providers and returns the data saved in the database. + * @param {sso_login_providerCreateManyAndReturnArgs} args - Arguments to create many Sso_login_providers. + * @example + * // Create many Sso_login_providers + * const sso_login_provider = await prisma.sso_login_provider.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Sso_login_providers and only return the `sso_login_provider_id` + * const sso_login_providerWithSso_login_provider_idOnly = await prisma.sso_login_provider.createManyAndReturn({ + * select: { sso_login_provider_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Sso_login_provider. + * @param {sso_login_providerDeleteArgs} args - Arguments to delete one Sso_login_provider. + * @example + * // Delete one Sso_login_provider + * const Sso_login_provider = await prisma.sso_login_provider.delete({ + * where: { + * // ... filter to delete one Sso_login_provider + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Sso_login_provider. + * @param {sso_login_providerUpdateArgs} args - Arguments to update one Sso_login_provider. + * @example + * // Update one Sso_login_provider + * const sso_login_provider = await prisma.sso_login_provider.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Sso_login_providers. + * @param {sso_login_providerDeleteManyArgs} args - Arguments to filter Sso_login_providers to delete. + * @example + * // Delete a few Sso_login_providers + * const { count } = await prisma.sso_login_provider.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Sso_login_providers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {sso_login_providerUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Sso_login_providers + * const sso_login_provider = await prisma.sso_login_provider.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Sso_login_providers and returns the data updated in the database. + * @param {sso_login_providerUpdateManyAndReturnArgs} args - Arguments to update many Sso_login_providers. + * @example + * // Update many Sso_login_providers + * const sso_login_provider = await prisma.sso_login_provider.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Sso_login_providers and only return the `sso_login_provider_id` + * const sso_login_providerWithSso_login_provider_idOnly = await prisma.sso_login_provider.updateManyAndReturn({ + * select: { sso_login_provider_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Sso_login_provider. + * @param {sso_login_providerUpsertArgs} args - Arguments to update or create a Sso_login_provider. + * @example + * // Update or create a Sso_login_provider + * const sso_login_provider = await prisma.sso_login_provider.upsert({ + * create: { + * // ... data to create a Sso_login_provider + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Sso_login_provider we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Sso_login_providers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {sso_login_providerCountArgs} args - Arguments to filter Sso_login_providers to count. + * @example + * // Count the number of Sso_login_providers + * const count = await prisma.sso_login_provider.count({ + * where: { + * // ... the filter for the Sso_login_providers 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 Sso_login_provider. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {Sso_login_providerAggregateArgs} 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 Sso_login_provider. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {sso_login_providerGroupByArgs} 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 sso_login_providerGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: sso_login_providerGroupByArgs['orderBy'] } + : { orderBy?: sso_login_providerGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetSso_login_providerGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the sso_login_provider model + */ + readonly fields: sso_login_providerFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for sso_login_provider. + * 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__sso_login_providerClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_sso_login = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 sso_login_provider model + */ + interface sso_login_providerFieldRefs { + readonly sso_login_provider_id: FieldRef<"sso_login_provider", 'Decimal'> + readonly name: FieldRef<"sso_login_provider", 'String'> + readonly type: FieldRef<"sso_login_provider", 'String'> + readonly identify_email_enabled: FieldRef<"sso_login_provider", 'Boolean'> + readonly identify_handle_enabled: FieldRef<"sso_login_provider", 'Boolean'> + } + + + // Custom InputTypes + /** + * sso_login_provider findUnique + */ + export type sso_login_providerFindUniqueArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * Filter, which sso_login_provider to fetch. + */ + where: sso_login_providerWhereUniqueInput + } + + /** + * sso_login_provider findUniqueOrThrow + */ + export type sso_login_providerFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * Filter, which sso_login_provider to fetch. + */ + where: sso_login_providerWhereUniqueInput + } + + /** + * sso_login_provider findFirst + */ + export type sso_login_providerFindFirstArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * Filter, which sso_login_provider to fetch. + */ + where?: sso_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of sso_login_providers to fetch. + */ + orderBy?: sso_login_providerOrderByWithRelationInput | sso_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for sso_login_providers. + */ + cursor?: sso_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` sso_login_providers 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` sso_login_providers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of sso_login_providers. + */ + distinct?: Sso_login_providerScalarFieldEnum | Sso_login_providerScalarFieldEnum[] + } + + /** + * sso_login_provider findFirstOrThrow + */ + export type sso_login_providerFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * Filter, which sso_login_provider to fetch. + */ + where?: sso_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of sso_login_providers to fetch. + */ + orderBy?: sso_login_providerOrderByWithRelationInput | sso_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for sso_login_providers. + */ + cursor?: sso_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` sso_login_providers 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` sso_login_providers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of sso_login_providers. + */ + distinct?: Sso_login_providerScalarFieldEnum | Sso_login_providerScalarFieldEnum[] + } + + /** + * sso_login_provider findMany + */ + export type sso_login_providerFindManyArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * Filter, which sso_login_providers to fetch. + */ + where?: sso_login_providerWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of sso_login_providers to fetch. + */ + orderBy?: sso_login_providerOrderByWithRelationInput | sso_login_providerOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing sso_login_providers. + */ + cursor?: sso_login_providerWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` sso_login_providers 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` sso_login_providers. + */ + skip?: number + distinct?: Sso_login_providerScalarFieldEnum | Sso_login_providerScalarFieldEnum[] + } + + /** + * sso_login_provider create + */ + export type sso_login_providerCreateArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * The data needed to create a sso_login_provider. + */ + data: XOR + } + + /** + * sso_login_provider createMany + */ + export type sso_login_providerCreateManyArgs = { + /** + * The data used to create many sso_login_providers. + */ + data: sso_login_providerCreateManyInput | sso_login_providerCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * sso_login_provider createManyAndReturn + */ + export type sso_login_providerCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelectCreateManyAndReturn | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * The data used to create many sso_login_providers. + */ + data: sso_login_providerCreateManyInput | sso_login_providerCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * sso_login_provider update + */ + export type sso_login_providerUpdateArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * The data needed to update a sso_login_provider. + */ + data: XOR + /** + * Choose, which sso_login_provider to update. + */ + where: sso_login_providerWhereUniqueInput + } + + /** + * sso_login_provider updateMany + */ + export type sso_login_providerUpdateManyArgs = { + /** + * The data used to update sso_login_providers. + */ + data: XOR + /** + * Filter which sso_login_providers to update + */ + where?: sso_login_providerWhereInput + /** + * Limit how many sso_login_providers to update. + */ + limit?: number + } + + /** + * sso_login_provider updateManyAndReturn + */ + export type sso_login_providerUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * The data used to update sso_login_providers. + */ + data: XOR + /** + * Filter which sso_login_providers to update + */ + where?: sso_login_providerWhereInput + /** + * Limit how many sso_login_providers to update. + */ + limit?: number + } + + /** + * sso_login_provider upsert + */ + export type sso_login_providerUpsertArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * The filter to search for the sso_login_provider to update in case it exists. + */ + where: sso_login_providerWhereUniqueInput + /** + * In case the sso_login_provider found by the `where` argument doesn't exist, create a new sso_login_provider with this data. + */ + create: XOR + /** + * In case the sso_login_provider was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * sso_login_provider delete + */ + export type sso_login_providerDeleteArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + /** + * Filter which sso_login_provider to delete. + */ + where: sso_login_providerWhereUniqueInput + } + + /** + * sso_login_provider deleteMany + */ + export type sso_login_providerDeleteManyArgs = { + /** + * Filter which sso_login_providers to delete + */ + where?: sso_login_providerWhereInput + /** + * Limit how many sso_login_providers to delete. + */ + limit?: number + } + + /** + * sso_login_provider.user_sso_login + */ + export type sso_login_provider$user_sso_loginArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + where?: user_sso_loginWhereInput + orderBy?: user_sso_loginOrderByWithRelationInput | user_sso_loginOrderByWithRelationInput[] + cursor?: user_sso_loginWhereUniqueInput + take?: number + skip?: number + distinct?: User_sso_loginScalarFieldEnum | User_sso_loginScalarFieldEnum[] + } + + /** + * sso_login_provider without action + */ + export type sso_login_providerDefaultArgs = { + /** + * Select specific fields to fetch from the sso_login_provider + */ + select?: sso_login_providerSelect | null + /** + * Omit specific fields from the sso_login_provider + */ + omit?: sso_login_providerOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: sso_login_providerInclude | null + } + + + /** + * Model user + */ + + export type AggregateUser = { + _count: UserCountAggregateOutputType | null + _avg: UserAvgAggregateOutputType | null + _sum: UserSumAggregateOutputType | null + _min: UserMinAggregateOutputType | null + _max: UserMaxAggregateOutputType | null + } + + export type UserAvgAggregateOutputType = { + user_id: Decimal | null + timezone_id: Decimal | null + } + + export type UserSumAggregateOutputType = { + user_id: Decimal | null + timezone_id: Decimal | null + } + + export type UserMinAggregateOutputType = { + user_id: Decimal | null + first_name: string | null + last_name: string | null + create_date: Date | null + modify_date: Date | null + handle: string | null + last_login: Date | null + status: string | null + activation_code: string | null + middle_name: string | null + handle_lower: string | null + timezone_id: Decimal | null + last_site_hit_date: Date | null + name_in_another_language: string | null + password: string | null + open_id: string | null + reg_source: string | null + utm_source: string | null + utm_medium: string | null + utm_campaign: string | null + } + + export type UserMaxAggregateOutputType = { + user_id: Decimal | null + first_name: string | null + last_name: string | null + create_date: Date | null + modify_date: Date | null + handle: string | null + last_login: Date | null + status: string | null + activation_code: string | null + middle_name: string | null + handle_lower: string | null + timezone_id: Decimal | null + last_site_hit_date: Date | null + name_in_another_language: string | null + password: string | null + open_id: string | null + reg_source: string | null + utm_source: string | null + utm_medium: string | null + utm_campaign: string | null + } + + export type UserCountAggregateOutputType = { + user_id: number + first_name: number + last_name: number + create_date: number + modify_date: number + handle: number + last_login: number + status: number + activation_code: number + middle_name: number + handle_lower: number + timezone_id: number + last_site_hit_date: number + name_in_another_language: number + password: number + open_id: number + reg_source: number + utm_source: number + utm_medium: number + utm_campaign: number + _all: number + } + + + export type UserAvgAggregateInputType = { + user_id?: true + timezone_id?: true + } + + export type UserSumAggregateInputType = { + user_id?: true + timezone_id?: true + } + + export type UserMinAggregateInputType = { + user_id?: true + first_name?: true + last_name?: true + create_date?: true + modify_date?: true + handle?: true + last_login?: true + status?: true + activation_code?: true + middle_name?: true + handle_lower?: true + timezone_id?: true + last_site_hit_date?: true + name_in_another_language?: true + password?: true + open_id?: true + reg_source?: true + utm_source?: true + utm_medium?: true + utm_campaign?: true + } + + export type UserMaxAggregateInputType = { + user_id?: true + first_name?: true + last_name?: true + create_date?: true + modify_date?: true + handle?: true + last_login?: true + status?: true + activation_code?: true + middle_name?: true + handle_lower?: true + timezone_id?: true + last_site_hit_date?: true + name_in_another_language?: true + password?: true + open_id?: true + reg_source?: true + utm_source?: true + utm_medium?: true + utm_campaign?: true + } + + export type UserCountAggregateInputType = { + user_id?: true + first_name?: true + last_name?: true + create_date?: true + modify_date?: true + handle?: true + last_login?: true + status?: true + activation_code?: true + middle_name?: true + handle_lower?: true + timezone_id?: true + last_site_hit_date?: true + name_in_another_language?: true + password?: true + open_id?: true + reg_source?: true + utm_source?: true + utm_medium?: true + utm_campaign?: true + _all?: true + } + + export type UserAggregateArgs = { + /** + * Filter which user to aggregate. + */ + where?: userWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of users to fetch. + */ + orderBy?: userOrderByWithRelationInput | userOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: userWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` users from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` users. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned users + **/ + _count?: true | UserCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: UserAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: UserSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: UserMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: UserMaxAggregateInputType + } + + export type GetUserAggregateType = { + [P in keyof T & keyof AggregateUser]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type userGroupByArgs = { + where?: userWhereInput + orderBy?: userOrderByWithAggregationInput | userOrderByWithAggregationInput[] + by: UserScalarFieldEnum[] | UserScalarFieldEnum + having?: userScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: UserCountAggregateInputType | true + _avg?: UserAvgAggregateInputType + _sum?: UserSumAggregateInputType + _min?: UserMinAggregateInputType + _max?: UserMaxAggregateInputType + } + + export type UserGroupByOutputType = { + user_id: Decimal + first_name: string | null + last_name: string | null + create_date: Date | null + modify_date: Date | null + handle: string + last_login: Date | null + status: string + activation_code: string | null + middle_name: string | null + handle_lower: string | null + timezone_id: Decimal | null + last_site_hit_date: Date | null + name_in_another_language: string | null + password: string | null + open_id: string | null + reg_source: string | null + utm_source: string | null + utm_medium: string | null + utm_campaign: string | null + _count: UserCountAggregateOutputType | null + _avg: UserAvgAggregateOutputType | null + _sum: UserSumAggregateOutputType | null + _min: UserMinAggregateOutputType | null + _max: UserMaxAggregateOutputType | null + } + + type GetUserGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof UserGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type userSelect = $Extensions.GetSelect<{ + user_id?: boolean + first_name?: boolean + last_name?: boolean + create_date?: boolean + modify_date?: boolean + handle?: boolean + last_login?: boolean + status?: boolean + activation_code?: boolean + middle_name?: boolean + handle_lower?: boolean + timezone_id?: boolean + last_site_hit_date?: boolean + name_in_another_language?: boolean + password?: boolean + open_id?: boolean + reg_source?: boolean + utm_source?: boolean + utm_medium?: boolean + utm_campaign?: boolean + dice_connection?: boolean | user$dice_connectionArgs + user_2fa?: boolean | user$user_2faArgs + user_achievement?: boolean | user$user_achievementArgs + user_otp_email?: boolean | user$user_otp_emailArgs + user_social_login?: boolean | user$user_social_loginArgs + user_sso_login?: boolean | user$user_sso_loginArgs + user_status?: boolean | user$user_statusArgs + user_email_xref?: boolean | user$user_email_xrefArgs + emails?: boolean | user$emailsArgs + _count?: boolean | UserCountOutputTypeDefaultArgs + }, ExtArgs["result"]["user"]> + + export type userSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + first_name?: boolean + last_name?: boolean + create_date?: boolean + modify_date?: boolean + handle?: boolean + last_login?: boolean + status?: boolean + activation_code?: boolean + middle_name?: boolean + handle_lower?: boolean + timezone_id?: boolean + last_site_hit_date?: boolean + name_in_another_language?: boolean + password?: boolean + open_id?: boolean + reg_source?: boolean + utm_source?: boolean + utm_medium?: boolean + utm_campaign?: boolean + }, ExtArgs["result"]["user"]> + + export type userSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + first_name?: boolean + last_name?: boolean + create_date?: boolean + modify_date?: boolean + handle?: boolean + last_login?: boolean + status?: boolean + activation_code?: boolean + middle_name?: boolean + handle_lower?: boolean + timezone_id?: boolean + last_site_hit_date?: boolean + name_in_another_language?: boolean + password?: boolean + open_id?: boolean + reg_source?: boolean + utm_source?: boolean + utm_medium?: boolean + utm_campaign?: boolean + }, ExtArgs["result"]["user"]> + + export type userSelectScalar = { + user_id?: boolean + first_name?: boolean + last_name?: boolean + create_date?: boolean + modify_date?: boolean + handle?: boolean + last_login?: boolean + status?: boolean + activation_code?: boolean + middle_name?: boolean + handle_lower?: boolean + timezone_id?: boolean + last_site_hit_date?: boolean + name_in_another_language?: boolean + password?: boolean + open_id?: boolean + reg_source?: boolean + utm_source?: boolean + utm_medium?: boolean + utm_campaign?: boolean + } + + export type userOmit = $Extensions.GetOmit<"user_id" | "first_name" | "last_name" | "create_date" | "modify_date" | "handle" | "last_login" | "status" | "activation_code" | "middle_name" | "handle_lower" | "timezone_id" | "last_site_hit_date" | "name_in_another_language" | "password" | "open_id" | "reg_source" | "utm_source" | "utm_medium" | "utm_campaign", ExtArgs["result"]["user"]> + export type userInclude = { + dice_connection?: boolean | user$dice_connectionArgs + user_2fa?: boolean | user$user_2faArgs + user_achievement?: boolean | user$user_achievementArgs + user_otp_email?: boolean | user$user_otp_emailArgs + user_social_login?: boolean | user$user_social_loginArgs + user_sso_login?: boolean | user$user_sso_loginArgs + user_status?: boolean | user$user_statusArgs + user_email_xref?: boolean | user$user_email_xrefArgs + emails?: boolean | user$emailsArgs + _count?: boolean | UserCountOutputTypeDefaultArgs + } + export type userIncludeCreateManyAndReturn = {} + export type userIncludeUpdateManyAndReturn = {} + + export type $userPayload = { + name: "user" + objects: { + dice_connection: Prisma.$dice_connectionPayload | null + user_2fa: Prisma.$user_2faPayload | null + user_achievement: Prisma.$user_achievementPayload[] + user_otp_email: Prisma.$user_otp_emailPayload[] + user_social_login: Prisma.$user_social_loginPayload[] + user_sso_login: Prisma.$user_sso_loginPayload[] + user_status: Prisma.$user_statusPayload[] + user_email_xref: Prisma.$user_email_xrefPayload[] + emails: Prisma.$emailPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + user_id: Prisma.Decimal + first_name: string | null + last_name: string | null + create_date: Date | null + modify_date: Date | null + handle: string + last_login: Date | null + status: string + activation_code: string | null + middle_name: string | null + handle_lower: string | null + timezone_id: Prisma.Decimal | null + last_site_hit_date: Date | null + name_in_another_language: string | null + password: string | null + open_id: string | null + reg_source: string | null + utm_source: string | null + utm_medium: string | null + utm_campaign: string | null + }, ExtArgs["result"]["user"]> + composites: {} + } + + type userGetPayload = $Result.GetResult + + type userCountArgs = + Omit & { + select?: UserCountAggregateInputType | true + } + + export interface userDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user'], meta: { name: 'user' } } + /** + * Find zero or one User that matches the filter. + * @param {userFindUniqueArgs} args - Arguments to find a User + * @example + * // Get one User + * const user = await prisma.user.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__userClient<$Result.GetResult, T, "findUnique", 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, 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, 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, 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 `user_id` + * const userWithUser_idOnly = await prisma.user.findMany({ select: { user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, 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, 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 + + /** + * Create many Users and returns the data saved in the database. + * @param {userCreateManyAndReturnArgs} args - Arguments to create many Users. + * @example + * // Create many Users + * const user = await prisma.user.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Users and only return the `user_id` + * const userWithUser_idOnly = await prisma.user.createManyAndReturn({ + * select: { user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User. + * @param {userDeleteArgs} args - Arguments to delete one User. + * @example + * // Delete one User + * const User = await prisma.user.delete({ + * where: { + * // ... filter to delete one User + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__userClient<$Result.GetResult, T, "delete", 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, 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 + + /** + * Update zero or more Users and returns the data updated in the database. + * @param {userUpdateManyAndReturnArgs} args - Arguments to update many Users. + * @example + * // Update many Users + * const user = await prisma.user.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Users and only return the `user_id` + * const userWithUser_idOnly = await prisma.user.updateManyAndReturn({ + * select: { user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User. + * @param {userUpsertArgs} args - Arguments to update or create a User. + * @example + * // Update or create a User + * const user = await prisma.user.upsert({ + * create: { + * // ... data to create a User + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__userClient<$Result.GetResult, T, "upsert", 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>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUserGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user model + */ + readonly fields: userFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ + export interface Prisma__userClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + dice_connection = {}>(args?: Subset>): Prisma__dice_connectionClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + user_2fa = {}>(args?: Subset>): Prisma__user_2faClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + user_achievement = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user_otp_email = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user_social_login = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user_sso_login = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user_status = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + user_email_xref = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions> | Null> + emails = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 user_id: FieldRef<"user", 'Decimal'> + readonly first_name: FieldRef<"user", 'String'> + readonly last_name: FieldRef<"user", 'String'> + readonly create_date: FieldRef<"user", 'DateTime'> + readonly modify_date: FieldRef<"user", 'DateTime'> + readonly handle: FieldRef<"user", 'String'> + readonly last_login: FieldRef<"user", 'DateTime'> + readonly status: FieldRef<"user", 'String'> + readonly activation_code: FieldRef<"user", 'String'> + readonly middle_name: FieldRef<"user", 'String'> + readonly handle_lower: FieldRef<"user", 'String'> + readonly timezone_id: FieldRef<"user", 'Decimal'> + readonly last_site_hit_date: FieldRef<"user", 'DateTime'> + readonly name_in_another_language: FieldRef<"user", 'String'> + readonly password: FieldRef<"user", 'String'> + readonly open_id: FieldRef<"user", 'String'> + readonly reg_source: FieldRef<"user", 'String'> + readonly utm_source: FieldRef<"user", 'String'> + readonly utm_medium: FieldRef<"user", 'String'> + readonly utm_campaign: FieldRef<"user", 'String'> + } + + + // Custom InputTypes + /** + * user findUnique + */ + export type userFindUniqueArgs = { + /** + * 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 = { + /** + * 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 = { + /** + * 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 = { + /** + * 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 = { + /** + * 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 = { + /** + * 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 = { + /** + * The data used to create many users. + */ + data: userCreateManyInput | userCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user createManyAndReturn + */ + export type userCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user + */ + select?: userSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user + */ + omit?: userOmit | null + /** + * The data used to create many users. + */ + data: userCreateManyInput | userCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user update + */ + export type userUpdateArgs = { + /** + * 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 = { + /** + * The data used to update users. + */ + data: XOR + /** + * Filter which users to update + */ + where?: userWhereInput + /** + * Limit how many users to update. + */ + limit?: number + } + + /** + * user updateManyAndReturn + */ + export type userUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user + */ + select?: userSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user + */ + omit?: userOmit | null + /** + * 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 = { + /** + * 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 = { + /** + * 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 = { + /** + * Filter which users to delete + */ + where?: userWhereInput + /** + * Limit how many users to delete. + */ + limit?: number + } + + /** + * user.dice_connection + */ + export type user$dice_connectionArgs = { + /** + * Select specific fields to fetch from the dice_connection + */ + select?: dice_connectionSelect | null + /** + * Omit specific fields from the dice_connection + */ + omit?: dice_connectionOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: dice_connectionInclude | null + where?: dice_connectionWhereInput + } + + /** + * user.user_2fa + */ + export type user$user_2faArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + where?: user_2faWhereInput + } + + /** + * user.user_achievement + */ + export type user$user_achievementArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + where?: user_achievementWhereInput + orderBy?: user_achievementOrderByWithRelationInput | user_achievementOrderByWithRelationInput[] + cursor?: user_achievementWhereUniqueInput + take?: number + skip?: number + distinct?: User_achievementScalarFieldEnum | User_achievementScalarFieldEnum[] + } + + /** + * user.user_otp_email + */ + export type user$user_otp_emailArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + where?: user_otp_emailWhereInput + orderBy?: user_otp_emailOrderByWithRelationInput | user_otp_emailOrderByWithRelationInput[] + cursor?: user_otp_emailWhereUniqueInput + take?: number + skip?: number + distinct?: User_otp_emailScalarFieldEnum | User_otp_emailScalarFieldEnum[] + } + + /** + * user.user_social_login + */ + export type user$user_social_loginArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + where?: user_social_loginWhereInput + orderBy?: user_social_loginOrderByWithRelationInput | user_social_loginOrderByWithRelationInput[] + cursor?: user_social_loginWhereUniqueInput + take?: number + skip?: number + distinct?: User_social_loginScalarFieldEnum | User_social_loginScalarFieldEnum[] + } + + /** + * user.user_sso_login + */ + export type user$user_sso_loginArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + where?: user_sso_loginWhereInput + orderBy?: user_sso_loginOrderByWithRelationInput | user_sso_loginOrderByWithRelationInput[] + cursor?: user_sso_loginWhereUniqueInput + take?: number + skip?: number + distinct?: User_sso_loginScalarFieldEnum | User_sso_loginScalarFieldEnum[] + } + + /** + * user.user_status + */ + export type user$user_statusArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + where?: user_statusWhereInput + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + cursor?: user_statusWhereUniqueInput + take?: number + skip?: number + distinct?: User_statusScalarFieldEnum | User_statusScalarFieldEnum[] + } + + /** + * user.user_email_xref + */ + export type user$user_email_xrefArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + where?: user_email_xrefWhereInput + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + cursor?: user_email_xrefWhereUniqueInput + take?: number + skip?: number + distinct?: User_email_xrefScalarFieldEnum | User_email_xrefScalarFieldEnum[] + } + + /** + * user.emails + */ + export type user$emailsArgs = { + /** + * Select specific fields to fetch from the email + */ + select?: emailSelect | null + /** + * Omit specific fields from the email + */ + omit?: emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: emailInclude | null + where?: emailWhereInput + orderBy?: emailOrderByWithRelationInput | emailOrderByWithRelationInput[] + cursor?: emailWhereUniqueInput + take?: number + skip?: number + distinct?: EmailScalarFieldEnum | EmailScalarFieldEnum[] + } + + /** + * user without action + */ + export type userDefaultArgs = { + /** + * 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 user_2fa + */ + + export type AggregateUser_2fa = { + _count: User_2faCountAggregateOutputType | null + _avg: User_2faAvgAggregateOutputType | null + _sum: User_2faSumAggregateOutputType | null + _min: User_2faMinAggregateOutputType | null + _max: User_2faMaxAggregateOutputType | null + } + + export type User_2faAvgAggregateOutputType = { + id: number | null + user_id: Decimal | null + created_by: Decimal | null + modified_by: Decimal | null + } + + export type User_2faSumAggregateOutputType = { + id: number | null + user_id: Decimal | null + created_by: Decimal | null + modified_by: Decimal | null + } + + export type User_2faMinAggregateOutputType = { + id: number | null + user_id: Decimal | null + mfa_enabled: boolean | null + dice_enabled: boolean | null + created_by: Decimal | null + created_at: Date | null + modified_by: Decimal | null + modified_at: Date | null + } + + export type User_2faMaxAggregateOutputType = { + id: number | null + user_id: Decimal | null + mfa_enabled: boolean | null + dice_enabled: boolean | null + created_by: Decimal | null + created_at: Date | null + modified_by: Decimal | null + modified_at: Date | null + } + + export type User_2faCountAggregateOutputType = { + id: number + user_id: number + mfa_enabled: number + dice_enabled: number + created_by: number + created_at: number + modified_by: number + modified_at: number + _all: number + } + + + export type User_2faAvgAggregateInputType = { + id?: true + user_id?: true + created_by?: true + modified_by?: true + } + + export type User_2faSumAggregateInputType = { + id?: true + user_id?: true + created_by?: true + modified_by?: true + } + + export type User_2faMinAggregateInputType = { + id?: true + user_id?: true + mfa_enabled?: true + dice_enabled?: true + created_by?: true + created_at?: true + modified_by?: true + modified_at?: true + } + + export type User_2faMaxAggregateInputType = { + id?: true + user_id?: true + mfa_enabled?: true + dice_enabled?: true + created_by?: true + created_at?: true + modified_by?: true + modified_at?: true + } + + export type User_2faCountAggregateInputType = { + id?: true + user_id?: true + mfa_enabled?: true + dice_enabled?: true + created_by?: true + created_at?: true + modified_by?: true + modified_at?: true + _all?: true + } + + export type User_2faAggregateArgs = { + /** + * Filter which user_2fa to aggregate. + */ + where?: user_2faWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_2fas to fetch. + */ + orderBy?: user_2faOrderByWithRelationInput | user_2faOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_2faWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_2fas 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` user_2fas. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_2fas + **/ + _count?: true | User_2faCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_2faAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_2faSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_2faMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_2faMaxAggregateInputType + } + + export type GetUser_2faAggregateType = { + [P in keyof T & keyof AggregateUser_2fa]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_2faGroupByArgs = { + where?: user_2faWhereInput + orderBy?: user_2faOrderByWithAggregationInput | user_2faOrderByWithAggregationInput[] + by: User_2faScalarFieldEnum[] | User_2faScalarFieldEnum + having?: user_2faScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_2faCountAggregateInputType | true + _avg?: User_2faAvgAggregateInputType + _sum?: User_2faSumAggregateInputType + _min?: User_2faMinAggregateInputType + _max?: User_2faMaxAggregateInputType + } + + export type User_2faGroupByOutputType = { + id: number + user_id: Decimal + mfa_enabled: boolean + dice_enabled: boolean + created_by: Decimal + created_at: Date + modified_by: Decimal + modified_at: Date + _count: User_2faCountAggregateOutputType | null + _avg: User_2faAvgAggregateOutputType | null + _sum: User_2faSumAggregateOutputType | null + _min: User_2faMinAggregateOutputType | null + _max: User_2faMaxAggregateOutputType | null + } + + type GetUser_2faGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_2faGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_2faSelect = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + mfa_enabled?: boolean + dice_enabled?: boolean + created_by?: boolean + created_at?: boolean + modified_by?: boolean + modified_at?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_2fa"]> + + export type user_2faSelectCreateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + mfa_enabled?: boolean + dice_enabled?: boolean + created_by?: boolean + created_at?: boolean + modified_by?: boolean + modified_at?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_2fa"]> + + export type user_2faSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + mfa_enabled?: boolean + dice_enabled?: boolean + created_by?: boolean + created_at?: boolean + modified_by?: boolean + modified_at?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_2fa"]> + + export type user_2faSelectScalar = { + id?: boolean + user_id?: boolean + mfa_enabled?: boolean + dice_enabled?: boolean + created_by?: boolean + created_at?: boolean + modified_by?: boolean + modified_at?: boolean + } + + export type user_2faOmit = $Extensions.GetOmit<"id" | "user_id" | "mfa_enabled" | "dice_enabled" | "created_by" | "created_at" | "modified_by" | "modified_at", ExtArgs["result"]["user_2fa"]> + export type user_2faInclude = { + user?: boolean | userDefaultArgs + } + export type user_2faIncludeCreateManyAndReturn = { + user?: boolean | userDefaultArgs + } + export type user_2faIncludeUpdateManyAndReturn = { + user?: boolean | userDefaultArgs + } + + export type $user_2faPayload = { + name: "user_2fa" + objects: { + user: Prisma.$userPayload + } + scalars: $Extensions.GetPayloadResult<{ + id: number + user_id: Prisma.Decimal + mfa_enabled: boolean + dice_enabled: boolean + created_by: Prisma.Decimal + created_at: Date + modified_by: Prisma.Decimal + modified_at: Date + }, ExtArgs["result"]["user_2fa"]> + composites: {} + } + + type user_2faGetPayload = $Result.GetResult + + type user_2faCountArgs = + Omit & { + select?: User_2faCountAggregateInputType | true + } + + export interface user_2faDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_2fa'], meta: { name: 'user_2fa' } } + /** + * Find zero or one User_2fa that matches the filter. + * @param {user_2faFindUniqueArgs} args - Arguments to find a User_2fa + * @example + * // Get one User_2fa + * const user_2fa = await prisma.user_2fa.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_2fa that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_2faFindUniqueOrThrowArgs} args - Arguments to find a User_2fa + * @example + * // Get one User_2fa + * const user_2fa = await prisma.user_2fa.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_2fa 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 {user_2faFindFirstArgs} args - Arguments to find a User_2fa + * @example + * // Get one User_2fa + * const user_2fa = await prisma.user_2fa.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_2fa 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 {user_2faFindFirstOrThrowArgs} args - Arguments to find a User_2fa + * @example + * // Get one User_2fa + * const user_2fa = await prisma.user_2fa.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_2fas 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 {user_2faFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_2fas + * const user_2fas = await prisma.user_2fa.findMany() + * + * // Get first 10 User_2fas + * const user_2fas = await prisma.user_2fa.findMany({ take: 10 }) + * + * // Only select the `id` + * const user_2faWithIdOnly = await prisma.user_2fa.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_2fa. + * @param {user_2faCreateArgs} args - Arguments to create a User_2fa. + * @example + * // Create one User_2fa + * const User_2fa = await prisma.user_2fa.create({ + * data: { + * // ... data to create a User_2fa + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_2fas. + * @param {user_2faCreateManyArgs} args - Arguments to create many User_2fas. + * @example + * // Create many User_2fas + * const user_2fa = await prisma.user_2fa.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_2fas and returns the data saved in the database. + * @param {user_2faCreateManyAndReturnArgs} args - Arguments to create many User_2fas. + * @example + * // Create many User_2fas + * const user_2fa = await prisma.user_2fa.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_2fas and only return the `id` + * const user_2faWithIdOnly = await prisma.user_2fa.createManyAndReturn({ + * select: { id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_2fa. + * @param {user_2faDeleteArgs} args - Arguments to delete one User_2fa. + * @example + * // Delete one User_2fa + * const User_2fa = await prisma.user_2fa.delete({ + * where: { + * // ... filter to delete one User_2fa + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_2fa. + * @param {user_2faUpdateArgs} args - Arguments to update one User_2fa. + * @example + * // Update one User_2fa + * const user_2fa = await prisma.user_2fa.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_2fas. + * @param {user_2faDeleteManyArgs} args - Arguments to filter User_2fas to delete. + * @example + * // Delete a few User_2fas + * const { count } = await prisma.user_2fa.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_2fas. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_2faUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_2fas + * const user_2fa = await prisma.user_2fa.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_2fas and returns the data updated in the database. + * @param {user_2faUpdateManyAndReturnArgs} args - Arguments to update many User_2fas. + * @example + * // Update many User_2fas + * const user_2fa = await prisma.user_2fa.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_2fas and only return the `id` + * const user_2faWithIdOnly = await prisma.user_2fa.updateManyAndReturn({ + * select: { id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_2fa. + * @param {user_2faUpsertArgs} args - Arguments to update or create a User_2fa. + * @example + * // Update or create a User_2fa + * const user_2fa = await prisma.user_2fa.upsert({ + * create: { + * // ... data to create a User_2fa + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_2fa we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_2faClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_2fas. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_2faCountArgs} args - Arguments to filter User_2fas to count. + * @example + * // Count the number of User_2fas + * const count = await prisma.user_2fa.count({ + * where: { + * // ... the filter for the User_2fas 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_2fa. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_2faAggregateArgs} 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_2fa. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_2faGroupByArgs} 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 user_2faGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_2faGroupByArgs['orderBy'] } + : { orderBy?: user_2faGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_2faGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_2fa model + */ + readonly fields: user_2faFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_2fa. + * 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__user_2faClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 user_2fa model + */ + interface user_2faFieldRefs { + readonly id: FieldRef<"user_2fa", 'Int'> + readonly user_id: FieldRef<"user_2fa", 'Decimal'> + readonly mfa_enabled: FieldRef<"user_2fa", 'Boolean'> + readonly dice_enabled: FieldRef<"user_2fa", 'Boolean'> + readonly created_by: FieldRef<"user_2fa", 'Decimal'> + readonly created_at: FieldRef<"user_2fa", 'DateTime'> + readonly modified_by: FieldRef<"user_2fa", 'Decimal'> + readonly modified_at: FieldRef<"user_2fa", 'DateTime'> + } + + + // Custom InputTypes + /** + * user_2fa findUnique + */ + export type user_2faFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * Filter, which user_2fa to fetch. + */ + where: user_2faWhereUniqueInput + } + + /** + * user_2fa findUniqueOrThrow + */ + export type user_2faFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * Filter, which user_2fa to fetch. + */ + where: user_2faWhereUniqueInput + } + + /** + * user_2fa findFirst + */ + export type user_2faFindFirstArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * Filter, which user_2fa to fetch. + */ + where?: user_2faWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_2fas to fetch. + */ + orderBy?: user_2faOrderByWithRelationInput | user_2faOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_2fas. + */ + cursor?: user_2faWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_2fas 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` user_2fas. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_2fas. + */ + distinct?: User_2faScalarFieldEnum | User_2faScalarFieldEnum[] + } + + /** + * user_2fa findFirstOrThrow + */ + export type user_2faFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * Filter, which user_2fa to fetch. + */ + where?: user_2faWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_2fas to fetch. + */ + orderBy?: user_2faOrderByWithRelationInput | user_2faOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_2fas. + */ + cursor?: user_2faWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_2fas 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` user_2fas. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_2fas. + */ + distinct?: User_2faScalarFieldEnum | User_2faScalarFieldEnum[] + } + + /** + * user_2fa findMany + */ + export type user_2faFindManyArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * Filter, which user_2fas to fetch. + */ + where?: user_2faWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_2fas to fetch. + */ + orderBy?: user_2faOrderByWithRelationInput | user_2faOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_2fas. + */ + cursor?: user_2faWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_2fas 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` user_2fas. + */ + skip?: number + distinct?: User_2faScalarFieldEnum | User_2faScalarFieldEnum[] + } + + /** + * user_2fa create + */ + export type user_2faCreateArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * The data needed to create a user_2fa. + */ + data: XOR + } + + /** + * user_2fa createMany + */ + export type user_2faCreateManyArgs = { + /** + * The data used to create many user_2fas. + */ + data: user_2faCreateManyInput | user_2faCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_2fa createManyAndReturn + */ + export type user_2faCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * The data used to create many user_2fas. + */ + data: user_2faCreateManyInput | user_2faCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faIncludeCreateManyAndReturn | null + } + + /** + * user_2fa update + */ + export type user_2faUpdateArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * The data needed to update a user_2fa. + */ + data: XOR + /** + * Choose, which user_2fa to update. + */ + where: user_2faWhereUniqueInput + } + + /** + * user_2fa updateMany + */ + export type user_2faUpdateManyArgs = { + /** + * The data used to update user_2fas. + */ + data: XOR + /** + * Filter which user_2fas to update + */ + where?: user_2faWhereInput + /** + * Limit how many user_2fas to update. + */ + limit?: number + } + + /** + * user_2fa updateManyAndReturn + */ + export type user_2faUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * The data used to update user_2fas. + */ + data: XOR + /** + * Filter which user_2fas to update + */ + where?: user_2faWhereInput + /** + * Limit how many user_2fas to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faIncludeUpdateManyAndReturn | null + } + + /** + * user_2fa upsert + */ + export type user_2faUpsertArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * The filter to search for the user_2fa to update in case it exists. + */ + where: user_2faWhereUniqueInput + /** + * In case the user_2fa found by the `where` argument doesn't exist, create a new user_2fa with this data. + */ + create: XOR + /** + * In case the user_2fa was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_2fa delete + */ + export type user_2faDeleteArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + /** + * Filter which user_2fa to delete. + */ + where: user_2faWhereUniqueInput + } + + /** + * user_2fa deleteMany + */ + export type user_2faDeleteManyArgs = { + /** + * Filter which user_2fas to delete + */ + where?: user_2faWhereInput + /** + * Limit how many user_2fas to delete. + */ + limit?: number + } + + /** + * user_2fa without action + */ + export type user_2faDefaultArgs = { + /** + * Select specific fields to fetch from the user_2fa + */ + select?: user_2faSelect | null + /** + * Omit specific fields from the user_2fa + */ + omit?: user_2faOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_2faInclude | null + } + + + /** + * Model user_achievement + */ + + export type AggregateUser_achievement = { + _count: User_achievementCountAggregateOutputType | null + _avg: User_achievementAvgAggregateOutputType | null + _sum: User_achievementSumAggregateOutputType | null + _min: User_achievementMinAggregateOutputType | null + _max: User_achievementMaxAggregateOutputType | null + } + + export type User_achievementAvgAggregateOutputType = { + user_id: Decimal | null + achievement_type_id: Decimal | null + } + + export type User_achievementSumAggregateOutputType = { + user_id: Decimal | null + achievement_type_id: Decimal | null + } + + export type User_achievementMinAggregateOutputType = { + user_id: Decimal | null + achievement_date: Date | null + achievement_type_id: Decimal | null + description: string | null + create_date: Date | null + } + + export type User_achievementMaxAggregateOutputType = { + user_id: Decimal | null + achievement_date: Date | null + achievement_type_id: Decimal | null + description: string | null + create_date: Date | null + } + + export type User_achievementCountAggregateOutputType = { + user_id: number + achievement_date: number + achievement_type_id: number + description: number + create_date: number + _all: number + } + + + export type User_achievementAvgAggregateInputType = { + user_id?: true + achievement_type_id?: true + } + + export type User_achievementSumAggregateInputType = { + user_id?: true + achievement_type_id?: true + } + + export type User_achievementMinAggregateInputType = { + user_id?: true + achievement_date?: true + achievement_type_id?: true + description?: true + create_date?: true + } + + export type User_achievementMaxAggregateInputType = { + user_id?: true + achievement_date?: true + achievement_type_id?: true + description?: true + create_date?: true + } + + export type User_achievementCountAggregateInputType = { + user_id?: true + achievement_date?: true + achievement_type_id?: true + description?: true + create_date?: true + _all?: true + } + + export type User_achievementAggregateArgs = { + /** + * Filter which user_achievement to aggregate. + */ + where?: user_achievementWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_achievements to fetch. + */ + orderBy?: user_achievementOrderByWithRelationInput | user_achievementOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_achievementWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_achievements 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` user_achievements. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_achievements + **/ + _count?: true | User_achievementCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_achievementAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_achievementSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_achievementMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_achievementMaxAggregateInputType + } + + export type GetUser_achievementAggregateType = { + [P in keyof T & keyof AggregateUser_achievement]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_achievementGroupByArgs = { + where?: user_achievementWhereInput + orderBy?: user_achievementOrderByWithAggregationInput | user_achievementOrderByWithAggregationInput[] + by: User_achievementScalarFieldEnum[] | User_achievementScalarFieldEnum + having?: user_achievementScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_achievementCountAggregateInputType | true + _avg?: User_achievementAvgAggregateInputType + _sum?: User_achievementSumAggregateInputType + _min?: User_achievementMinAggregateInputType + _max?: User_achievementMaxAggregateInputType + } + + export type User_achievementGroupByOutputType = { + user_id: Decimal + achievement_date: Date + achievement_type_id: Decimal + description: string | null + create_date: Date | null + _count: User_achievementCountAggregateOutputType | null + _avg: User_achievementAvgAggregateOutputType | null + _sum: User_achievementSumAggregateOutputType | null + _min: User_achievementMinAggregateOutputType | null + _max: User_achievementMaxAggregateOutputType | null + } + + type GetUser_achievementGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_achievementGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_achievementSelect = $Extensions.GetSelect<{ + user_id?: boolean + achievement_date?: boolean + achievement_type_id?: boolean + description?: boolean + create_date?: boolean + achievement_type_lu?: boolean | achievement_type_luDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_achievement"]> + + export type user_achievementSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + achievement_date?: boolean + achievement_type_id?: boolean + description?: boolean + create_date?: boolean + achievement_type_lu?: boolean | achievement_type_luDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_achievement"]> + + export type user_achievementSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + achievement_date?: boolean + achievement_type_id?: boolean + description?: boolean + create_date?: boolean + achievement_type_lu?: boolean | achievement_type_luDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_achievement"]> + + export type user_achievementSelectScalar = { + user_id?: boolean + achievement_date?: boolean + achievement_type_id?: boolean + description?: boolean + create_date?: boolean + } + + export type user_achievementOmit = $Extensions.GetOmit<"user_id" | "achievement_date" | "achievement_type_id" | "description" | "create_date", ExtArgs["result"]["user_achievement"]> + export type user_achievementInclude = { + achievement_type_lu?: boolean | achievement_type_luDefaultArgs + user?: boolean | userDefaultArgs + } + export type user_achievementIncludeCreateManyAndReturn = { + achievement_type_lu?: boolean | achievement_type_luDefaultArgs + user?: boolean | userDefaultArgs + } + export type user_achievementIncludeUpdateManyAndReturn = { + achievement_type_lu?: boolean | achievement_type_luDefaultArgs + user?: boolean | userDefaultArgs + } + + export type $user_achievementPayload = { + name: "user_achievement" + objects: { + achievement_type_lu: Prisma.$achievement_type_luPayload + user: Prisma.$userPayload + } + scalars: $Extensions.GetPayloadResult<{ + user_id: Prisma.Decimal + achievement_date: Date + achievement_type_id: Prisma.Decimal + description: string | null + create_date: Date | null + }, ExtArgs["result"]["user_achievement"]> + composites: {} + } + + type user_achievementGetPayload = $Result.GetResult + + type user_achievementCountArgs = + Omit & { + select?: User_achievementCountAggregateInputType | true + } + + export interface user_achievementDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_achievement'], meta: { name: 'user_achievement' } } + /** + * Find zero or one User_achievement that matches the filter. + * @param {user_achievementFindUniqueArgs} args - Arguments to find a User_achievement + * @example + * // Get one User_achievement + * const user_achievement = await prisma.user_achievement.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_achievement that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_achievementFindUniqueOrThrowArgs} args - Arguments to find a User_achievement + * @example + * // Get one User_achievement + * const user_achievement = await prisma.user_achievement.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_achievement 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 {user_achievementFindFirstArgs} args - Arguments to find a User_achievement + * @example + * // Get one User_achievement + * const user_achievement = await prisma.user_achievement.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_achievement 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 {user_achievementFindFirstOrThrowArgs} args - Arguments to find a User_achievement + * @example + * // Get one User_achievement + * const user_achievement = await prisma.user_achievement.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_achievements 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 {user_achievementFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_achievements + * const user_achievements = await prisma.user_achievement.findMany() + * + * // Get first 10 User_achievements + * const user_achievements = await prisma.user_achievement.findMany({ take: 10 }) + * + * // Only select the `user_id` + * const user_achievementWithUser_idOnly = await prisma.user_achievement.findMany({ select: { user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_achievement. + * @param {user_achievementCreateArgs} args - Arguments to create a User_achievement. + * @example + * // Create one User_achievement + * const User_achievement = await prisma.user_achievement.create({ + * data: { + * // ... data to create a User_achievement + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_achievements. + * @param {user_achievementCreateManyArgs} args - Arguments to create many User_achievements. + * @example + * // Create many User_achievements + * const user_achievement = await prisma.user_achievement.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_achievements and returns the data saved in the database. + * @param {user_achievementCreateManyAndReturnArgs} args - Arguments to create many User_achievements. + * @example + * // Create many User_achievements + * const user_achievement = await prisma.user_achievement.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_achievements and only return the `user_id` + * const user_achievementWithUser_idOnly = await prisma.user_achievement.createManyAndReturn({ + * select: { user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_achievement. + * @param {user_achievementDeleteArgs} args - Arguments to delete one User_achievement. + * @example + * // Delete one User_achievement + * const User_achievement = await prisma.user_achievement.delete({ + * where: { + * // ... filter to delete one User_achievement + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_achievement. + * @param {user_achievementUpdateArgs} args - Arguments to update one User_achievement. + * @example + * // Update one User_achievement + * const user_achievement = await prisma.user_achievement.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_achievements. + * @param {user_achievementDeleteManyArgs} args - Arguments to filter User_achievements to delete. + * @example + * // Delete a few User_achievements + * const { count } = await prisma.user_achievement.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_achievements. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_achievementUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_achievements + * const user_achievement = await prisma.user_achievement.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_achievements and returns the data updated in the database. + * @param {user_achievementUpdateManyAndReturnArgs} args - Arguments to update many User_achievements. + * @example + * // Update many User_achievements + * const user_achievement = await prisma.user_achievement.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_achievements and only return the `user_id` + * const user_achievementWithUser_idOnly = await prisma.user_achievement.updateManyAndReturn({ + * select: { user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_achievement. + * @param {user_achievementUpsertArgs} args - Arguments to update or create a User_achievement. + * @example + * // Update or create a User_achievement + * const user_achievement = await prisma.user_achievement.upsert({ + * create: { + * // ... data to create a User_achievement + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_achievement we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_achievementClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_achievements. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_achievementCountArgs} args - Arguments to filter User_achievements to count. + * @example + * // Count the number of User_achievements + * const count = await prisma.user_achievement.count({ + * where: { + * // ... the filter for the User_achievements 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_achievement. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_achievementAggregateArgs} 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_achievement. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_achievementGroupByArgs} 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 user_achievementGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_achievementGroupByArgs['orderBy'] } + : { orderBy?: user_achievementGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_achievementGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_achievement model + */ + readonly fields: user_achievementFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_achievement. + * 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__user_achievementClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + achievement_type_lu = {}>(args?: Subset>): Prisma__achievement_type_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 user_achievement model + */ + interface user_achievementFieldRefs { + readonly user_id: FieldRef<"user_achievement", 'Decimal'> + readonly achievement_date: FieldRef<"user_achievement", 'DateTime'> + readonly achievement_type_id: FieldRef<"user_achievement", 'Decimal'> + readonly description: FieldRef<"user_achievement", 'String'> + readonly create_date: FieldRef<"user_achievement", 'DateTime'> + } + + + // Custom InputTypes + /** + * user_achievement findUnique + */ + export type user_achievementFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * Filter, which user_achievement to fetch. + */ + where: user_achievementWhereUniqueInput + } + + /** + * user_achievement findUniqueOrThrow + */ + export type user_achievementFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * Filter, which user_achievement to fetch. + */ + where: user_achievementWhereUniqueInput + } + + /** + * user_achievement findFirst + */ + export type user_achievementFindFirstArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * Filter, which user_achievement to fetch. + */ + where?: user_achievementWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_achievements to fetch. + */ + orderBy?: user_achievementOrderByWithRelationInput | user_achievementOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_achievements. + */ + cursor?: user_achievementWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_achievements 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` user_achievements. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_achievements. + */ + distinct?: User_achievementScalarFieldEnum | User_achievementScalarFieldEnum[] + } + + /** + * user_achievement findFirstOrThrow + */ + export type user_achievementFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * Filter, which user_achievement to fetch. + */ + where?: user_achievementWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_achievements to fetch. + */ + orderBy?: user_achievementOrderByWithRelationInput | user_achievementOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_achievements. + */ + cursor?: user_achievementWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_achievements 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` user_achievements. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_achievements. + */ + distinct?: User_achievementScalarFieldEnum | User_achievementScalarFieldEnum[] + } + + /** + * user_achievement findMany + */ + export type user_achievementFindManyArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * Filter, which user_achievements to fetch. + */ + where?: user_achievementWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_achievements to fetch. + */ + orderBy?: user_achievementOrderByWithRelationInput | user_achievementOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_achievements. + */ + cursor?: user_achievementWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_achievements 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` user_achievements. + */ + skip?: number + distinct?: User_achievementScalarFieldEnum | User_achievementScalarFieldEnum[] + } + + /** + * user_achievement create + */ + export type user_achievementCreateArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * The data needed to create a user_achievement. + */ + data: XOR + } + + /** + * user_achievement createMany + */ + export type user_achievementCreateManyArgs = { + /** + * The data used to create many user_achievements. + */ + data: user_achievementCreateManyInput | user_achievementCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_achievement createManyAndReturn + */ + export type user_achievementCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * The data used to create many user_achievements. + */ + data: user_achievementCreateManyInput | user_achievementCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementIncludeCreateManyAndReturn | null + } + + /** + * user_achievement update + */ + export type user_achievementUpdateArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * The data needed to update a user_achievement. + */ + data: XOR + /** + * Choose, which user_achievement to update. + */ + where: user_achievementWhereUniqueInput + } + + /** + * user_achievement updateMany + */ + export type user_achievementUpdateManyArgs = { + /** + * The data used to update user_achievements. + */ + data: XOR + /** + * Filter which user_achievements to update + */ + where?: user_achievementWhereInput + /** + * Limit how many user_achievements to update. + */ + limit?: number + } + + /** + * user_achievement updateManyAndReturn + */ + export type user_achievementUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * The data used to update user_achievements. + */ + data: XOR + /** + * Filter which user_achievements to update + */ + where?: user_achievementWhereInput + /** + * Limit how many user_achievements to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementIncludeUpdateManyAndReturn | null + } + + /** + * user_achievement upsert + */ + export type user_achievementUpsertArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * The filter to search for the user_achievement to update in case it exists. + */ + where: user_achievementWhereUniqueInput + /** + * In case the user_achievement found by the `where` argument doesn't exist, create a new user_achievement with this data. + */ + create: XOR + /** + * In case the user_achievement was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_achievement delete + */ + export type user_achievementDeleteArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + /** + * Filter which user_achievement to delete. + */ + where: user_achievementWhereUniqueInput + } + + /** + * user_achievement deleteMany + */ + export type user_achievementDeleteManyArgs = { + /** + * Filter which user_achievements to delete + */ + where?: user_achievementWhereInput + /** + * Limit how many user_achievements to delete. + */ + limit?: number + } + + /** + * user_achievement without action + */ + export type user_achievementDefaultArgs = { + /** + * Select specific fields to fetch from the user_achievement + */ + select?: user_achievementSelect | null + /** + * Omit specific fields from the user_achievement + */ + omit?: user_achievementOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_achievementInclude | null + } + + + /** + * Model user_group_xref + */ + + export type AggregateUser_group_xref = { + _count: User_group_xrefCountAggregateOutputType | null + _avg: User_group_xrefAvgAggregateOutputType | null + _sum: User_group_xrefSumAggregateOutputType | null + _min: User_group_xrefMinAggregateOutputType | null + _max: User_group_xrefMaxAggregateOutputType | null + } + + export type User_group_xrefAvgAggregateOutputType = { + user_group_id: Decimal | null + login_id: Decimal | null + group_id: Decimal | null + create_user_id: Decimal | null + security_status_id: Decimal | null + } + + export type User_group_xrefSumAggregateOutputType = { + user_group_id: Decimal | null + login_id: Decimal | null + group_id: Decimal | null + create_user_id: Decimal | null + security_status_id: Decimal | null + } + + export type User_group_xrefMinAggregateOutputType = { + user_group_id: Decimal | null + login_id: Decimal | null + group_id: Decimal | null + create_user_id: Decimal | null + security_status_id: Decimal | null + create_date: Date | null + } + + export type User_group_xrefMaxAggregateOutputType = { + user_group_id: Decimal | null + login_id: Decimal | null + group_id: Decimal | null + create_user_id: Decimal | null + security_status_id: Decimal | null + create_date: Date | null + } + + export type User_group_xrefCountAggregateOutputType = { + user_group_id: number + login_id: number + group_id: number + create_user_id: number + security_status_id: number + create_date: number + _all: number + } + + + export type User_group_xrefAvgAggregateInputType = { + user_group_id?: true + login_id?: true + group_id?: true + create_user_id?: true + security_status_id?: true + } + + export type User_group_xrefSumAggregateInputType = { + user_group_id?: true + login_id?: true + group_id?: true + create_user_id?: true + security_status_id?: true + } + + export type User_group_xrefMinAggregateInputType = { + user_group_id?: true + login_id?: true + group_id?: true + create_user_id?: true + security_status_id?: true + create_date?: true + } + + export type User_group_xrefMaxAggregateInputType = { + user_group_id?: true + login_id?: true + group_id?: true + create_user_id?: true + security_status_id?: true + create_date?: true + } + + export type User_group_xrefCountAggregateInputType = { + user_group_id?: true + login_id?: true + group_id?: true + create_user_id?: true + security_status_id?: true + create_date?: true + _all?: true + } + + export type User_group_xrefAggregateArgs = { + /** + * Filter which user_group_xref to aggregate. + */ + where?: user_group_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_group_xrefs to fetch. + */ + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_group_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_group_xrefs 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` user_group_xrefs. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_group_xrefs + **/ + _count?: true | User_group_xrefCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_group_xrefAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_group_xrefSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_group_xrefMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_group_xrefMaxAggregateInputType + } + + export type GetUser_group_xrefAggregateType = { + [P in keyof T & keyof AggregateUser_group_xref]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_group_xrefGroupByArgs = { + where?: user_group_xrefWhereInput + orderBy?: user_group_xrefOrderByWithAggregationInput | user_group_xrefOrderByWithAggregationInput[] + by: User_group_xrefScalarFieldEnum[] | User_group_xrefScalarFieldEnum + having?: user_group_xrefScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_group_xrefCountAggregateInputType | true + _avg?: User_group_xrefAvgAggregateInputType + _sum?: User_group_xrefSumAggregateInputType + _min?: User_group_xrefMinAggregateInputType + _max?: User_group_xrefMaxAggregateInputType + } + + export type User_group_xrefGroupByOutputType = { + user_group_id: Decimal + login_id: Decimal | null + group_id: Decimal | null + create_user_id: Decimal | null + security_status_id: Decimal | null + create_date: Date | null + _count: User_group_xrefCountAggregateOutputType | null + _avg: User_group_xrefAvgAggregateOutputType | null + _sum: User_group_xrefSumAggregateOutputType | null + _min: User_group_xrefMinAggregateOutputType | null + _max: User_group_xrefMaxAggregateOutputType | null + } + + type GetUser_group_xrefGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_group_xrefGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_group_xrefSelect = $Extensions.GetSelect<{ + user_group_id?: boolean + login_id?: boolean + group_id?: boolean + create_user_id?: boolean + security_status_id?: boolean + create_date?: boolean + security_user?: boolean | user_group_xref$security_userArgs + security_groups?: boolean | user_group_xref$security_groupsArgs + security_status_lu?: boolean | user_group_xref$security_status_luArgs + }, ExtArgs["result"]["user_group_xref"]> + + export type user_group_xrefSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_group_id?: boolean + login_id?: boolean + group_id?: boolean + create_user_id?: boolean + security_status_id?: boolean + create_date?: boolean + security_user?: boolean | user_group_xref$security_userArgs + security_groups?: boolean | user_group_xref$security_groupsArgs + security_status_lu?: boolean | user_group_xref$security_status_luArgs + }, ExtArgs["result"]["user_group_xref"]> + + export type user_group_xrefSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_group_id?: boolean + login_id?: boolean + group_id?: boolean + create_user_id?: boolean + security_status_id?: boolean + create_date?: boolean + security_user?: boolean | user_group_xref$security_userArgs + security_groups?: boolean | user_group_xref$security_groupsArgs + security_status_lu?: boolean | user_group_xref$security_status_luArgs + }, ExtArgs["result"]["user_group_xref"]> + + export type user_group_xrefSelectScalar = { + user_group_id?: boolean + login_id?: boolean + group_id?: boolean + create_user_id?: boolean + security_status_id?: boolean + create_date?: boolean + } + + export type user_group_xrefOmit = $Extensions.GetOmit<"user_group_id" | "login_id" | "group_id" | "create_user_id" | "security_status_id" | "create_date", ExtArgs["result"]["user_group_xref"]> + export type user_group_xrefInclude = { + security_user?: boolean | user_group_xref$security_userArgs + security_groups?: boolean | user_group_xref$security_groupsArgs + security_status_lu?: boolean | user_group_xref$security_status_luArgs + } + export type user_group_xrefIncludeCreateManyAndReturn = { + security_user?: boolean | user_group_xref$security_userArgs + security_groups?: boolean | user_group_xref$security_groupsArgs + security_status_lu?: boolean | user_group_xref$security_status_luArgs + } + export type user_group_xrefIncludeUpdateManyAndReturn = { + security_user?: boolean | user_group_xref$security_userArgs + security_groups?: boolean | user_group_xref$security_groupsArgs + security_status_lu?: boolean | user_group_xref$security_status_luArgs + } + + export type $user_group_xrefPayload = { + name: "user_group_xref" + objects: { + security_user: Prisma.$security_userPayload | null + security_groups: Prisma.$security_groupsPayload | null + security_status_lu: Prisma.$security_status_luPayload | null + } + scalars: $Extensions.GetPayloadResult<{ + user_group_id: Prisma.Decimal + login_id: Prisma.Decimal | null + group_id: Prisma.Decimal | null + create_user_id: Prisma.Decimal | null + security_status_id: Prisma.Decimal | null + create_date: Date | null + }, ExtArgs["result"]["user_group_xref"]> + composites: {} + } + + type user_group_xrefGetPayload = $Result.GetResult + + type user_group_xrefCountArgs = + Omit & { + select?: User_group_xrefCountAggregateInputType | true + } + + export interface user_group_xrefDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_group_xref'], meta: { name: 'user_group_xref' } } + /** + * Find zero or one User_group_xref that matches the filter. + * @param {user_group_xrefFindUniqueArgs} args - Arguments to find a User_group_xref + * @example + * // Get one User_group_xref + * const user_group_xref = await prisma.user_group_xref.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_group_xref that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_group_xrefFindUniqueOrThrowArgs} args - Arguments to find a User_group_xref + * @example + * // Get one User_group_xref + * const user_group_xref = await prisma.user_group_xref.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_group_xref 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 {user_group_xrefFindFirstArgs} args - Arguments to find a User_group_xref + * @example + * // Get one User_group_xref + * const user_group_xref = await prisma.user_group_xref.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_group_xref 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 {user_group_xrefFindFirstOrThrowArgs} args - Arguments to find a User_group_xref + * @example + * // Get one User_group_xref + * const user_group_xref = await prisma.user_group_xref.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_group_xrefs 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 {user_group_xrefFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_group_xrefs + * const user_group_xrefs = await prisma.user_group_xref.findMany() + * + * // Get first 10 User_group_xrefs + * const user_group_xrefs = await prisma.user_group_xref.findMany({ take: 10 }) + * + * // Only select the `user_group_id` + * const user_group_xrefWithUser_group_idOnly = await prisma.user_group_xref.findMany({ select: { user_group_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_group_xref. + * @param {user_group_xrefCreateArgs} args - Arguments to create a User_group_xref. + * @example + * // Create one User_group_xref + * const User_group_xref = await prisma.user_group_xref.create({ + * data: { + * // ... data to create a User_group_xref + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_group_xrefs. + * @param {user_group_xrefCreateManyArgs} args - Arguments to create many User_group_xrefs. + * @example + * // Create many User_group_xrefs + * const user_group_xref = await prisma.user_group_xref.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_group_xrefs and returns the data saved in the database. + * @param {user_group_xrefCreateManyAndReturnArgs} args - Arguments to create many User_group_xrefs. + * @example + * // Create many User_group_xrefs + * const user_group_xref = await prisma.user_group_xref.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_group_xrefs and only return the `user_group_id` + * const user_group_xrefWithUser_group_idOnly = await prisma.user_group_xref.createManyAndReturn({ + * select: { user_group_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_group_xref. + * @param {user_group_xrefDeleteArgs} args - Arguments to delete one User_group_xref. + * @example + * // Delete one User_group_xref + * const User_group_xref = await prisma.user_group_xref.delete({ + * where: { + * // ... filter to delete one User_group_xref + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_group_xref. + * @param {user_group_xrefUpdateArgs} args - Arguments to update one User_group_xref. + * @example + * // Update one User_group_xref + * const user_group_xref = await prisma.user_group_xref.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_group_xrefs. + * @param {user_group_xrefDeleteManyArgs} args - Arguments to filter User_group_xrefs to delete. + * @example + * // Delete a few User_group_xrefs + * const { count } = await prisma.user_group_xref.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_group_xrefs. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_group_xrefUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_group_xrefs + * const user_group_xref = await prisma.user_group_xref.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_group_xrefs and returns the data updated in the database. + * @param {user_group_xrefUpdateManyAndReturnArgs} args - Arguments to update many User_group_xrefs. + * @example + * // Update many User_group_xrefs + * const user_group_xref = await prisma.user_group_xref.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_group_xrefs and only return the `user_group_id` + * const user_group_xrefWithUser_group_idOnly = await prisma.user_group_xref.updateManyAndReturn({ + * select: { user_group_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_group_xref. + * @param {user_group_xrefUpsertArgs} args - Arguments to update or create a User_group_xref. + * @example + * // Update or create a User_group_xref + * const user_group_xref = await prisma.user_group_xref.upsert({ + * create: { + * // ... data to create a User_group_xref + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_group_xref we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_group_xrefClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_group_xrefs. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_group_xrefCountArgs} args - Arguments to filter User_group_xrefs to count. + * @example + * // Count the number of User_group_xrefs + * const count = await prisma.user_group_xref.count({ + * where: { + * // ... the filter for the User_group_xrefs 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_group_xref. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_group_xrefAggregateArgs} 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_group_xref. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_group_xrefGroupByArgs} 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 user_group_xrefGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_group_xrefGroupByArgs['orderBy'] } + : { orderBy?: user_group_xrefGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_group_xrefGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_group_xref model + */ + readonly fields: user_group_xrefFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_group_xref. + * 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__user_group_xrefClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + security_user = {}>(args?: Subset>): Prisma__security_userClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + security_groups = {}>(args?: Subset>): Prisma__security_groupsClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + security_status_lu = {}>(args?: Subset>): Prisma__security_status_luClient<$Result.GetResult, 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 user_group_xref model + */ + interface user_group_xrefFieldRefs { + readonly user_group_id: FieldRef<"user_group_xref", 'Decimal'> + readonly login_id: FieldRef<"user_group_xref", 'Decimal'> + readonly group_id: FieldRef<"user_group_xref", 'Decimal'> + readonly create_user_id: FieldRef<"user_group_xref", 'Decimal'> + readonly security_status_id: FieldRef<"user_group_xref", 'Decimal'> + readonly create_date: FieldRef<"user_group_xref", 'DateTime'> + } + + + // Custom InputTypes + /** + * user_group_xref findUnique + */ + export type user_group_xrefFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * Filter, which user_group_xref to fetch. + */ + where: user_group_xrefWhereUniqueInput + } + + /** + * user_group_xref findUniqueOrThrow + */ + export type user_group_xrefFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * Filter, which user_group_xref to fetch. + */ + where: user_group_xrefWhereUniqueInput + } + + /** + * user_group_xref findFirst + */ + export type user_group_xrefFindFirstArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * Filter, which user_group_xref to fetch. + */ + where?: user_group_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_group_xrefs to fetch. + */ + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_group_xrefs. + */ + cursor?: user_group_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_group_xrefs 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` user_group_xrefs. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_group_xrefs. + */ + distinct?: User_group_xrefScalarFieldEnum | User_group_xrefScalarFieldEnum[] + } + + /** + * user_group_xref findFirstOrThrow + */ + export type user_group_xrefFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * Filter, which user_group_xref to fetch. + */ + where?: user_group_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_group_xrefs to fetch. + */ + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_group_xrefs. + */ + cursor?: user_group_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_group_xrefs 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` user_group_xrefs. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_group_xrefs. + */ + distinct?: User_group_xrefScalarFieldEnum | User_group_xrefScalarFieldEnum[] + } + + /** + * user_group_xref findMany + */ + export type user_group_xrefFindManyArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * Filter, which user_group_xrefs to fetch. + */ + where?: user_group_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_group_xrefs to fetch. + */ + orderBy?: user_group_xrefOrderByWithRelationInput | user_group_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_group_xrefs. + */ + cursor?: user_group_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_group_xrefs 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` user_group_xrefs. + */ + skip?: number + distinct?: User_group_xrefScalarFieldEnum | User_group_xrefScalarFieldEnum[] + } + + /** + * user_group_xref create + */ + export type user_group_xrefCreateArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * The data needed to create a user_group_xref. + */ + data?: XOR + } + + /** + * user_group_xref createMany + */ + export type user_group_xrefCreateManyArgs = { + /** + * The data used to create many user_group_xrefs. + */ + data: user_group_xrefCreateManyInput | user_group_xrefCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_group_xref createManyAndReturn + */ + export type user_group_xrefCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * The data used to create many user_group_xrefs. + */ + data: user_group_xrefCreateManyInput | user_group_xrefCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefIncludeCreateManyAndReturn | null + } + + /** + * user_group_xref update + */ + export type user_group_xrefUpdateArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * The data needed to update a user_group_xref. + */ + data: XOR + /** + * Choose, which user_group_xref to update. + */ + where: user_group_xrefWhereUniqueInput + } + + /** + * user_group_xref updateMany + */ + export type user_group_xrefUpdateManyArgs = { + /** + * The data used to update user_group_xrefs. + */ + data: XOR + /** + * Filter which user_group_xrefs to update + */ + where?: user_group_xrefWhereInput + /** + * Limit how many user_group_xrefs to update. + */ + limit?: number + } + + /** + * user_group_xref updateManyAndReturn + */ + export type user_group_xrefUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * The data used to update user_group_xrefs. + */ + data: XOR + /** + * Filter which user_group_xrefs to update + */ + where?: user_group_xrefWhereInput + /** + * Limit how many user_group_xrefs to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefIncludeUpdateManyAndReturn | null + } + + /** + * user_group_xref upsert + */ + export type user_group_xrefUpsertArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * The filter to search for the user_group_xref to update in case it exists. + */ + where: user_group_xrefWhereUniqueInput + /** + * In case the user_group_xref found by the `where` argument doesn't exist, create a new user_group_xref with this data. + */ + create: XOR + /** + * In case the user_group_xref was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_group_xref delete + */ + export type user_group_xrefDeleteArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + /** + * Filter which user_group_xref to delete. + */ + where: user_group_xrefWhereUniqueInput + } + + /** + * user_group_xref deleteMany + */ + export type user_group_xrefDeleteManyArgs = { + /** + * Filter which user_group_xrefs to delete + */ + where?: user_group_xrefWhereInput + /** + * Limit how many user_group_xrefs to delete. + */ + limit?: number + } + + /** + * user_group_xref.security_user + */ + export type user_group_xref$security_userArgs = { + /** + * Select specific fields to fetch from the security_user + */ + select?: security_userSelect | null + /** + * Omit specific fields from the security_user + */ + omit?: security_userOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_userInclude | null + where?: security_userWhereInput + } + + /** + * user_group_xref.security_groups + */ + export type user_group_xref$security_groupsArgs = { + /** + * Select specific fields to fetch from the security_groups + */ + select?: security_groupsSelect | null + /** + * Omit specific fields from the security_groups + */ + omit?: security_groupsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_groupsInclude | null + where?: security_groupsWhereInput + } + + /** + * user_group_xref.security_status_lu + */ + export type user_group_xref$security_status_luArgs = { + /** + * Select specific fields to fetch from the security_status_lu + */ + select?: security_status_luSelect | null + /** + * Omit specific fields from the security_status_lu + */ + omit?: security_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: security_status_luInclude | null + where?: security_status_luWhereInput + } + + /** + * user_group_xref without action + */ + export type user_group_xrefDefaultArgs = { + /** + * Select specific fields to fetch from the user_group_xref + */ + select?: user_group_xrefSelect | null + /** + * Omit specific fields from the user_group_xref + */ + omit?: user_group_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_group_xrefInclude | null + } + + + /** + * Model user_otp_email + */ + + export type AggregateUser_otp_email = { + _count: User_otp_emailCountAggregateOutputType | null + _avg: User_otp_emailAvgAggregateOutputType | null + _sum: User_otp_emailSumAggregateOutputType | null + _min: User_otp_emailMinAggregateOutputType | null + _max: User_otp_emailMaxAggregateOutputType | null + } + + export type User_otp_emailAvgAggregateOutputType = { + id: number | null + user_id: Decimal | null + mode: number | null + fail_count: number | null + } + + export type User_otp_emailSumAggregateOutputType = { + id: number | null + user_id: Decimal | null + mode: number | null + fail_count: number | null + } + + export type User_otp_emailMinAggregateOutputType = { + id: number | null + user_id: Decimal | null + mode: number | null + otp: string | null + expire_at: Date | null + resend: boolean | null + fail_count: number | null + } + + export type User_otp_emailMaxAggregateOutputType = { + id: number | null + user_id: Decimal | null + mode: number | null + otp: string | null + expire_at: Date | null + resend: boolean | null + fail_count: number | null + } + + export type User_otp_emailCountAggregateOutputType = { + id: number + user_id: number + mode: number + otp: number + expire_at: number + resend: number + fail_count: number + _all: number + } + + + export type User_otp_emailAvgAggregateInputType = { + id?: true + user_id?: true + mode?: true + fail_count?: true + } + + export type User_otp_emailSumAggregateInputType = { + id?: true + user_id?: true + mode?: true + fail_count?: true + } + + export type User_otp_emailMinAggregateInputType = { + id?: true + user_id?: true + mode?: true + otp?: true + expire_at?: true + resend?: true + fail_count?: true + } + + export type User_otp_emailMaxAggregateInputType = { + id?: true + user_id?: true + mode?: true + otp?: true + expire_at?: true + resend?: true + fail_count?: true + } + + export type User_otp_emailCountAggregateInputType = { + id?: true + user_id?: true + mode?: true + otp?: true + expire_at?: true + resend?: true + fail_count?: true + _all?: true + } + + export type User_otp_emailAggregateArgs = { + /** + * Filter which user_otp_email to aggregate. + */ + where?: user_otp_emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_otp_emails to fetch. + */ + orderBy?: user_otp_emailOrderByWithRelationInput | user_otp_emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_otp_emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_otp_emails 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` user_otp_emails. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_otp_emails + **/ + _count?: true | User_otp_emailCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_otp_emailAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_otp_emailSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_otp_emailMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_otp_emailMaxAggregateInputType + } + + export type GetUser_otp_emailAggregateType = { + [P in keyof T & keyof AggregateUser_otp_email]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_otp_emailGroupByArgs = { + where?: user_otp_emailWhereInput + orderBy?: user_otp_emailOrderByWithAggregationInput | user_otp_emailOrderByWithAggregationInput[] + by: User_otp_emailScalarFieldEnum[] | User_otp_emailScalarFieldEnum + having?: user_otp_emailScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_otp_emailCountAggregateInputType | true + _avg?: User_otp_emailAvgAggregateInputType + _sum?: User_otp_emailSumAggregateInputType + _min?: User_otp_emailMinAggregateInputType + _max?: User_otp_emailMaxAggregateInputType + } + + export type User_otp_emailGroupByOutputType = { + id: number + user_id: Decimal + mode: number + otp: string + expire_at: Date + resend: boolean + fail_count: number + _count: User_otp_emailCountAggregateOutputType | null + _avg: User_otp_emailAvgAggregateOutputType | null + _sum: User_otp_emailSumAggregateOutputType | null + _min: User_otp_emailMinAggregateOutputType | null + _max: User_otp_emailMaxAggregateOutputType | null + } + + type GetUser_otp_emailGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_otp_emailGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_otp_emailSelect = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + mode?: boolean + otp?: boolean + expire_at?: boolean + resend?: boolean + fail_count?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_otp_email"]> + + export type user_otp_emailSelectCreateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + mode?: boolean + otp?: boolean + expire_at?: boolean + resend?: boolean + fail_count?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_otp_email"]> + + export type user_otp_emailSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + user_id?: boolean + mode?: boolean + otp?: boolean + expire_at?: boolean + resend?: boolean + fail_count?: boolean + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_otp_email"]> + + export type user_otp_emailSelectScalar = { + id?: boolean + user_id?: boolean + mode?: boolean + otp?: boolean + expire_at?: boolean + resend?: boolean + fail_count?: boolean + } + + export type user_otp_emailOmit = $Extensions.GetOmit<"id" | "user_id" | "mode" | "otp" | "expire_at" | "resend" | "fail_count", ExtArgs["result"]["user_otp_email"]> + export type user_otp_emailInclude = { + user?: boolean | userDefaultArgs + } + export type user_otp_emailIncludeCreateManyAndReturn = { + user?: boolean | userDefaultArgs + } + export type user_otp_emailIncludeUpdateManyAndReturn = { + user?: boolean | userDefaultArgs + } + + export type $user_otp_emailPayload = { + name: "user_otp_email" + objects: { + user: Prisma.$userPayload + } + scalars: $Extensions.GetPayloadResult<{ + id: number + user_id: Prisma.Decimal + mode: number + otp: string + expire_at: Date + resend: boolean + fail_count: number + }, ExtArgs["result"]["user_otp_email"]> + composites: {} + } + + type user_otp_emailGetPayload = $Result.GetResult + + type user_otp_emailCountArgs = + Omit & { + select?: User_otp_emailCountAggregateInputType | true + } + + export interface user_otp_emailDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_otp_email'], meta: { name: 'user_otp_email' } } + /** + * Find zero or one User_otp_email that matches the filter. + * @param {user_otp_emailFindUniqueArgs} args - Arguments to find a User_otp_email + * @example + * // Get one User_otp_email + * const user_otp_email = await prisma.user_otp_email.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_otp_email that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_otp_emailFindUniqueOrThrowArgs} args - Arguments to find a User_otp_email + * @example + * // Get one User_otp_email + * const user_otp_email = await prisma.user_otp_email.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_otp_email 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 {user_otp_emailFindFirstArgs} args - Arguments to find a User_otp_email + * @example + * // Get one User_otp_email + * const user_otp_email = await prisma.user_otp_email.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_otp_email 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 {user_otp_emailFindFirstOrThrowArgs} args - Arguments to find a User_otp_email + * @example + * // Get one User_otp_email + * const user_otp_email = await prisma.user_otp_email.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_otp_emails 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 {user_otp_emailFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_otp_emails + * const user_otp_emails = await prisma.user_otp_email.findMany() + * + * // Get first 10 User_otp_emails + * const user_otp_emails = await prisma.user_otp_email.findMany({ take: 10 }) + * + * // Only select the `id` + * const user_otp_emailWithIdOnly = await prisma.user_otp_email.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_otp_email. + * @param {user_otp_emailCreateArgs} args - Arguments to create a User_otp_email. + * @example + * // Create one User_otp_email + * const User_otp_email = await prisma.user_otp_email.create({ + * data: { + * // ... data to create a User_otp_email + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_otp_emails. + * @param {user_otp_emailCreateManyArgs} args - Arguments to create many User_otp_emails. + * @example + * // Create many User_otp_emails + * const user_otp_email = await prisma.user_otp_email.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_otp_emails and returns the data saved in the database. + * @param {user_otp_emailCreateManyAndReturnArgs} args - Arguments to create many User_otp_emails. + * @example + * // Create many User_otp_emails + * const user_otp_email = await prisma.user_otp_email.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_otp_emails and only return the `id` + * const user_otp_emailWithIdOnly = await prisma.user_otp_email.createManyAndReturn({ + * select: { id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_otp_email. + * @param {user_otp_emailDeleteArgs} args - Arguments to delete one User_otp_email. + * @example + * // Delete one User_otp_email + * const User_otp_email = await prisma.user_otp_email.delete({ + * where: { + * // ... filter to delete one User_otp_email + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_otp_email. + * @param {user_otp_emailUpdateArgs} args - Arguments to update one User_otp_email. + * @example + * // Update one User_otp_email + * const user_otp_email = await prisma.user_otp_email.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_otp_emails. + * @param {user_otp_emailDeleteManyArgs} args - Arguments to filter User_otp_emails to delete. + * @example + * // Delete a few User_otp_emails + * const { count } = await prisma.user_otp_email.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_otp_emails. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_otp_emailUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_otp_emails + * const user_otp_email = await prisma.user_otp_email.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_otp_emails and returns the data updated in the database. + * @param {user_otp_emailUpdateManyAndReturnArgs} args - Arguments to update many User_otp_emails. + * @example + * // Update many User_otp_emails + * const user_otp_email = await prisma.user_otp_email.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_otp_emails and only return the `id` + * const user_otp_emailWithIdOnly = await prisma.user_otp_email.updateManyAndReturn({ + * select: { id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_otp_email. + * @param {user_otp_emailUpsertArgs} args - Arguments to update or create a User_otp_email. + * @example + * // Update or create a User_otp_email + * const user_otp_email = await prisma.user_otp_email.upsert({ + * create: { + * // ... data to create a User_otp_email + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_otp_email we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_otp_emailClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_otp_emails. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_otp_emailCountArgs} args - Arguments to filter User_otp_emails to count. + * @example + * // Count the number of User_otp_emails + * const count = await prisma.user_otp_email.count({ + * where: { + * // ... the filter for the User_otp_emails 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_otp_email. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_otp_emailAggregateArgs} 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_otp_email. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_otp_emailGroupByArgs} 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 user_otp_emailGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_otp_emailGroupByArgs['orderBy'] } + : { orderBy?: user_otp_emailGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_otp_emailGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_otp_email model + */ + readonly fields: user_otp_emailFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_otp_email. + * 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__user_otp_emailClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 user_otp_email model + */ + interface user_otp_emailFieldRefs { + readonly id: FieldRef<"user_otp_email", 'Int'> + readonly user_id: FieldRef<"user_otp_email", 'Decimal'> + readonly mode: FieldRef<"user_otp_email", 'Int'> + readonly otp: FieldRef<"user_otp_email", 'String'> + readonly expire_at: FieldRef<"user_otp_email", 'DateTime'> + readonly resend: FieldRef<"user_otp_email", 'Boolean'> + readonly fail_count: FieldRef<"user_otp_email", 'Int'> + } + + + // Custom InputTypes + /** + * user_otp_email findUnique + */ + export type user_otp_emailFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * Filter, which user_otp_email to fetch. + */ + where: user_otp_emailWhereUniqueInput + } + + /** + * user_otp_email findUniqueOrThrow + */ + export type user_otp_emailFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * Filter, which user_otp_email to fetch. + */ + where: user_otp_emailWhereUniqueInput + } + + /** + * user_otp_email findFirst + */ + export type user_otp_emailFindFirstArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * Filter, which user_otp_email to fetch. + */ + where?: user_otp_emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_otp_emails to fetch. + */ + orderBy?: user_otp_emailOrderByWithRelationInput | user_otp_emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_otp_emails. + */ + cursor?: user_otp_emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_otp_emails 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` user_otp_emails. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_otp_emails. + */ + distinct?: User_otp_emailScalarFieldEnum | User_otp_emailScalarFieldEnum[] + } + + /** + * user_otp_email findFirstOrThrow + */ + export type user_otp_emailFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * Filter, which user_otp_email to fetch. + */ + where?: user_otp_emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_otp_emails to fetch. + */ + orderBy?: user_otp_emailOrderByWithRelationInput | user_otp_emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_otp_emails. + */ + cursor?: user_otp_emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_otp_emails 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` user_otp_emails. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_otp_emails. + */ + distinct?: User_otp_emailScalarFieldEnum | User_otp_emailScalarFieldEnum[] + } + + /** + * user_otp_email findMany + */ + export type user_otp_emailFindManyArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * Filter, which user_otp_emails to fetch. + */ + where?: user_otp_emailWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_otp_emails to fetch. + */ + orderBy?: user_otp_emailOrderByWithRelationInput | user_otp_emailOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_otp_emails. + */ + cursor?: user_otp_emailWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_otp_emails 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` user_otp_emails. + */ + skip?: number + distinct?: User_otp_emailScalarFieldEnum | User_otp_emailScalarFieldEnum[] + } + + /** + * user_otp_email create + */ + export type user_otp_emailCreateArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * The data needed to create a user_otp_email. + */ + data: XOR + } + + /** + * user_otp_email createMany + */ + export type user_otp_emailCreateManyArgs = { + /** + * The data used to create many user_otp_emails. + */ + data: user_otp_emailCreateManyInput | user_otp_emailCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_otp_email createManyAndReturn + */ + export type user_otp_emailCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * The data used to create many user_otp_emails. + */ + data: user_otp_emailCreateManyInput | user_otp_emailCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailIncludeCreateManyAndReturn | null + } + + /** + * user_otp_email update + */ + export type user_otp_emailUpdateArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * The data needed to update a user_otp_email. + */ + data: XOR + /** + * Choose, which user_otp_email to update. + */ + where: user_otp_emailWhereUniqueInput + } + + /** + * user_otp_email updateMany + */ + export type user_otp_emailUpdateManyArgs = { + /** + * The data used to update user_otp_emails. + */ + data: XOR + /** + * Filter which user_otp_emails to update + */ + where?: user_otp_emailWhereInput + /** + * Limit how many user_otp_emails to update. + */ + limit?: number + } + + /** + * user_otp_email updateManyAndReturn + */ + export type user_otp_emailUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * The data used to update user_otp_emails. + */ + data: XOR + /** + * Filter which user_otp_emails to update + */ + where?: user_otp_emailWhereInput + /** + * Limit how many user_otp_emails to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailIncludeUpdateManyAndReturn | null + } + + /** + * user_otp_email upsert + */ + export type user_otp_emailUpsertArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * The filter to search for the user_otp_email to update in case it exists. + */ + where: user_otp_emailWhereUniqueInput + /** + * In case the user_otp_email found by the `where` argument doesn't exist, create a new user_otp_email with this data. + */ + create: XOR + /** + * In case the user_otp_email was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_otp_email delete + */ + export type user_otp_emailDeleteArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + /** + * Filter which user_otp_email to delete. + */ + where: user_otp_emailWhereUniqueInput + } + + /** + * user_otp_email deleteMany + */ + export type user_otp_emailDeleteManyArgs = { + /** + * Filter which user_otp_emails to delete + */ + where?: user_otp_emailWhereInput + /** + * Limit how many user_otp_emails to delete. + */ + limit?: number + } + + /** + * user_otp_email without action + */ + export type user_otp_emailDefaultArgs = { + /** + * Select specific fields to fetch from the user_otp_email + */ + select?: user_otp_emailSelect | null + /** + * Omit specific fields from the user_otp_email + */ + omit?: user_otp_emailOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_otp_emailInclude | null + } + + + /** + * Model user_social_login + */ + + export type AggregateUser_social_login = { + _count: User_social_loginCountAggregateOutputType | null + _avg: User_social_loginAvgAggregateOutputType | null + _sum: User_social_loginSumAggregateOutputType | null + _min: User_social_loginMinAggregateOutputType | null + _max: User_social_loginMaxAggregateOutputType | null + } + + export type User_social_loginAvgAggregateOutputType = { + user_id: Decimal | null + social_login_provider_id: Decimal | null + } + + export type User_social_loginSumAggregateOutputType = { + user_id: Decimal | null + social_login_provider_id: Decimal | null + } + + export type User_social_loginMinAggregateOutputType = { + social_user_id: string | null + user_id: Decimal | null + social_login_provider_id: Decimal | null + social_user_name: string | null + social_email: string | null + social_email_verified: boolean | null + create_date: Date | null + modify_date: Date | null + } + + export type User_social_loginMaxAggregateOutputType = { + social_user_id: string | null + user_id: Decimal | null + social_login_provider_id: Decimal | null + social_user_name: string | null + social_email: string | null + social_email_verified: boolean | null + create_date: Date | null + modify_date: Date | null + } + + export type User_social_loginCountAggregateOutputType = { + social_user_id: number + user_id: number + social_login_provider_id: number + social_user_name: number + social_email: number + social_email_verified: number + create_date: number + modify_date: number + _all: number + } + + + export type User_social_loginAvgAggregateInputType = { + user_id?: true + social_login_provider_id?: true + } + + export type User_social_loginSumAggregateInputType = { + user_id?: true + social_login_provider_id?: true + } + + export type User_social_loginMinAggregateInputType = { + social_user_id?: true + user_id?: true + social_login_provider_id?: true + social_user_name?: true + social_email?: true + social_email_verified?: true + create_date?: true + modify_date?: true + } + + export type User_social_loginMaxAggregateInputType = { + social_user_id?: true + user_id?: true + social_login_provider_id?: true + social_user_name?: true + social_email?: true + social_email_verified?: true + create_date?: true + modify_date?: true + } + + export type User_social_loginCountAggregateInputType = { + social_user_id?: true + user_id?: true + social_login_provider_id?: true + social_user_name?: true + social_email?: true + social_email_verified?: true + create_date?: true + modify_date?: true + _all?: true + } + + export type User_social_loginAggregateArgs = { + /** + * Filter which user_social_login to aggregate. + */ + where?: user_social_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_social_logins to fetch. + */ + orderBy?: user_social_loginOrderByWithRelationInput | user_social_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_social_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_social_logins 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` user_social_logins. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_social_logins + **/ + _count?: true | User_social_loginCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_social_loginAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_social_loginSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_social_loginMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_social_loginMaxAggregateInputType + } + + export type GetUser_social_loginAggregateType = { + [P in keyof T & keyof AggregateUser_social_login]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_social_loginGroupByArgs = { + where?: user_social_loginWhereInput + orderBy?: user_social_loginOrderByWithAggregationInput | user_social_loginOrderByWithAggregationInput[] + by: User_social_loginScalarFieldEnum[] | User_social_loginScalarFieldEnum + having?: user_social_loginScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_social_loginCountAggregateInputType | true + _avg?: User_social_loginAvgAggregateInputType + _sum?: User_social_loginSumAggregateInputType + _min?: User_social_loginMinAggregateInputType + _max?: User_social_loginMaxAggregateInputType + } + + export type User_social_loginGroupByOutputType = { + social_user_id: string | null + user_id: Decimal + social_login_provider_id: Decimal + social_user_name: string + social_email: string | null + social_email_verified: boolean | null + create_date: Date | null + modify_date: Date | null + _count: User_social_loginCountAggregateOutputType | null + _avg: User_social_loginAvgAggregateOutputType | null + _sum: User_social_loginSumAggregateOutputType | null + _min: User_social_loginMinAggregateOutputType | null + _max: User_social_loginMaxAggregateOutputType | null + } + + type GetUser_social_loginGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_social_loginGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_social_loginSelect = $Extensions.GetSelect<{ + social_user_id?: boolean + user_id?: boolean + social_login_provider_id?: boolean + social_user_name?: boolean + social_email?: boolean + social_email_verified?: boolean + create_date?: boolean + modify_date?: boolean + social_login_provider?: boolean | social_login_providerDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_social_login"]> + + export type user_social_loginSelectCreateManyAndReturn = $Extensions.GetSelect<{ + social_user_id?: boolean + user_id?: boolean + social_login_provider_id?: boolean + social_user_name?: boolean + social_email?: boolean + social_email_verified?: boolean + create_date?: boolean + modify_date?: boolean + social_login_provider?: boolean | social_login_providerDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_social_login"]> + + export type user_social_loginSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + social_user_id?: boolean + user_id?: boolean + social_login_provider_id?: boolean + social_user_name?: boolean + social_email?: boolean + social_email_verified?: boolean + create_date?: boolean + modify_date?: boolean + social_login_provider?: boolean | social_login_providerDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_social_login"]> + + export type user_social_loginSelectScalar = { + social_user_id?: boolean + user_id?: boolean + social_login_provider_id?: boolean + social_user_name?: boolean + social_email?: boolean + social_email_verified?: boolean + create_date?: boolean + modify_date?: boolean + } + + export type user_social_loginOmit = $Extensions.GetOmit<"social_user_id" | "user_id" | "social_login_provider_id" | "social_user_name" | "social_email" | "social_email_verified" | "create_date" | "modify_date", ExtArgs["result"]["user_social_login"]> + export type user_social_loginInclude = { + social_login_provider?: boolean | social_login_providerDefaultArgs + user?: boolean | userDefaultArgs + } + export type user_social_loginIncludeCreateManyAndReturn = { + social_login_provider?: boolean | social_login_providerDefaultArgs + user?: boolean | userDefaultArgs + } + export type user_social_loginIncludeUpdateManyAndReturn = { + social_login_provider?: boolean | social_login_providerDefaultArgs + user?: boolean | userDefaultArgs + } + + export type $user_social_loginPayload = { + name: "user_social_login" + objects: { + social_login_provider: Prisma.$social_login_providerPayload + user: Prisma.$userPayload + } + scalars: $Extensions.GetPayloadResult<{ + social_user_id: string | null + user_id: Prisma.Decimal + social_login_provider_id: Prisma.Decimal + social_user_name: string + social_email: string | null + social_email_verified: boolean | null + create_date: Date | null + modify_date: Date | null + }, ExtArgs["result"]["user_social_login"]> + composites: {} + } + + type user_social_loginGetPayload = $Result.GetResult + + type user_social_loginCountArgs = + Omit & { + select?: User_social_loginCountAggregateInputType | true + } + + export interface user_social_loginDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_social_login'], meta: { name: 'user_social_login' } } + /** + * Find zero or one User_social_login that matches the filter. + * @param {user_social_loginFindUniqueArgs} args - Arguments to find a User_social_login + * @example + * // Get one User_social_login + * const user_social_login = await prisma.user_social_login.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_social_login that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_social_loginFindUniqueOrThrowArgs} args - Arguments to find a User_social_login + * @example + * // Get one User_social_login + * const user_social_login = await prisma.user_social_login.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_social_login 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 {user_social_loginFindFirstArgs} args - Arguments to find a User_social_login + * @example + * // Get one User_social_login + * const user_social_login = await prisma.user_social_login.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_social_login 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 {user_social_loginFindFirstOrThrowArgs} args - Arguments to find a User_social_login + * @example + * // Get one User_social_login + * const user_social_login = await prisma.user_social_login.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_social_logins 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 {user_social_loginFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_social_logins + * const user_social_logins = await prisma.user_social_login.findMany() + * + * // Get first 10 User_social_logins + * const user_social_logins = await prisma.user_social_login.findMany({ take: 10 }) + * + * // Only select the `social_user_id` + * const user_social_loginWithSocial_user_idOnly = await prisma.user_social_login.findMany({ select: { social_user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_social_login. + * @param {user_social_loginCreateArgs} args - Arguments to create a User_social_login. + * @example + * // Create one User_social_login + * const User_social_login = await prisma.user_social_login.create({ + * data: { + * // ... data to create a User_social_login + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_social_logins. + * @param {user_social_loginCreateManyArgs} args - Arguments to create many User_social_logins. + * @example + * // Create many User_social_logins + * const user_social_login = await prisma.user_social_login.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_social_logins and returns the data saved in the database. + * @param {user_social_loginCreateManyAndReturnArgs} args - Arguments to create many User_social_logins. + * @example + * // Create many User_social_logins + * const user_social_login = await prisma.user_social_login.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_social_logins and only return the `social_user_id` + * const user_social_loginWithSocial_user_idOnly = await prisma.user_social_login.createManyAndReturn({ + * select: { social_user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_social_login. + * @param {user_social_loginDeleteArgs} args - Arguments to delete one User_social_login. + * @example + * // Delete one User_social_login + * const User_social_login = await prisma.user_social_login.delete({ + * where: { + * // ... filter to delete one User_social_login + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_social_login. + * @param {user_social_loginUpdateArgs} args - Arguments to update one User_social_login. + * @example + * // Update one User_social_login + * const user_social_login = await prisma.user_social_login.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_social_logins. + * @param {user_social_loginDeleteManyArgs} args - Arguments to filter User_social_logins to delete. + * @example + * // Delete a few User_social_logins + * const { count } = await prisma.user_social_login.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_social_logins. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_social_loginUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_social_logins + * const user_social_login = await prisma.user_social_login.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_social_logins and returns the data updated in the database. + * @param {user_social_loginUpdateManyAndReturnArgs} args - Arguments to update many User_social_logins. + * @example + * // Update many User_social_logins + * const user_social_login = await prisma.user_social_login.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_social_logins and only return the `social_user_id` + * const user_social_loginWithSocial_user_idOnly = await prisma.user_social_login.updateManyAndReturn({ + * select: { social_user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_social_login. + * @param {user_social_loginUpsertArgs} args - Arguments to update or create a User_social_login. + * @example + * // Update or create a User_social_login + * const user_social_login = await prisma.user_social_login.upsert({ + * create: { + * // ... data to create a User_social_login + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_social_login we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_social_loginClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_social_logins. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_social_loginCountArgs} args - Arguments to filter User_social_logins to count. + * @example + * // Count the number of User_social_logins + * const count = await prisma.user_social_login.count({ + * where: { + * // ... the filter for the User_social_logins 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_social_login. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_social_loginAggregateArgs} 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_social_login. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_social_loginGroupByArgs} 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 user_social_loginGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_social_loginGroupByArgs['orderBy'] } + : { orderBy?: user_social_loginGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_social_loginGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_social_login model + */ + readonly fields: user_social_loginFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_social_login. + * 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__user_social_loginClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + social_login_provider = {}>(args?: Subset>): Prisma__social_login_providerClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 user_social_login model + */ + interface user_social_loginFieldRefs { + readonly social_user_id: FieldRef<"user_social_login", 'String'> + readonly user_id: FieldRef<"user_social_login", 'Decimal'> + readonly social_login_provider_id: FieldRef<"user_social_login", 'Decimal'> + readonly social_user_name: FieldRef<"user_social_login", 'String'> + readonly social_email: FieldRef<"user_social_login", 'String'> + readonly social_email_verified: FieldRef<"user_social_login", 'Boolean'> + readonly create_date: FieldRef<"user_social_login", 'DateTime'> + readonly modify_date: FieldRef<"user_social_login", 'DateTime'> + } + + + // Custom InputTypes + /** + * user_social_login findUnique + */ + export type user_social_loginFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * Filter, which user_social_login to fetch. + */ + where: user_social_loginWhereUniqueInput + } + + /** + * user_social_login findUniqueOrThrow + */ + export type user_social_loginFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * Filter, which user_social_login to fetch. + */ + where: user_social_loginWhereUniqueInput + } + + /** + * user_social_login findFirst + */ + export type user_social_loginFindFirstArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * Filter, which user_social_login to fetch. + */ + where?: user_social_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_social_logins to fetch. + */ + orderBy?: user_social_loginOrderByWithRelationInput | user_social_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_social_logins. + */ + cursor?: user_social_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_social_logins 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` user_social_logins. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_social_logins. + */ + distinct?: User_social_loginScalarFieldEnum | User_social_loginScalarFieldEnum[] + } + + /** + * user_social_login findFirstOrThrow + */ + export type user_social_loginFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * Filter, which user_social_login to fetch. + */ + where?: user_social_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_social_logins to fetch. + */ + orderBy?: user_social_loginOrderByWithRelationInput | user_social_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_social_logins. + */ + cursor?: user_social_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_social_logins 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` user_social_logins. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_social_logins. + */ + distinct?: User_social_loginScalarFieldEnum | User_social_loginScalarFieldEnum[] + } + + /** + * user_social_login findMany + */ + export type user_social_loginFindManyArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * Filter, which user_social_logins to fetch. + */ + where?: user_social_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_social_logins to fetch. + */ + orderBy?: user_social_loginOrderByWithRelationInput | user_social_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_social_logins. + */ + cursor?: user_social_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_social_logins 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` user_social_logins. + */ + skip?: number + distinct?: User_social_loginScalarFieldEnum | User_social_loginScalarFieldEnum[] + } + + /** + * user_social_login create + */ + export type user_social_loginCreateArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * The data needed to create a user_social_login. + */ + data: XOR + } + + /** + * user_social_login createMany + */ + export type user_social_loginCreateManyArgs = { + /** + * The data used to create many user_social_logins. + */ + data: user_social_loginCreateManyInput | user_social_loginCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_social_login createManyAndReturn + */ + export type user_social_loginCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * The data used to create many user_social_logins. + */ + data: user_social_loginCreateManyInput | user_social_loginCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginIncludeCreateManyAndReturn | null + } + + /** + * user_social_login update + */ + export type user_social_loginUpdateArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * The data needed to update a user_social_login. + */ + data: XOR + /** + * Choose, which user_social_login to update. + */ + where: user_social_loginWhereUniqueInput + } + + /** + * user_social_login updateMany + */ + export type user_social_loginUpdateManyArgs = { + /** + * The data used to update user_social_logins. + */ + data: XOR + /** + * Filter which user_social_logins to update + */ + where?: user_social_loginWhereInput + /** + * Limit how many user_social_logins to update. + */ + limit?: number + } + + /** + * user_social_login updateManyAndReturn + */ + export type user_social_loginUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * The data used to update user_social_logins. + */ + data: XOR + /** + * Filter which user_social_logins to update + */ + where?: user_social_loginWhereInput + /** + * Limit how many user_social_logins to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginIncludeUpdateManyAndReturn | null + } + + /** + * user_social_login upsert + */ + export type user_social_loginUpsertArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * The filter to search for the user_social_login to update in case it exists. + */ + where: user_social_loginWhereUniqueInput + /** + * In case the user_social_login found by the `where` argument doesn't exist, create a new user_social_login with this data. + */ + create: XOR + /** + * In case the user_social_login was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_social_login delete + */ + export type user_social_loginDeleteArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + /** + * Filter which user_social_login to delete. + */ + where: user_social_loginWhereUniqueInput + } + + /** + * user_social_login deleteMany + */ + export type user_social_loginDeleteManyArgs = { + /** + * Filter which user_social_logins to delete + */ + where?: user_social_loginWhereInput + /** + * Limit how many user_social_logins to delete. + */ + limit?: number + } + + /** + * user_social_login without action + */ + export type user_social_loginDefaultArgs = { + /** + * Select specific fields to fetch from the user_social_login + */ + select?: user_social_loginSelect | null + /** + * Omit specific fields from the user_social_login + */ + omit?: user_social_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_social_loginInclude | null + } + + + /** + * Model user_sso_login + */ + + export type AggregateUser_sso_login = { + _count: User_sso_loginCountAggregateOutputType | null + _avg: User_sso_loginAvgAggregateOutputType | null + _sum: User_sso_loginSumAggregateOutputType | null + _min: User_sso_loginMinAggregateOutputType | null + _max: User_sso_loginMaxAggregateOutputType | null + } + + export type User_sso_loginAvgAggregateOutputType = { + user_id: Decimal | null + provider_id: Decimal | null + } + + export type User_sso_loginSumAggregateOutputType = { + user_id: Decimal | null + provider_id: Decimal | null + } + + export type User_sso_loginMinAggregateOutputType = { + user_id: Decimal | null + sso_user_id: string | null + sso_user_name: string | null + provider_id: Decimal | null + email: string | null + } + + export type User_sso_loginMaxAggregateOutputType = { + user_id: Decimal | null + sso_user_id: string | null + sso_user_name: string | null + provider_id: Decimal | null + email: string | null + } + + export type User_sso_loginCountAggregateOutputType = { + user_id: number + sso_user_id: number + sso_user_name: number + provider_id: number + email: number + _all: number + } + + + export type User_sso_loginAvgAggregateInputType = { + user_id?: true + provider_id?: true + } + + export type User_sso_loginSumAggregateInputType = { + user_id?: true + provider_id?: true + } + + export type User_sso_loginMinAggregateInputType = { + user_id?: true + sso_user_id?: true + sso_user_name?: true + provider_id?: true + email?: true + } + + export type User_sso_loginMaxAggregateInputType = { + user_id?: true + sso_user_id?: true + sso_user_name?: true + provider_id?: true + email?: true + } + + export type User_sso_loginCountAggregateInputType = { + user_id?: true + sso_user_id?: true + sso_user_name?: true + provider_id?: true + email?: true + _all?: true + } + + export type User_sso_loginAggregateArgs = { + /** + * Filter which user_sso_login to aggregate. + */ + where?: user_sso_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_sso_logins to fetch. + */ + orderBy?: user_sso_loginOrderByWithRelationInput | user_sso_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_sso_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_sso_logins 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` user_sso_logins. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_sso_logins + **/ + _count?: true | User_sso_loginCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_sso_loginAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_sso_loginSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_sso_loginMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_sso_loginMaxAggregateInputType + } + + export type GetUser_sso_loginAggregateType = { + [P in keyof T & keyof AggregateUser_sso_login]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_sso_loginGroupByArgs = { + where?: user_sso_loginWhereInput + orderBy?: user_sso_loginOrderByWithAggregationInput | user_sso_loginOrderByWithAggregationInput[] + by: User_sso_loginScalarFieldEnum[] | User_sso_loginScalarFieldEnum + having?: user_sso_loginScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_sso_loginCountAggregateInputType | true + _avg?: User_sso_loginAvgAggregateInputType + _sum?: User_sso_loginSumAggregateInputType + _min?: User_sso_loginMinAggregateInputType + _max?: User_sso_loginMaxAggregateInputType + } + + export type User_sso_loginGroupByOutputType = { + user_id: Decimal + sso_user_id: string + sso_user_name: string | null + provider_id: Decimal + email: string | null + _count: User_sso_loginCountAggregateOutputType | null + _avg: User_sso_loginAvgAggregateOutputType | null + _sum: User_sso_loginSumAggregateOutputType | null + _min: User_sso_loginMinAggregateOutputType | null + _max: User_sso_loginMaxAggregateOutputType | null + } + + type GetUser_sso_loginGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_sso_loginGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_sso_loginSelect = $Extensions.GetSelect<{ + user_id?: boolean + sso_user_id?: boolean + sso_user_name?: boolean + provider_id?: boolean + email?: boolean + sso_login_provider?: boolean | sso_login_providerDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_sso_login"]> + + export type user_sso_loginSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + sso_user_id?: boolean + sso_user_name?: boolean + provider_id?: boolean + email?: boolean + sso_login_provider?: boolean | sso_login_providerDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_sso_login"]> + + export type user_sso_loginSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + sso_user_id?: boolean + sso_user_name?: boolean + provider_id?: boolean + email?: boolean + sso_login_provider?: boolean | sso_login_providerDefaultArgs + user?: boolean | userDefaultArgs + }, ExtArgs["result"]["user_sso_login"]> + + export type user_sso_loginSelectScalar = { + user_id?: boolean + sso_user_id?: boolean + sso_user_name?: boolean + provider_id?: boolean + email?: boolean + } + + export type user_sso_loginOmit = $Extensions.GetOmit<"user_id" | "sso_user_id" | "sso_user_name" | "provider_id" | "email", ExtArgs["result"]["user_sso_login"]> + export type user_sso_loginInclude = { + sso_login_provider?: boolean | sso_login_providerDefaultArgs + user?: boolean | userDefaultArgs + } + export type user_sso_loginIncludeCreateManyAndReturn = { + sso_login_provider?: boolean | sso_login_providerDefaultArgs + user?: boolean | userDefaultArgs + } + export type user_sso_loginIncludeUpdateManyAndReturn = { + sso_login_provider?: boolean | sso_login_providerDefaultArgs + user?: boolean | userDefaultArgs + } + + export type $user_sso_loginPayload = { + name: "user_sso_login" + objects: { + sso_login_provider: Prisma.$sso_login_providerPayload + user: Prisma.$userPayload + } + scalars: $Extensions.GetPayloadResult<{ + user_id: Prisma.Decimal + sso_user_id: string + sso_user_name: string | null + provider_id: Prisma.Decimal + email: string | null + }, ExtArgs["result"]["user_sso_login"]> + composites: {} + } + + type user_sso_loginGetPayload = $Result.GetResult + + type user_sso_loginCountArgs = + Omit & { + select?: User_sso_loginCountAggregateInputType | true + } + + export interface user_sso_loginDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_sso_login'], meta: { name: 'user_sso_login' } } + /** + * Find zero or one User_sso_login that matches the filter. + * @param {user_sso_loginFindUniqueArgs} args - Arguments to find a User_sso_login + * @example + * // Get one User_sso_login + * const user_sso_login = await prisma.user_sso_login.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_sso_login that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_sso_loginFindUniqueOrThrowArgs} args - Arguments to find a User_sso_login + * @example + * // Get one User_sso_login + * const user_sso_login = await prisma.user_sso_login.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_sso_login 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 {user_sso_loginFindFirstArgs} args - Arguments to find a User_sso_login + * @example + * // Get one User_sso_login + * const user_sso_login = await prisma.user_sso_login.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_sso_login 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 {user_sso_loginFindFirstOrThrowArgs} args - Arguments to find a User_sso_login + * @example + * // Get one User_sso_login + * const user_sso_login = await prisma.user_sso_login.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_sso_logins 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 {user_sso_loginFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_sso_logins + * const user_sso_logins = await prisma.user_sso_login.findMany() + * + * // Get first 10 User_sso_logins + * const user_sso_logins = await prisma.user_sso_login.findMany({ take: 10 }) + * + * // Only select the `user_id` + * const user_sso_loginWithUser_idOnly = await prisma.user_sso_login.findMany({ select: { user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_sso_login. + * @param {user_sso_loginCreateArgs} args - Arguments to create a User_sso_login. + * @example + * // Create one User_sso_login + * const User_sso_login = await prisma.user_sso_login.create({ + * data: { + * // ... data to create a User_sso_login + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_sso_logins. + * @param {user_sso_loginCreateManyArgs} args - Arguments to create many User_sso_logins. + * @example + * // Create many User_sso_logins + * const user_sso_login = await prisma.user_sso_login.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_sso_logins and returns the data saved in the database. + * @param {user_sso_loginCreateManyAndReturnArgs} args - Arguments to create many User_sso_logins. + * @example + * // Create many User_sso_logins + * const user_sso_login = await prisma.user_sso_login.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_sso_logins and only return the `user_id` + * const user_sso_loginWithUser_idOnly = await prisma.user_sso_login.createManyAndReturn({ + * select: { user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_sso_login. + * @param {user_sso_loginDeleteArgs} args - Arguments to delete one User_sso_login. + * @example + * // Delete one User_sso_login + * const User_sso_login = await prisma.user_sso_login.delete({ + * where: { + * // ... filter to delete one User_sso_login + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_sso_login. + * @param {user_sso_loginUpdateArgs} args - Arguments to update one User_sso_login. + * @example + * // Update one User_sso_login + * const user_sso_login = await prisma.user_sso_login.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_sso_logins. + * @param {user_sso_loginDeleteManyArgs} args - Arguments to filter User_sso_logins to delete. + * @example + * // Delete a few User_sso_logins + * const { count } = await prisma.user_sso_login.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_sso_logins. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_sso_loginUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_sso_logins + * const user_sso_login = await prisma.user_sso_login.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_sso_logins and returns the data updated in the database. + * @param {user_sso_loginUpdateManyAndReturnArgs} args - Arguments to update many User_sso_logins. + * @example + * // Update many User_sso_logins + * const user_sso_login = await prisma.user_sso_login.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_sso_logins and only return the `user_id` + * const user_sso_loginWithUser_idOnly = await prisma.user_sso_login.updateManyAndReturn({ + * select: { user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_sso_login. + * @param {user_sso_loginUpsertArgs} args - Arguments to update or create a User_sso_login. + * @example + * // Update or create a User_sso_login + * const user_sso_login = await prisma.user_sso_login.upsert({ + * create: { + * // ... data to create a User_sso_login + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_sso_login we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_sso_loginClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_sso_logins. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_sso_loginCountArgs} args - Arguments to filter User_sso_logins to count. + * @example + * // Count the number of User_sso_logins + * const count = await prisma.user_sso_login.count({ + * where: { + * // ... the filter for the User_sso_logins 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_sso_login. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_sso_loginAggregateArgs} 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_sso_login. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_sso_loginGroupByArgs} 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 user_sso_loginGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_sso_loginGroupByArgs['orderBy'] } + : { orderBy?: user_sso_loginGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_sso_loginGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_sso_login model + */ + readonly fields: user_sso_loginFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_sso_login. + * 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__user_sso_loginClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + sso_login_provider = {}>(args?: Subset>): Prisma__sso_login_providerClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, 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 user_sso_login model + */ + interface user_sso_loginFieldRefs { + readonly user_id: FieldRef<"user_sso_login", 'Decimal'> + readonly sso_user_id: FieldRef<"user_sso_login", 'String'> + readonly sso_user_name: FieldRef<"user_sso_login", 'String'> + readonly provider_id: FieldRef<"user_sso_login", 'Decimal'> + readonly email: FieldRef<"user_sso_login", 'String'> + } + + + // Custom InputTypes + /** + * user_sso_login findUnique + */ + export type user_sso_loginFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * Filter, which user_sso_login to fetch. + */ + where: user_sso_loginWhereUniqueInput + } + + /** + * user_sso_login findUniqueOrThrow + */ + export type user_sso_loginFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * Filter, which user_sso_login to fetch. + */ + where: user_sso_loginWhereUniqueInput + } + + /** + * user_sso_login findFirst + */ + export type user_sso_loginFindFirstArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * Filter, which user_sso_login to fetch. + */ + where?: user_sso_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_sso_logins to fetch. + */ + orderBy?: user_sso_loginOrderByWithRelationInput | user_sso_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_sso_logins. + */ + cursor?: user_sso_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_sso_logins 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` user_sso_logins. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_sso_logins. + */ + distinct?: User_sso_loginScalarFieldEnum | User_sso_loginScalarFieldEnum[] + } + + /** + * user_sso_login findFirstOrThrow + */ + export type user_sso_loginFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * Filter, which user_sso_login to fetch. + */ + where?: user_sso_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_sso_logins to fetch. + */ + orderBy?: user_sso_loginOrderByWithRelationInput | user_sso_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_sso_logins. + */ + cursor?: user_sso_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_sso_logins 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` user_sso_logins. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_sso_logins. + */ + distinct?: User_sso_loginScalarFieldEnum | User_sso_loginScalarFieldEnum[] + } + + /** + * user_sso_login findMany + */ + export type user_sso_loginFindManyArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * Filter, which user_sso_logins to fetch. + */ + where?: user_sso_loginWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_sso_logins to fetch. + */ + orderBy?: user_sso_loginOrderByWithRelationInput | user_sso_loginOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_sso_logins. + */ + cursor?: user_sso_loginWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_sso_logins 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` user_sso_logins. + */ + skip?: number + distinct?: User_sso_loginScalarFieldEnum | User_sso_loginScalarFieldEnum[] + } + + /** + * user_sso_login create + */ + export type user_sso_loginCreateArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * The data needed to create a user_sso_login. + */ + data: XOR + } + + /** + * user_sso_login createMany + */ + export type user_sso_loginCreateManyArgs = { + /** + * The data used to create many user_sso_logins. + */ + data: user_sso_loginCreateManyInput | user_sso_loginCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_sso_login createManyAndReturn + */ + export type user_sso_loginCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * The data used to create many user_sso_logins. + */ + data: user_sso_loginCreateManyInput | user_sso_loginCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginIncludeCreateManyAndReturn | null + } + + /** + * user_sso_login update + */ + export type user_sso_loginUpdateArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * The data needed to update a user_sso_login. + */ + data: XOR + /** + * Choose, which user_sso_login to update. + */ + where: user_sso_loginWhereUniqueInput + } + + /** + * user_sso_login updateMany + */ + export type user_sso_loginUpdateManyArgs = { + /** + * The data used to update user_sso_logins. + */ + data: XOR + /** + * Filter which user_sso_logins to update + */ + where?: user_sso_loginWhereInput + /** + * Limit how many user_sso_logins to update. + */ + limit?: number + } + + /** + * user_sso_login updateManyAndReturn + */ + export type user_sso_loginUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * The data used to update user_sso_logins. + */ + data: XOR + /** + * Filter which user_sso_logins to update + */ + where?: user_sso_loginWhereInput + /** + * Limit how many user_sso_logins to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginIncludeUpdateManyAndReturn | null + } + + /** + * user_sso_login upsert + */ + export type user_sso_loginUpsertArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * The filter to search for the user_sso_login to update in case it exists. + */ + where: user_sso_loginWhereUniqueInput + /** + * In case the user_sso_login found by the `where` argument doesn't exist, create a new user_sso_login with this data. + */ + create: XOR + /** + * In case the user_sso_login was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_sso_login delete + */ + export type user_sso_loginDeleteArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + /** + * Filter which user_sso_login to delete. + */ + where: user_sso_loginWhereUniqueInput + } + + /** + * user_sso_login deleteMany + */ + export type user_sso_loginDeleteManyArgs = { + /** + * Filter which user_sso_logins to delete + */ + where?: user_sso_loginWhereInput + /** + * Limit how many user_sso_logins to delete. + */ + limit?: number + } + + /** + * user_sso_login without action + */ + export type user_sso_loginDefaultArgs = { + /** + * Select specific fields to fetch from the user_sso_login + */ + select?: user_sso_loginSelect | null + /** + * Omit specific fields from the user_sso_login + */ + omit?: user_sso_loginOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_sso_loginInclude | null + } + + + /** + * Model user_status + */ + + export type AggregateUser_status = { + _count: User_statusCountAggregateOutputType | null + _avg: User_statusAvgAggregateOutputType | null + _sum: User_statusSumAggregateOutputType | null + _min: User_statusMinAggregateOutputType | null + _max: User_statusMaxAggregateOutputType | null + } + + export type User_statusAvgAggregateOutputType = { + user_id: Decimal | null + user_status_type_id: Decimal | null + user_status_id: Decimal | null + } + + export type User_statusSumAggregateOutputType = { + user_id: Decimal | null + user_status_type_id: Decimal | null + user_status_id: Decimal | null + } + + export type User_statusMinAggregateOutputType = { + user_id: Decimal | null + user_status_type_id: Decimal | null + user_status_id: Decimal | null + } + + export type User_statusMaxAggregateOutputType = { + user_id: Decimal | null + user_status_type_id: Decimal | null + user_status_id: Decimal | null + } + + export type User_statusCountAggregateOutputType = { + user_id: number + user_status_type_id: number + user_status_id: number + _all: number + } + + + export type User_statusAvgAggregateInputType = { + user_id?: true + user_status_type_id?: true + user_status_id?: true + } + + export type User_statusSumAggregateInputType = { + user_id?: true + user_status_type_id?: true + user_status_id?: true + } + + export type User_statusMinAggregateInputType = { + user_id?: true + user_status_type_id?: true + user_status_id?: true + } + + export type User_statusMaxAggregateInputType = { + user_id?: true + user_status_type_id?: true + user_status_id?: true + } + + export type User_statusCountAggregateInputType = { + user_id?: true + user_status_type_id?: true + user_status_id?: true + _all?: true + } + + export type User_statusAggregateArgs = { + /** + * Filter which user_status to aggregate. + */ + where?: user_statusWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_statuses to fetch. + */ + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_statusWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_statuses 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` user_statuses. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_statuses + **/ + _count?: true | User_statusCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_statusAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_statusSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_statusMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_statusMaxAggregateInputType + } + + export type GetUser_statusAggregateType = { + [P in keyof T & keyof AggregateUser_status]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_statusGroupByArgs = { + where?: user_statusWhereInput + orderBy?: user_statusOrderByWithAggregationInput | user_statusOrderByWithAggregationInput[] + by: User_statusScalarFieldEnum[] | User_statusScalarFieldEnum + having?: user_statusScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_statusCountAggregateInputType | true + _avg?: User_statusAvgAggregateInputType + _sum?: User_statusSumAggregateInputType + _min?: User_statusMinAggregateInputType + _max?: User_statusMaxAggregateInputType + } + + export type User_statusGroupByOutputType = { + user_id: Decimal + user_status_type_id: Decimal + user_status_id: Decimal | null + _count: User_statusCountAggregateOutputType | null + _avg: User_statusAvgAggregateOutputType | null + _sum: User_statusSumAggregateOutputType | null + _min: User_statusMinAggregateOutputType | null + _max: User_statusMaxAggregateOutputType | null + } + + type GetUser_statusGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_statusGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_statusSelect = $Extensions.GetSelect<{ + user_id?: boolean + user_status_type_id?: boolean + user_status_id?: boolean + user?: boolean | userDefaultArgs + user_status_lu?: boolean | user_status$user_status_luArgs + user_status_type_lu?: boolean | user_status_type_luDefaultArgs + }, ExtArgs["result"]["user_status"]> + + export type user_statusSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + user_status_type_id?: boolean + user_status_id?: boolean + user?: boolean | userDefaultArgs + user_status_lu?: boolean | user_status$user_status_luArgs + user_status_type_lu?: boolean | user_status_type_luDefaultArgs + }, ExtArgs["result"]["user_status"]> + + export type user_statusSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + user_status_type_id?: boolean + user_status_id?: boolean + user?: boolean | userDefaultArgs + user_status_lu?: boolean | user_status$user_status_luArgs + user_status_type_lu?: boolean | user_status_type_luDefaultArgs + }, ExtArgs["result"]["user_status"]> + + export type user_statusSelectScalar = { + user_id?: boolean + user_status_type_id?: boolean + user_status_id?: boolean + } + + export type user_statusOmit = $Extensions.GetOmit<"user_id" | "user_status_type_id" | "user_status_id", ExtArgs["result"]["user_status"]> + export type user_statusInclude = { + user?: boolean | userDefaultArgs + user_status_lu?: boolean | user_status$user_status_luArgs + user_status_type_lu?: boolean | user_status_type_luDefaultArgs + } + export type user_statusIncludeCreateManyAndReturn = { + user?: boolean | userDefaultArgs + user_status_lu?: boolean | user_status$user_status_luArgs + user_status_type_lu?: boolean | user_status_type_luDefaultArgs + } + export type user_statusIncludeUpdateManyAndReturn = { + user?: boolean | userDefaultArgs + user_status_lu?: boolean | user_status$user_status_luArgs + user_status_type_lu?: boolean | user_status_type_luDefaultArgs + } + + export type $user_statusPayload = { + name: "user_status" + objects: { + user: Prisma.$userPayload + user_status_lu: Prisma.$user_status_luPayload | null + user_status_type_lu: Prisma.$user_status_type_luPayload + } + scalars: $Extensions.GetPayloadResult<{ + user_id: Prisma.Decimal + user_status_type_id: Prisma.Decimal + user_status_id: Prisma.Decimal | null + }, ExtArgs["result"]["user_status"]> + composites: {} + } + + type user_statusGetPayload = $Result.GetResult + + type user_statusCountArgs = + Omit & { + select?: User_statusCountAggregateInputType | true + } + + export interface user_statusDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_status'], meta: { name: 'user_status' } } + /** + * Find zero or one User_status that matches the filter. + * @param {user_statusFindUniqueArgs} args - Arguments to find a User_status + * @example + * // Get one User_status + * const user_status = await prisma.user_status.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_status that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_statusFindUniqueOrThrowArgs} args - Arguments to find a User_status + * @example + * // Get one User_status + * const user_status = await prisma.user_status.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_status 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 {user_statusFindFirstArgs} args - Arguments to find a User_status + * @example + * // Get one User_status + * const user_status = await prisma.user_status.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_status 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 {user_statusFindFirstOrThrowArgs} args - Arguments to find a User_status + * @example + * // Get one User_status + * const user_status = await prisma.user_status.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_statuses 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 {user_statusFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_statuses + * const user_statuses = await prisma.user_status.findMany() + * + * // Get first 10 User_statuses + * const user_statuses = await prisma.user_status.findMany({ take: 10 }) + * + * // Only select the `user_id` + * const user_statusWithUser_idOnly = await prisma.user_status.findMany({ select: { user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_status. + * @param {user_statusCreateArgs} args - Arguments to create a User_status. + * @example + * // Create one User_status + * const User_status = await prisma.user_status.create({ + * data: { + * // ... data to create a User_status + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_statuses. + * @param {user_statusCreateManyArgs} args - Arguments to create many User_statuses. + * @example + * // Create many User_statuses + * const user_status = await prisma.user_status.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_statuses and returns the data saved in the database. + * @param {user_statusCreateManyAndReturnArgs} args - Arguments to create many User_statuses. + * @example + * // Create many User_statuses + * const user_status = await prisma.user_status.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_statuses and only return the `user_id` + * const user_statusWithUser_idOnly = await prisma.user_status.createManyAndReturn({ + * select: { user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_status. + * @param {user_statusDeleteArgs} args - Arguments to delete one User_status. + * @example + * // Delete one User_status + * const User_status = await prisma.user_status.delete({ + * where: { + * // ... filter to delete one User_status + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_status. + * @param {user_statusUpdateArgs} args - Arguments to update one User_status. + * @example + * // Update one User_status + * const user_status = await prisma.user_status.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_statuses. + * @param {user_statusDeleteManyArgs} args - Arguments to filter User_statuses to delete. + * @example + * // Delete a few User_statuses + * const { count } = await prisma.user_status.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_statuses. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_statusUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_statuses + * const user_status = await prisma.user_status.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_statuses and returns the data updated in the database. + * @param {user_statusUpdateManyAndReturnArgs} args - Arguments to update many User_statuses. + * @example + * // Update many User_statuses + * const user_status = await prisma.user_status.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_statuses and only return the `user_id` + * const user_statusWithUser_idOnly = await prisma.user_status.updateManyAndReturn({ + * select: { user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_status. + * @param {user_statusUpsertArgs} args - Arguments to update or create a User_status. + * @example + * // Update or create a User_status + * const user_status = await prisma.user_status.upsert({ + * create: { + * // ... data to create a User_status + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_status we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_statusClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_statuses. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_statusCountArgs} args - Arguments to filter User_statuses to count. + * @example + * // Count the number of User_statuses + * const count = await prisma.user_status.count({ + * where: { + * // ... the filter for the User_statuses 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_status. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_statusAggregateArgs} 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_status. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_statusGroupByArgs} 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 user_statusGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_statusGroupByArgs['orderBy'] } + : { orderBy?: user_statusGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_statusGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_status model + */ + readonly fields: user_statusFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_status. + * 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__user_statusClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + user_status_lu = {}>(args?: Subset>): Prisma__user_status_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + user_status_type_lu = {}>(args?: Subset>): Prisma__user_status_type_luClient<$Result.GetResult, 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 user_status model + */ + interface user_statusFieldRefs { + readonly user_id: FieldRef<"user_status", 'Decimal'> + readonly user_status_type_id: FieldRef<"user_status", 'Decimal'> + readonly user_status_id: FieldRef<"user_status", 'Decimal'> + } + + + // Custom InputTypes + /** + * user_status findUnique + */ + export type user_statusFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * Filter, which user_status to fetch. + */ + where: user_statusWhereUniqueInput + } + + /** + * user_status findUniqueOrThrow + */ + export type user_statusFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * Filter, which user_status to fetch. + */ + where: user_statusWhereUniqueInput + } + + /** + * user_status findFirst + */ + export type user_statusFindFirstArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * Filter, which user_status to fetch. + */ + where?: user_statusWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_statuses to fetch. + */ + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_statuses. + */ + cursor?: user_statusWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_statuses 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` user_statuses. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_statuses. + */ + distinct?: User_statusScalarFieldEnum | User_statusScalarFieldEnum[] + } + + /** + * user_status findFirstOrThrow + */ + export type user_statusFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * Filter, which user_status to fetch. + */ + where?: user_statusWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_statuses to fetch. + */ + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_statuses. + */ + cursor?: user_statusWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_statuses 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` user_statuses. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_statuses. + */ + distinct?: User_statusScalarFieldEnum | User_statusScalarFieldEnum[] + } + + /** + * user_status findMany + */ + export type user_statusFindManyArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * Filter, which user_statuses to fetch. + */ + where?: user_statusWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_statuses to fetch. + */ + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_statuses. + */ + cursor?: user_statusWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_statuses 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` user_statuses. + */ + skip?: number + distinct?: User_statusScalarFieldEnum | User_statusScalarFieldEnum[] + } + + /** + * user_status create + */ + export type user_statusCreateArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * The data needed to create a user_status. + */ + data: XOR + } + + /** + * user_status createMany + */ + export type user_statusCreateManyArgs = { + /** + * The data used to create many user_statuses. + */ + data: user_statusCreateManyInput | user_statusCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_status createManyAndReturn + */ + export type user_statusCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * The data used to create many user_statuses. + */ + data: user_statusCreateManyInput | user_statusCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusIncludeCreateManyAndReturn | null + } + + /** + * user_status update + */ + export type user_statusUpdateArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * The data needed to update a user_status. + */ + data: XOR + /** + * Choose, which user_status to update. + */ + where: user_statusWhereUniqueInput + } + + /** + * user_status updateMany + */ + export type user_statusUpdateManyArgs = { + /** + * The data used to update user_statuses. + */ + data: XOR + /** + * Filter which user_statuses to update + */ + where?: user_statusWhereInput + /** + * Limit how many user_statuses to update. + */ + limit?: number + } + + /** + * user_status updateManyAndReturn + */ + export type user_statusUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * The data used to update user_statuses. + */ + data: XOR + /** + * Filter which user_statuses to update + */ + where?: user_statusWhereInput + /** + * Limit how many user_statuses to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusIncludeUpdateManyAndReturn | null + } + + /** + * user_status upsert + */ + export type user_statusUpsertArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * The filter to search for the user_status to update in case it exists. + */ + where: user_statusWhereUniqueInput + /** + * In case the user_status found by the `where` argument doesn't exist, create a new user_status with this data. + */ + create: XOR + /** + * In case the user_status was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_status delete + */ + export type user_statusDeleteArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + /** + * Filter which user_status to delete. + */ + where: user_statusWhereUniqueInput + } + + /** + * user_status deleteMany + */ + export type user_statusDeleteManyArgs = { + /** + * Filter which user_statuses to delete + */ + where?: user_statusWhereInput + /** + * Limit how many user_statuses to delete. + */ + limit?: number + } + + /** + * user_status.user_status_lu + */ + export type user_status$user_status_luArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + where?: user_status_luWhereInput + } + + /** + * user_status without action + */ + export type user_statusDefaultArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + } + + + /** + * Model user_status_lu + */ + + export type AggregateUser_status_lu = { + _count: User_status_luCountAggregateOutputType | null + _avg: User_status_luAvgAggregateOutputType | null + _sum: User_status_luSumAggregateOutputType | null + _min: User_status_luMinAggregateOutputType | null + _max: User_status_luMaxAggregateOutputType | null + } + + export type User_status_luAvgAggregateOutputType = { + user_status_id: Decimal | null + } + + export type User_status_luSumAggregateOutputType = { + user_status_id: Decimal | null + } + + export type User_status_luMinAggregateOutputType = { + user_status_id: Decimal | null + description: string | null + } + + export type User_status_luMaxAggregateOutputType = { + user_status_id: Decimal | null + description: string | null + } + + export type User_status_luCountAggregateOutputType = { + user_status_id: number + description: number + _all: number + } + + + export type User_status_luAvgAggregateInputType = { + user_status_id?: true + } + + export type User_status_luSumAggregateInputType = { + user_status_id?: true + } + + export type User_status_luMinAggregateInputType = { + user_status_id?: true + description?: true + } + + export type User_status_luMaxAggregateInputType = { + user_status_id?: true + description?: true + } + + export type User_status_luCountAggregateInputType = { + user_status_id?: true + description?: true + _all?: true + } + + export type User_status_luAggregateArgs = { + /** + * Filter which user_status_lu to aggregate. + */ + where?: user_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_lus to fetch. + */ + orderBy?: user_status_luOrderByWithRelationInput | user_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_lus 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` user_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_status_lus + **/ + _count?: true | User_status_luCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_status_luAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_status_luSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_status_luMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_status_luMaxAggregateInputType + } + + export type GetUser_status_luAggregateType = { + [P in keyof T & keyof AggregateUser_status_lu]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_status_luGroupByArgs = { + where?: user_status_luWhereInput + orderBy?: user_status_luOrderByWithAggregationInput | user_status_luOrderByWithAggregationInput[] + by: User_status_luScalarFieldEnum[] | User_status_luScalarFieldEnum + having?: user_status_luScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_status_luCountAggregateInputType | true + _avg?: User_status_luAvgAggregateInputType + _sum?: User_status_luSumAggregateInputType + _min?: User_status_luMinAggregateInputType + _max?: User_status_luMaxAggregateInputType + } + + export type User_status_luGroupByOutputType = { + user_status_id: Decimal + description: string | null + _count: User_status_luCountAggregateOutputType | null + _avg: User_status_luAvgAggregateOutputType | null + _sum: User_status_luSumAggregateOutputType | null + _min: User_status_luMinAggregateOutputType | null + _max: User_status_luMaxAggregateOutputType | null + } + + type GetUser_status_luGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_status_luGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_status_luSelect = $Extensions.GetSelect<{ + user_status_id?: boolean + description?: boolean + user_status?: boolean | user_status_lu$user_statusArgs + _count?: boolean | User_status_luCountOutputTypeDefaultArgs + }, ExtArgs["result"]["user_status_lu"]> + + export type user_status_luSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_status_id?: boolean + description?: boolean + }, ExtArgs["result"]["user_status_lu"]> + + export type user_status_luSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_status_id?: boolean + description?: boolean + }, ExtArgs["result"]["user_status_lu"]> + + export type user_status_luSelectScalar = { + user_status_id?: boolean + description?: boolean + } + + export type user_status_luOmit = $Extensions.GetOmit<"user_status_id" | "description", ExtArgs["result"]["user_status_lu"]> + export type user_status_luInclude = { + user_status?: boolean | user_status_lu$user_statusArgs + _count?: boolean | User_status_luCountOutputTypeDefaultArgs + } + export type user_status_luIncludeCreateManyAndReturn = {} + export type user_status_luIncludeUpdateManyAndReturn = {} + + export type $user_status_luPayload = { + name: "user_status_lu" + objects: { + user_status: Prisma.$user_statusPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + user_status_id: Prisma.Decimal + description: string | null + }, ExtArgs["result"]["user_status_lu"]> + composites: {} + } + + type user_status_luGetPayload = $Result.GetResult + + type user_status_luCountArgs = + Omit & { + select?: User_status_luCountAggregateInputType | true + } + + export interface user_status_luDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_status_lu'], meta: { name: 'user_status_lu' } } + /** + * Find zero or one User_status_lu that matches the filter. + * @param {user_status_luFindUniqueArgs} args - Arguments to find a User_status_lu + * @example + * // Get one User_status_lu + * const user_status_lu = await prisma.user_status_lu.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_status_lu that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_status_luFindUniqueOrThrowArgs} args - Arguments to find a User_status_lu + * @example + * // Get one User_status_lu + * const user_status_lu = await prisma.user_status_lu.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_status_lu 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 {user_status_luFindFirstArgs} args - Arguments to find a User_status_lu + * @example + * // Get one User_status_lu + * const user_status_lu = await prisma.user_status_lu.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_status_lu 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 {user_status_luFindFirstOrThrowArgs} args - Arguments to find a User_status_lu + * @example + * // Get one User_status_lu + * const user_status_lu = await prisma.user_status_lu.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_status_lus 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 {user_status_luFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_status_lus + * const user_status_lus = await prisma.user_status_lu.findMany() + * + * // Get first 10 User_status_lus + * const user_status_lus = await prisma.user_status_lu.findMany({ take: 10 }) + * + * // Only select the `user_status_id` + * const user_status_luWithUser_status_idOnly = await prisma.user_status_lu.findMany({ select: { user_status_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_status_lu. + * @param {user_status_luCreateArgs} args - Arguments to create a User_status_lu. + * @example + * // Create one User_status_lu + * const User_status_lu = await prisma.user_status_lu.create({ + * data: { + * // ... data to create a User_status_lu + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_status_lus. + * @param {user_status_luCreateManyArgs} args - Arguments to create many User_status_lus. + * @example + * // Create many User_status_lus + * const user_status_lu = await prisma.user_status_lu.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_status_lus and returns the data saved in the database. + * @param {user_status_luCreateManyAndReturnArgs} args - Arguments to create many User_status_lus. + * @example + * // Create many User_status_lus + * const user_status_lu = await prisma.user_status_lu.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_status_lus and only return the `user_status_id` + * const user_status_luWithUser_status_idOnly = await prisma.user_status_lu.createManyAndReturn({ + * select: { user_status_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_status_lu. + * @param {user_status_luDeleteArgs} args - Arguments to delete one User_status_lu. + * @example + * // Delete one User_status_lu + * const User_status_lu = await prisma.user_status_lu.delete({ + * where: { + * // ... filter to delete one User_status_lu + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_status_lu. + * @param {user_status_luUpdateArgs} args - Arguments to update one User_status_lu. + * @example + * // Update one User_status_lu + * const user_status_lu = await prisma.user_status_lu.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_status_lus. + * @param {user_status_luDeleteManyArgs} args - Arguments to filter User_status_lus to delete. + * @example + * // Delete a few User_status_lus + * const { count } = await prisma.user_status_lu.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_status_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_status_luUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_status_lus + * const user_status_lu = await prisma.user_status_lu.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_status_lus and returns the data updated in the database. + * @param {user_status_luUpdateManyAndReturnArgs} args - Arguments to update many User_status_lus. + * @example + * // Update many User_status_lus + * const user_status_lu = await prisma.user_status_lu.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_status_lus and only return the `user_status_id` + * const user_status_luWithUser_status_idOnly = await prisma.user_status_lu.updateManyAndReturn({ + * select: { user_status_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_status_lu. + * @param {user_status_luUpsertArgs} args - Arguments to update or create a User_status_lu. + * @example + * // Update or create a User_status_lu + * const user_status_lu = await prisma.user_status_lu.upsert({ + * create: { + * // ... data to create a User_status_lu + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_status_lu we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_status_luClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_status_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_status_luCountArgs} args - Arguments to filter User_status_lus to count. + * @example + * // Count the number of User_status_lus + * const count = await prisma.user_status_lu.count({ + * where: { + * // ... the filter for the User_status_lus 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_status_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_status_luAggregateArgs} 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_status_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_status_luGroupByArgs} 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 user_status_luGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_status_luGroupByArgs['orderBy'] } + : { orderBy?: user_status_luGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_status_luGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_status_lu model + */ + readonly fields: user_status_luFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_status_lu. + * 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__user_status_luClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_status = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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_status_lu model + */ + interface user_status_luFieldRefs { + readonly user_status_id: FieldRef<"user_status_lu", 'Decimal'> + readonly description: FieldRef<"user_status_lu", 'String'> + } + + + // Custom InputTypes + /** + * user_status_lu findUnique + */ + export type user_status_luFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * Filter, which user_status_lu to fetch. + */ + where: user_status_luWhereUniqueInput + } + + /** + * user_status_lu findUniqueOrThrow + */ + export type user_status_luFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * Filter, which user_status_lu to fetch. + */ + where: user_status_luWhereUniqueInput + } + + /** + * user_status_lu findFirst + */ + export type user_status_luFindFirstArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * Filter, which user_status_lu to fetch. + */ + where?: user_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_lus to fetch. + */ + orderBy?: user_status_luOrderByWithRelationInput | user_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_status_lus. + */ + cursor?: user_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_lus 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` user_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_status_lus. + */ + distinct?: User_status_luScalarFieldEnum | User_status_luScalarFieldEnum[] + } + + /** + * user_status_lu findFirstOrThrow + */ + export type user_status_luFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * Filter, which user_status_lu to fetch. + */ + where?: user_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_lus to fetch. + */ + orderBy?: user_status_luOrderByWithRelationInput | user_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_status_lus. + */ + cursor?: user_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_lus 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` user_status_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_status_lus. + */ + distinct?: User_status_luScalarFieldEnum | User_status_luScalarFieldEnum[] + } + + /** + * user_status_lu findMany + */ + export type user_status_luFindManyArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * Filter, which user_status_lus to fetch. + */ + where?: user_status_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_lus to fetch. + */ + orderBy?: user_status_luOrderByWithRelationInput | user_status_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_status_lus. + */ + cursor?: user_status_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_lus 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` user_status_lus. + */ + skip?: number + distinct?: User_status_luScalarFieldEnum | User_status_luScalarFieldEnum[] + } + + /** + * user_status_lu create + */ + export type user_status_luCreateArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * The data needed to create a user_status_lu. + */ + data: XOR + } + + /** + * user_status_lu createMany + */ + export type user_status_luCreateManyArgs = { + /** + * The data used to create many user_status_lus. + */ + data: user_status_luCreateManyInput | user_status_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_status_lu createManyAndReturn + */ + export type user_status_luCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * The data used to create many user_status_lus. + */ + data: user_status_luCreateManyInput | user_status_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_status_lu update + */ + export type user_status_luUpdateArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * The data needed to update a user_status_lu. + */ + data: XOR + /** + * Choose, which user_status_lu to update. + */ + where: user_status_luWhereUniqueInput + } + + /** + * user_status_lu updateMany + */ + export type user_status_luUpdateManyArgs = { + /** + * The data used to update user_status_lus. + */ + data: XOR + /** + * Filter which user_status_lus to update + */ + where?: user_status_luWhereInput + /** + * Limit how many user_status_lus to update. + */ + limit?: number + } + + /** + * user_status_lu updateManyAndReturn + */ + export type user_status_luUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * The data used to update user_status_lus. + */ + data: XOR + /** + * Filter which user_status_lus to update + */ + where?: user_status_luWhereInput + /** + * Limit how many user_status_lus to update. + */ + limit?: number + } + + /** + * user_status_lu upsert + */ + export type user_status_luUpsertArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * The filter to search for the user_status_lu to update in case it exists. + */ + where: user_status_luWhereUniqueInput + /** + * In case the user_status_lu found by the `where` argument doesn't exist, create a new user_status_lu with this data. + */ + create: XOR + /** + * In case the user_status_lu was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_status_lu delete + */ + export type user_status_luDeleteArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + /** + * Filter which user_status_lu to delete. + */ + where: user_status_luWhereUniqueInput + } + + /** + * user_status_lu deleteMany + */ + export type user_status_luDeleteManyArgs = { + /** + * Filter which user_status_lus to delete + */ + where?: user_status_luWhereInput + /** + * Limit how many user_status_lus to delete. + */ + limit?: number + } + + /** + * user_status_lu.user_status + */ + export type user_status_lu$user_statusArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + where?: user_statusWhereInput + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + cursor?: user_statusWhereUniqueInput + take?: number + skip?: number + distinct?: User_statusScalarFieldEnum | User_statusScalarFieldEnum[] + } + + /** + * user_status_lu without action + */ + export type user_status_luDefaultArgs = { + /** + * Select specific fields to fetch from the user_status_lu + */ + select?: user_status_luSelect | null + /** + * Omit specific fields from the user_status_lu + */ + omit?: user_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_luInclude | null + } + + + /** + * Model user_status_type_lu + */ + + export type AggregateUser_status_type_lu = { + _count: User_status_type_luCountAggregateOutputType | null + _avg: User_status_type_luAvgAggregateOutputType | null + _sum: User_status_type_luSumAggregateOutputType | null + _min: User_status_type_luMinAggregateOutputType | null + _max: User_status_type_luMaxAggregateOutputType | null + } + + export type User_status_type_luAvgAggregateOutputType = { + user_status_type_id: Decimal | null + } + + export type User_status_type_luSumAggregateOutputType = { + user_status_type_id: Decimal | null + } + + export type User_status_type_luMinAggregateOutputType = { + user_status_type_id: Decimal | null + description: string | null + } + + export type User_status_type_luMaxAggregateOutputType = { + user_status_type_id: Decimal | null + description: string | null + } + + export type User_status_type_luCountAggregateOutputType = { + user_status_type_id: number + description: number + _all: number + } + + + export type User_status_type_luAvgAggregateInputType = { + user_status_type_id?: true + } + + export type User_status_type_luSumAggregateInputType = { + user_status_type_id?: true + } + + export type User_status_type_luMinAggregateInputType = { + user_status_type_id?: true + description?: true + } + + export type User_status_type_luMaxAggregateInputType = { + user_status_type_id?: true + description?: true + } + + export type User_status_type_luCountAggregateInputType = { + user_status_type_id?: true + description?: true + _all?: true + } + + export type User_status_type_luAggregateArgs = { + /** + * Filter which user_status_type_lu to aggregate. + */ + where?: user_status_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_type_lus to fetch. + */ + orderBy?: user_status_type_luOrderByWithRelationInput | user_status_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_status_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_type_lus 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` user_status_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_status_type_lus + **/ + _count?: true | User_status_type_luCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_status_type_luAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_status_type_luSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_status_type_luMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_status_type_luMaxAggregateInputType + } + + export type GetUser_status_type_luAggregateType = { + [P in keyof T & keyof AggregateUser_status_type_lu]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_status_type_luGroupByArgs = { + where?: user_status_type_luWhereInput + orderBy?: user_status_type_luOrderByWithAggregationInput | user_status_type_luOrderByWithAggregationInput[] + by: User_status_type_luScalarFieldEnum[] | User_status_type_luScalarFieldEnum + having?: user_status_type_luScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_status_type_luCountAggregateInputType | true + _avg?: User_status_type_luAvgAggregateInputType + _sum?: User_status_type_luSumAggregateInputType + _min?: User_status_type_luMinAggregateInputType + _max?: User_status_type_luMaxAggregateInputType + } + + export type User_status_type_luGroupByOutputType = { + user_status_type_id: Decimal + description: string | null + _count: User_status_type_luCountAggregateOutputType | null + _avg: User_status_type_luAvgAggregateOutputType | null + _sum: User_status_type_luSumAggregateOutputType | null + _min: User_status_type_luMinAggregateOutputType | null + _max: User_status_type_luMaxAggregateOutputType | null + } + + type GetUser_status_type_luGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_status_type_luGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_status_type_luSelect = $Extensions.GetSelect<{ + user_status_type_id?: boolean + description?: boolean + user_status?: boolean | user_status_type_lu$user_statusArgs + _count?: boolean | User_status_type_luCountOutputTypeDefaultArgs + }, ExtArgs["result"]["user_status_type_lu"]> + + export type user_status_type_luSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_status_type_id?: boolean + description?: boolean + }, ExtArgs["result"]["user_status_type_lu"]> + + export type user_status_type_luSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_status_type_id?: boolean + description?: boolean + }, ExtArgs["result"]["user_status_type_lu"]> + + export type user_status_type_luSelectScalar = { + user_status_type_id?: boolean + description?: boolean + } + + export type user_status_type_luOmit = $Extensions.GetOmit<"user_status_type_id" | "description", ExtArgs["result"]["user_status_type_lu"]> + export type user_status_type_luInclude = { + user_status?: boolean | user_status_type_lu$user_statusArgs + _count?: boolean | User_status_type_luCountOutputTypeDefaultArgs + } + export type user_status_type_luIncludeCreateManyAndReturn = {} + export type user_status_type_luIncludeUpdateManyAndReturn = {} + + export type $user_status_type_luPayload = { + name: "user_status_type_lu" + objects: { + user_status: Prisma.$user_statusPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + user_status_type_id: Prisma.Decimal + description: string | null + }, ExtArgs["result"]["user_status_type_lu"]> + composites: {} + } + + type user_status_type_luGetPayload = $Result.GetResult + + type user_status_type_luCountArgs = + Omit & { + select?: User_status_type_luCountAggregateInputType | true + } + + export interface user_status_type_luDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_status_type_lu'], meta: { name: 'user_status_type_lu' } } + /** + * Find zero or one User_status_type_lu that matches the filter. + * @param {user_status_type_luFindUniqueArgs} args - Arguments to find a User_status_type_lu + * @example + * // Get one User_status_type_lu + * const user_status_type_lu = await prisma.user_status_type_lu.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_status_type_lu that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_status_type_luFindUniqueOrThrowArgs} args - Arguments to find a User_status_type_lu + * @example + * // Get one User_status_type_lu + * const user_status_type_lu = await prisma.user_status_type_lu.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_status_type_lu 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 {user_status_type_luFindFirstArgs} args - Arguments to find a User_status_type_lu + * @example + * // Get one User_status_type_lu + * const user_status_type_lu = await prisma.user_status_type_lu.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_status_type_lu 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 {user_status_type_luFindFirstOrThrowArgs} args - Arguments to find a User_status_type_lu + * @example + * // Get one User_status_type_lu + * const user_status_type_lu = await prisma.user_status_type_lu.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_status_type_lus 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 {user_status_type_luFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_status_type_lus + * const user_status_type_lus = await prisma.user_status_type_lu.findMany() + * + * // Get first 10 User_status_type_lus + * const user_status_type_lus = await prisma.user_status_type_lu.findMany({ take: 10 }) + * + * // Only select the `user_status_type_id` + * const user_status_type_luWithUser_status_type_idOnly = await prisma.user_status_type_lu.findMany({ select: { user_status_type_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_status_type_lu. + * @param {user_status_type_luCreateArgs} args - Arguments to create a User_status_type_lu. + * @example + * // Create one User_status_type_lu + * const User_status_type_lu = await prisma.user_status_type_lu.create({ + * data: { + * // ... data to create a User_status_type_lu + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_status_type_lus. + * @param {user_status_type_luCreateManyArgs} args - Arguments to create many User_status_type_lus. + * @example + * // Create many User_status_type_lus + * const user_status_type_lu = await prisma.user_status_type_lu.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_status_type_lus and returns the data saved in the database. + * @param {user_status_type_luCreateManyAndReturnArgs} args - Arguments to create many User_status_type_lus. + * @example + * // Create many User_status_type_lus + * const user_status_type_lu = await prisma.user_status_type_lu.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_status_type_lus and only return the `user_status_type_id` + * const user_status_type_luWithUser_status_type_idOnly = await prisma.user_status_type_lu.createManyAndReturn({ + * select: { user_status_type_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_status_type_lu. + * @param {user_status_type_luDeleteArgs} args - Arguments to delete one User_status_type_lu. + * @example + * // Delete one User_status_type_lu + * const User_status_type_lu = await prisma.user_status_type_lu.delete({ + * where: { + * // ... filter to delete one User_status_type_lu + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_status_type_lu. + * @param {user_status_type_luUpdateArgs} args - Arguments to update one User_status_type_lu. + * @example + * // Update one User_status_type_lu + * const user_status_type_lu = await prisma.user_status_type_lu.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_status_type_lus. + * @param {user_status_type_luDeleteManyArgs} args - Arguments to filter User_status_type_lus to delete. + * @example + * // Delete a few User_status_type_lus + * const { count } = await prisma.user_status_type_lu.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_status_type_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_status_type_luUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_status_type_lus + * const user_status_type_lu = await prisma.user_status_type_lu.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_status_type_lus and returns the data updated in the database. + * @param {user_status_type_luUpdateManyAndReturnArgs} args - Arguments to update many User_status_type_lus. + * @example + * // Update many User_status_type_lus + * const user_status_type_lu = await prisma.user_status_type_lu.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_status_type_lus and only return the `user_status_type_id` + * const user_status_type_luWithUser_status_type_idOnly = await prisma.user_status_type_lu.updateManyAndReturn({ + * select: { user_status_type_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_status_type_lu. + * @param {user_status_type_luUpsertArgs} args - Arguments to update or create a User_status_type_lu. + * @example + * // Update or create a User_status_type_lu + * const user_status_type_lu = await prisma.user_status_type_lu.upsert({ + * create: { + * // ... data to create a User_status_type_lu + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_status_type_lu we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_status_type_luClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_status_type_lus. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_status_type_luCountArgs} args - Arguments to filter User_status_type_lus to count. + * @example + * // Count the number of User_status_type_lus + * const count = await prisma.user_status_type_lu.count({ + * where: { + * // ... the filter for the User_status_type_lus 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_status_type_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_status_type_luAggregateArgs} 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_status_type_lu. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_status_type_luGroupByArgs} 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 user_status_type_luGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_status_type_luGroupByArgs['orderBy'] } + : { orderBy?: user_status_type_luGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_status_type_luGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_status_type_lu model + */ + readonly fields: user_status_type_luFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_status_type_lu. + * 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__user_status_type_luClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user_status = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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_status_type_lu model + */ + interface user_status_type_luFieldRefs { + readonly user_status_type_id: FieldRef<"user_status_type_lu", 'Decimal'> + readonly description: FieldRef<"user_status_type_lu", 'String'> + } + + + // Custom InputTypes + /** + * user_status_type_lu findUnique + */ + export type user_status_type_luFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * Filter, which user_status_type_lu to fetch. + */ + where: user_status_type_luWhereUniqueInput + } + + /** + * user_status_type_lu findUniqueOrThrow + */ + export type user_status_type_luFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * Filter, which user_status_type_lu to fetch. + */ + where: user_status_type_luWhereUniqueInput + } + + /** + * user_status_type_lu findFirst + */ + export type user_status_type_luFindFirstArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * Filter, which user_status_type_lu to fetch. + */ + where?: user_status_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_type_lus to fetch. + */ + orderBy?: user_status_type_luOrderByWithRelationInput | user_status_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_status_type_lus. + */ + cursor?: user_status_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_type_lus 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` user_status_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_status_type_lus. + */ + distinct?: User_status_type_luScalarFieldEnum | User_status_type_luScalarFieldEnum[] + } + + /** + * user_status_type_lu findFirstOrThrow + */ + export type user_status_type_luFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * Filter, which user_status_type_lu to fetch. + */ + where?: user_status_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_type_lus to fetch. + */ + orderBy?: user_status_type_luOrderByWithRelationInput | user_status_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_status_type_lus. + */ + cursor?: user_status_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_type_lus 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` user_status_type_lus. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_status_type_lus. + */ + distinct?: User_status_type_luScalarFieldEnum | User_status_type_luScalarFieldEnum[] + } + + /** + * user_status_type_lu findMany + */ + export type user_status_type_luFindManyArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * Filter, which user_status_type_lus to fetch. + */ + where?: user_status_type_luWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_status_type_lus to fetch. + */ + orderBy?: user_status_type_luOrderByWithRelationInput | user_status_type_luOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_status_type_lus. + */ + cursor?: user_status_type_luWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_status_type_lus 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` user_status_type_lus. + */ + skip?: number + distinct?: User_status_type_luScalarFieldEnum | User_status_type_luScalarFieldEnum[] + } + + /** + * user_status_type_lu create + */ + export type user_status_type_luCreateArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * The data needed to create a user_status_type_lu. + */ + data: XOR + } + + /** + * user_status_type_lu createMany + */ + export type user_status_type_luCreateManyArgs = { + /** + * The data used to create many user_status_type_lus. + */ + data: user_status_type_luCreateManyInput | user_status_type_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_status_type_lu createManyAndReturn + */ + export type user_status_type_luCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * The data used to create many user_status_type_lus. + */ + data: user_status_type_luCreateManyInput | user_status_type_luCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_status_type_lu update + */ + export type user_status_type_luUpdateArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * The data needed to update a user_status_type_lu. + */ + data: XOR + /** + * Choose, which user_status_type_lu to update. + */ + where: user_status_type_luWhereUniqueInput + } + + /** + * user_status_type_lu updateMany + */ + export type user_status_type_luUpdateManyArgs = { + /** + * The data used to update user_status_type_lus. + */ + data: XOR + /** + * Filter which user_status_type_lus to update + */ + where?: user_status_type_luWhereInput + /** + * Limit how many user_status_type_lus to update. + */ + limit?: number + } + + /** + * user_status_type_lu updateManyAndReturn + */ + export type user_status_type_luUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * The data used to update user_status_type_lus. + */ + data: XOR + /** + * Filter which user_status_type_lus to update + */ + where?: user_status_type_luWhereInput + /** + * Limit how many user_status_type_lus to update. + */ + limit?: number + } + + /** + * user_status_type_lu upsert + */ + export type user_status_type_luUpsertArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * The filter to search for the user_status_type_lu to update in case it exists. + */ + where: user_status_type_luWhereUniqueInput + /** + * In case the user_status_type_lu found by the `where` argument doesn't exist, create a new user_status_type_lu with this data. + */ + create: XOR + /** + * In case the user_status_type_lu was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_status_type_lu delete + */ + export type user_status_type_luDeleteArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + /** + * Filter which user_status_type_lu to delete. + */ + where: user_status_type_luWhereUniqueInput + } + + /** + * user_status_type_lu deleteMany + */ + export type user_status_type_luDeleteManyArgs = { + /** + * Filter which user_status_type_lus to delete + */ + where?: user_status_type_luWhereInput + /** + * Limit how many user_status_type_lus to delete. + */ + limit?: number + } + + /** + * user_status_type_lu.user_status + */ + export type user_status_type_lu$user_statusArgs = { + /** + * Select specific fields to fetch from the user_status + */ + select?: user_statusSelect | null + /** + * Omit specific fields from the user_status + */ + omit?: user_statusOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_statusInclude | null + where?: user_statusWhereInput + orderBy?: user_statusOrderByWithRelationInput | user_statusOrderByWithRelationInput[] + cursor?: user_statusWhereUniqueInput + take?: number + skip?: number + distinct?: User_statusScalarFieldEnum | User_statusScalarFieldEnum[] + } + + /** + * user_status_type_lu without action + */ + export type user_status_type_luDefaultArgs = { + /** + * Select specific fields to fetch from the user_status_type_lu + */ + select?: user_status_type_luSelect | null + /** + * Omit specific fields from the user_status_type_lu + */ + omit?: user_status_type_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_status_type_luInclude | null + } + + + /** + * Model user_email_xref + */ + + export type AggregateUser_email_xref = { + _count: User_email_xrefCountAggregateOutputType | null + _avg: User_email_xrefAvgAggregateOutputType | null + _sum: User_email_xrefSumAggregateOutputType | null + _min: User_email_xrefMinAggregateOutputType | null + _max: User_email_xrefMaxAggregateOutputType | null + } + + export type User_email_xrefAvgAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + status_id: Decimal | null + } + + export type User_email_xrefSumAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + status_id: Decimal | null + } + + export type User_email_xrefMinAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + is_primary: boolean | null + status_id: Decimal | null + create_date: Date | null + modify_date: Date | null + } + + export type User_email_xrefMaxAggregateOutputType = { + user_id: Decimal | null + email_id: Decimal | null + is_primary: boolean | null + status_id: Decimal | null + create_date: Date | null + modify_date: Date | null + } + + export type User_email_xrefCountAggregateOutputType = { + user_id: number + email_id: number + is_primary: number + status_id: number + create_date: number + modify_date: number + _all: number + } + + + export type User_email_xrefAvgAggregateInputType = { + user_id?: true + email_id?: true + status_id?: true + } + + export type User_email_xrefSumAggregateInputType = { + user_id?: true + email_id?: true + status_id?: true + } + + export type User_email_xrefMinAggregateInputType = { + user_id?: true + email_id?: true + is_primary?: true + status_id?: true + create_date?: true + modify_date?: true + } + + export type User_email_xrefMaxAggregateInputType = { + user_id?: true + email_id?: true + is_primary?: true + status_id?: true + create_date?: true + modify_date?: true + } + + export type User_email_xrefCountAggregateInputType = { + user_id?: true + email_id?: true + is_primary?: true + status_id?: true + create_date?: true + modify_date?: true + _all?: true + } + + export type User_email_xrefAggregateArgs = { + /** + * Filter which user_email_xref to aggregate. + */ + where?: user_email_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_email_xrefs to fetch. + */ + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: user_email_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_email_xrefs 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` user_email_xrefs. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned user_email_xrefs + **/ + _count?: true | User_email_xrefCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: User_email_xrefAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: User_email_xrefSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: User_email_xrefMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: User_email_xrefMaxAggregateInputType + } + + export type GetUser_email_xrefAggregateType = { + [P in keyof T & keyof AggregateUser_email_xref]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type user_email_xrefGroupByArgs = { + where?: user_email_xrefWhereInput + orderBy?: user_email_xrefOrderByWithAggregationInput | user_email_xrefOrderByWithAggregationInput[] + by: User_email_xrefScalarFieldEnum[] | User_email_xrefScalarFieldEnum + having?: user_email_xrefScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: User_email_xrefCountAggregateInputType | true + _avg?: User_email_xrefAvgAggregateInputType + _sum?: User_email_xrefSumAggregateInputType + _min?: User_email_xrefMinAggregateInputType + _max?: User_email_xrefMaxAggregateInputType + } + + export type User_email_xrefGroupByOutputType = { + user_id: Decimal + email_id: Decimal + is_primary: boolean + status_id: Decimal + create_date: Date | null + modify_date: Date | null + _count: User_email_xrefCountAggregateOutputType | null + _avg: User_email_xrefAvgAggregateOutputType | null + _sum: User_email_xrefSumAggregateOutputType | null + _min: User_email_xrefMinAggregateOutputType | null + _max: User_email_xrefMaxAggregateOutputType | null + } + + type GetUser_email_xrefGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof User_email_xrefGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type user_email_xrefSelect = $Extensions.GetSelect<{ + user_id?: boolean + email_id?: boolean + is_primary?: boolean + status_id?: boolean + create_date?: boolean + modify_date?: boolean + user?: boolean | userDefaultArgs + email?: boolean | emailDefaultArgs + email_status_lu?: boolean | user_email_xref$email_status_luArgs + }, ExtArgs["result"]["user_email_xref"]> + + export type user_email_xrefSelectCreateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + email_id?: boolean + is_primary?: boolean + status_id?: boolean + create_date?: boolean + modify_date?: boolean + user?: boolean | userDefaultArgs + email?: boolean | emailDefaultArgs + email_status_lu?: boolean | user_email_xref$email_status_luArgs + }, ExtArgs["result"]["user_email_xref"]> + + export type user_email_xrefSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + user_id?: boolean + email_id?: boolean + is_primary?: boolean + status_id?: boolean + create_date?: boolean + modify_date?: boolean + user?: boolean | userDefaultArgs + email?: boolean | emailDefaultArgs + email_status_lu?: boolean | user_email_xref$email_status_luArgs + }, ExtArgs["result"]["user_email_xref"]> + + export type user_email_xrefSelectScalar = { + user_id?: boolean + email_id?: boolean + is_primary?: boolean + status_id?: boolean + create_date?: boolean + modify_date?: boolean + } + + export type user_email_xrefOmit = $Extensions.GetOmit<"user_id" | "email_id" | "is_primary" | "status_id" | "create_date" | "modify_date", ExtArgs["result"]["user_email_xref"]> + export type user_email_xrefInclude = { + user?: boolean | userDefaultArgs + email?: boolean | emailDefaultArgs + email_status_lu?: boolean | user_email_xref$email_status_luArgs + } + export type user_email_xrefIncludeCreateManyAndReturn = { + user?: boolean | userDefaultArgs + email?: boolean | emailDefaultArgs + email_status_lu?: boolean | user_email_xref$email_status_luArgs + } + export type user_email_xrefIncludeUpdateManyAndReturn = { + user?: boolean | userDefaultArgs + email?: boolean | emailDefaultArgs + email_status_lu?: boolean | user_email_xref$email_status_luArgs + } + + export type $user_email_xrefPayload = { + name: "user_email_xref" + objects: { + user: Prisma.$userPayload + email: Prisma.$emailPayload + email_status_lu: Prisma.$email_status_luPayload | null + } + scalars: $Extensions.GetPayloadResult<{ + user_id: Prisma.Decimal + email_id: Prisma.Decimal + is_primary: boolean + status_id: Prisma.Decimal + create_date: Date | null + modify_date: Date | null + }, ExtArgs["result"]["user_email_xref"]> + composites: {} + } + + type user_email_xrefGetPayload = $Result.GetResult + + type user_email_xrefCountArgs = + Omit & { + select?: User_email_xrefCountAggregateInputType | true + } + + export interface user_email_xrefDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['user_email_xref'], meta: { name: 'user_email_xref' } } + /** + * Find zero or one User_email_xref that matches the filter. + * @param {user_email_xrefFindUniqueArgs} args - Arguments to find a User_email_xref + * @example + * // Get one User_email_xref + * const user_email_xref = await prisma.user_email_xref.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one User_email_xref that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {user_email_xrefFindUniqueOrThrowArgs} args - Arguments to find a User_email_xref + * @example + * // Get one User_email_xref + * const user_email_xref = await prisma.user_email_xref.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_email_xref 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 {user_email_xrefFindFirstArgs} args - Arguments to find a User_email_xref + * @example + * // Get one User_email_xref + * const user_email_xref = await prisma.user_email_xref.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first User_email_xref 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 {user_email_xrefFindFirstOrThrowArgs} args - Arguments to find a User_email_xref + * @example + * // Get one User_email_xref + * const user_email_xref = await prisma.user_email_xref.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more User_email_xrefs 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 {user_email_xrefFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all User_email_xrefs + * const user_email_xrefs = await prisma.user_email_xref.findMany() + * + * // Get first 10 User_email_xrefs + * const user_email_xrefs = await prisma.user_email_xref.findMany({ take: 10 }) + * + * // Only select the `user_id` + * const user_email_xrefWithUser_idOnly = await prisma.user_email_xref.findMany({ select: { user_id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a User_email_xref. + * @param {user_email_xrefCreateArgs} args - Arguments to create a User_email_xref. + * @example + * // Create one User_email_xref + * const User_email_xref = await prisma.user_email_xref.create({ + * data: { + * // ... data to create a User_email_xref + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many User_email_xrefs. + * @param {user_email_xrefCreateManyArgs} args - Arguments to create many User_email_xrefs. + * @example + * // Create many User_email_xrefs + * const user_email_xref = await prisma.user_email_xref.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many User_email_xrefs and returns the data saved in the database. + * @param {user_email_xrefCreateManyAndReturnArgs} args - Arguments to create many User_email_xrefs. + * @example + * // Create many User_email_xrefs + * const user_email_xref = await prisma.user_email_xref.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many User_email_xrefs and only return the `user_id` + * const user_email_xrefWithUser_idOnly = await prisma.user_email_xref.createManyAndReturn({ + * select: { user_id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a User_email_xref. + * @param {user_email_xrefDeleteArgs} args - Arguments to delete one User_email_xref. + * @example + * // Delete one User_email_xref + * const User_email_xref = await prisma.user_email_xref.delete({ + * where: { + * // ... filter to delete one User_email_xref + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one User_email_xref. + * @param {user_email_xrefUpdateArgs} args - Arguments to update one User_email_xref. + * @example + * // Update one User_email_xref + * const user_email_xref = await prisma.user_email_xref.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more User_email_xrefs. + * @param {user_email_xrefDeleteManyArgs} args - Arguments to filter User_email_xrefs to delete. + * @example + * // Delete a few User_email_xrefs + * const { count } = await prisma.user_email_xref.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_email_xrefs. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_email_xrefUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many User_email_xrefs + * const user_email_xref = await prisma.user_email_xref.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more User_email_xrefs and returns the data updated in the database. + * @param {user_email_xrefUpdateManyAndReturnArgs} args - Arguments to update many User_email_xrefs. + * @example + * // Update many User_email_xrefs + * const user_email_xref = await prisma.user_email_xref.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more User_email_xrefs and only return the `user_id` + * const user_email_xrefWithUser_idOnly = await prisma.user_email_xref.updateManyAndReturn({ + * select: { user_id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one User_email_xref. + * @param {user_email_xrefUpsertArgs} args - Arguments to update or create a User_email_xref. + * @example + * // Update or create a User_email_xref + * const user_email_xref = await prisma.user_email_xref.upsert({ + * create: { + * // ... data to create a User_email_xref + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the User_email_xref we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__user_email_xrefClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of User_email_xrefs. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_email_xrefCountArgs} args - Arguments to filter User_email_xrefs to count. + * @example + * // Count the number of User_email_xrefs + * const count = await prisma.user_email_xref.count({ + * where: { + * // ... the filter for the User_email_xrefs 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_email_xref. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {User_email_xrefAggregateArgs} 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_email_xref. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {user_email_xrefGroupByArgs} 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 user_email_xrefGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: user_email_xrefGroupByArgs['orderBy'] } + : { orderBy?: user_email_xrefGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetUser_email_xrefGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the user_email_xref model + */ + readonly fields: user_email_xrefFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for user_email_xref. + * 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__user_email_xrefClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + user = {}>(args?: Subset>): Prisma__userClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + email = {}>(args?: Subset>): Prisma__emailClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + email_status_lu = {}>(args?: Subset>): Prisma__email_status_luClient<$Result.GetResult, 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 user_email_xref model + */ + interface user_email_xrefFieldRefs { + readonly user_id: FieldRef<"user_email_xref", 'Decimal'> + readonly email_id: FieldRef<"user_email_xref", 'Decimal'> + readonly is_primary: FieldRef<"user_email_xref", 'Boolean'> + readonly status_id: FieldRef<"user_email_xref", 'Decimal'> + readonly create_date: FieldRef<"user_email_xref", 'DateTime'> + readonly modify_date: FieldRef<"user_email_xref", 'DateTime'> + } + + + // Custom InputTypes + /** + * user_email_xref findUnique + */ + export type user_email_xrefFindUniqueArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * Filter, which user_email_xref to fetch. + */ + where: user_email_xrefWhereUniqueInput + } + + /** + * user_email_xref findUniqueOrThrow + */ + export type user_email_xrefFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * Filter, which user_email_xref to fetch. + */ + where: user_email_xrefWhereUniqueInput + } + + /** + * user_email_xref findFirst + */ + export type user_email_xrefFindFirstArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * Filter, which user_email_xref to fetch. + */ + where?: user_email_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_email_xrefs to fetch. + */ + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_email_xrefs. + */ + cursor?: user_email_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_email_xrefs 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` user_email_xrefs. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_email_xrefs. + */ + distinct?: User_email_xrefScalarFieldEnum | User_email_xrefScalarFieldEnum[] + } + + /** + * user_email_xref findFirstOrThrow + */ + export type user_email_xrefFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * Filter, which user_email_xref to fetch. + */ + where?: user_email_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_email_xrefs to fetch. + */ + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for user_email_xrefs. + */ + cursor?: user_email_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_email_xrefs 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` user_email_xrefs. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of user_email_xrefs. + */ + distinct?: User_email_xrefScalarFieldEnum | User_email_xrefScalarFieldEnum[] + } + + /** + * user_email_xref findMany + */ + export type user_email_xrefFindManyArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * Filter, which user_email_xrefs to fetch. + */ + where?: user_email_xrefWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of user_email_xrefs to fetch. + */ + orderBy?: user_email_xrefOrderByWithRelationInput | user_email_xrefOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing user_email_xrefs. + */ + cursor?: user_email_xrefWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` user_email_xrefs 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` user_email_xrefs. + */ + skip?: number + distinct?: User_email_xrefScalarFieldEnum | User_email_xrefScalarFieldEnum[] + } + + /** + * user_email_xref create + */ + export type user_email_xrefCreateArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * The data needed to create a user_email_xref. + */ + data: XOR + } + + /** + * user_email_xref createMany + */ + export type user_email_xrefCreateManyArgs = { + /** + * The data used to create many user_email_xrefs. + */ + data: user_email_xrefCreateManyInput | user_email_xrefCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * user_email_xref createManyAndReturn + */ + export type user_email_xrefCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelectCreateManyAndReturn | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * The data used to create many user_email_xrefs. + */ + data: user_email_xrefCreateManyInput | user_email_xrefCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefIncludeCreateManyAndReturn | null + } + + /** + * user_email_xref update + */ + export type user_email_xrefUpdateArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * The data needed to update a user_email_xref. + */ + data: XOR + /** + * Choose, which user_email_xref to update. + */ + where: user_email_xrefWhereUniqueInput + } + + /** + * user_email_xref updateMany + */ + export type user_email_xrefUpdateManyArgs = { + /** + * The data used to update user_email_xrefs. + */ + data: XOR + /** + * Filter which user_email_xrefs to update + */ + where?: user_email_xrefWhereInput + /** + * Limit how many user_email_xrefs to update. + */ + limit?: number + } + + /** + * user_email_xref updateManyAndReturn + */ + export type user_email_xrefUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * The data used to update user_email_xrefs. + */ + data: XOR + /** + * Filter which user_email_xrefs to update + */ + where?: user_email_xrefWhereInput + /** + * Limit how many user_email_xrefs to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefIncludeUpdateManyAndReturn | null + } + + /** + * user_email_xref upsert + */ + export type user_email_xrefUpsertArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * The filter to search for the user_email_xref to update in case it exists. + */ + where: user_email_xrefWhereUniqueInput + /** + * In case the user_email_xref found by the `where` argument doesn't exist, create a new user_email_xref with this data. + */ + create: XOR + /** + * In case the user_email_xref was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * user_email_xref delete + */ + export type user_email_xrefDeleteArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + /** + * Filter which user_email_xref to delete. + */ + where: user_email_xrefWhereUniqueInput + } + + /** + * user_email_xref deleteMany + */ + export type user_email_xrefDeleteManyArgs = { + /** + * Filter which user_email_xrefs to delete + */ + where?: user_email_xrefWhereInput + /** + * Limit how many user_email_xrefs to delete. + */ + limit?: number + } + + /** + * user_email_xref.email_status_lu + */ + export type user_email_xref$email_status_luArgs = { + /** + * Select specific fields to fetch from the email_status_lu + */ + select?: email_status_luSelect | null + /** + * Omit specific fields from the email_status_lu + */ + omit?: email_status_luOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: email_status_luInclude | null + where?: email_status_luWhereInput + } + + /** + * user_email_xref without action + */ + export type user_email_xrefDefaultArgs = { + /** + * Select specific fields to fetch from the user_email_xref + */ + select?: user_email_xrefSelect | null + /** + * Omit specific fields from the user_email_xref + */ + omit?: user_email_xrefOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: user_email_xrefInclude | null + } + + + /** + * Model Client + */ + + export type AggregateClient = { + _count: ClientCountAggregateOutputType | null + _avg: ClientAvgAggregateOutputType | null + _sum: ClientSumAggregateOutputType | null + _min: ClientMinAggregateOutputType | null + _max: ClientMaxAggregateOutputType | null + } + + export type ClientAvgAggregateOutputType = { + id: number | null + createdBy: number | null + modifiedBy: number | null + } + + export type ClientSumAggregateOutputType = { + id: number | null + createdBy: number | null + modifiedBy: number | null + } + + export type ClientMinAggregateOutputType = { + id: number | null + clientId: string | null + name: string | null + redirectUri: string | null + secret: string | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + } + + export type ClientMaxAggregateOutputType = { + id: number | null + clientId: string | null + name: string | null + redirectUri: string | null + secret: string | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + } + + export type ClientCountAggregateOutputType = { + id: number + clientId: number + name: number + redirectUri: number + secret: number + createdBy: number + createdAt: number + modifiedBy: number + modifiedAt: number + _all: number + } + + + export type ClientAvgAggregateInputType = { + id?: true + createdBy?: true + modifiedBy?: true + } + + export type ClientSumAggregateInputType = { + id?: true + createdBy?: true + modifiedBy?: true + } + + export type ClientMinAggregateInputType = { + id?: true + clientId?: true + name?: true + redirectUri?: true + secret?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + } + + export type ClientMaxAggregateInputType = { + id?: true + clientId?: true + name?: true + redirectUri?: true + secret?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + } + + export type ClientCountAggregateInputType = { + id?: true + clientId?: true + name?: true + redirectUri?: true + secret?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + _all?: true + } + + export type ClientAggregateArgs = { + /** + * Filter which Client to aggregate. + */ + where?: ClientWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Clients to fetch. + */ + orderBy?: ClientOrderByWithRelationInput | ClientOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: ClientWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Clients 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` Clients. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Clients + **/ + _count?: true | ClientCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: ClientAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: ClientSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ClientMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ClientMaxAggregateInputType + } + + export type GetClientAggregateType = { + [P in keyof T & keyof AggregateClient]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type ClientGroupByArgs = { + where?: ClientWhereInput + orderBy?: ClientOrderByWithAggregationInput | ClientOrderByWithAggregationInput[] + by: ClientScalarFieldEnum[] | ClientScalarFieldEnum + having?: ClientScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ClientCountAggregateInputType | true + _avg?: ClientAvgAggregateInputType + _sum?: ClientSumAggregateInputType + _min?: ClientMinAggregateInputType + _max?: ClientMaxAggregateInputType + } + + export type ClientGroupByOutputType = { + id: number + clientId: string + name: string + redirectUri: string | null + secret: string | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + _count: ClientCountAggregateOutputType | null + _avg: ClientAvgAggregateOutputType | null + _sum: ClientSumAggregateOutputType | null + _min: ClientMinAggregateOutputType | null + _max: ClientMaxAggregateOutputType | null + } + + type GetClientGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof ClientGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type ClientSelect = $Extensions.GetSelect<{ + id?: boolean + clientId?: boolean + name?: boolean + redirectUri?: boolean + secret?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + }, ExtArgs["result"]["client"]> + + export type ClientSelectCreateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + clientId?: boolean + name?: boolean + redirectUri?: boolean + secret?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + }, ExtArgs["result"]["client"]> + + export type ClientSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + clientId?: boolean + name?: boolean + redirectUri?: boolean + secret?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + }, ExtArgs["result"]["client"]> + + export type ClientSelectScalar = { + id?: boolean + clientId?: boolean + name?: boolean + redirectUri?: boolean + secret?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + } + + export type ClientOmit = $Extensions.GetOmit<"id" | "clientId" | "name" | "redirectUri" | "secret" | "createdBy" | "createdAt" | "modifiedBy" | "modifiedAt", ExtArgs["result"]["client"]> + + export type $ClientPayload = { + name: "Client" + objects: {} + scalars: $Extensions.GetPayloadResult<{ + id: number + clientId: string + name: string + redirectUri: string | null + secret: string | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + }, ExtArgs["result"]["client"]> + composites: {} + } + + type ClientGetPayload = $Result.GetResult + + type ClientCountArgs = + Omit & { + select?: ClientCountAggregateInputType | true + } + + export interface ClientDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Client'], meta: { name: 'Client' } } + /** + * Find zero or one Client that matches the filter. + * @param {ClientFindUniqueArgs} args - Arguments to find a Client + * @example + * // Get one Client + * const client = await prisma.client.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Client that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ClientFindUniqueOrThrowArgs} args - Arguments to find a Client + * @example + * // Get one Client + * const client = await prisma.client.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Client 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 {ClientFindFirstArgs} args - Arguments to find a Client + * @example + * // Get one Client + * const client = await prisma.client.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Client 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 {ClientFindFirstOrThrowArgs} args - Arguments to find a Client + * @example + * // Get one Client + * const client = await prisma.client.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Clients 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 {ClientFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Clients + * const clients = await prisma.client.findMany() + * + * // Get first 10 Clients + * const clients = await prisma.client.findMany({ take: 10 }) + * + * // Only select the `id` + * const clientWithIdOnly = await prisma.client.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Client. + * @param {ClientCreateArgs} args - Arguments to create a Client. + * @example + * // Create one Client + * const Client = await prisma.client.create({ + * data: { + * // ... data to create a Client + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Clients. + * @param {ClientCreateManyArgs} args - Arguments to create many Clients. + * @example + * // Create many Clients + * const client = await prisma.client.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Clients and returns the data saved in the database. + * @param {ClientCreateManyAndReturnArgs} args - Arguments to create many Clients. + * @example + * // Create many Clients + * const client = await prisma.client.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Clients and only return the `id` + * const clientWithIdOnly = await prisma.client.createManyAndReturn({ + * select: { id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Client. + * @param {ClientDeleteArgs} args - Arguments to delete one Client. + * @example + * // Delete one Client + * const Client = await prisma.client.delete({ + * where: { + * // ... filter to delete one Client + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Client. + * @param {ClientUpdateArgs} args - Arguments to update one Client. + * @example + * // Update one Client + * const client = await prisma.client.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Clients. + * @param {ClientDeleteManyArgs} args - Arguments to filter Clients to delete. + * @example + * // Delete a few Clients + * const { count } = await prisma.client.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Clients. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ClientUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Clients + * const client = await prisma.client.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Clients and returns the data updated in the database. + * @param {ClientUpdateManyAndReturnArgs} args - Arguments to update many Clients. + * @example + * // Update many Clients + * const client = await prisma.client.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Clients and only return the `id` + * const clientWithIdOnly = await prisma.client.updateManyAndReturn({ + * select: { id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Client. + * @param {ClientUpsertArgs} args - Arguments to update or create a Client. + * @example + * // Update or create a Client + * const client = await prisma.client.upsert({ + * create: { + * // ... data to create a Client + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Client we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__ClientClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Clients. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ClientCountArgs} args - Arguments to filter Clients to count. + * @example + * // Count the number of Clients + * const count = await prisma.client.count({ + * where: { + * // ... the filter for the Clients 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 Client. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ClientAggregateArgs} 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 Client. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ClientGroupByArgs} 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 ClientGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: ClientGroupByArgs['orderBy'] } + : { orderBy?: ClientGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetClientGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Client model + */ + readonly fields: ClientFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Client. + * 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__ClientClient 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 Client model + */ + interface ClientFieldRefs { + readonly id: FieldRef<"Client", 'Int'> + readonly clientId: FieldRef<"Client", 'String'> + readonly name: FieldRef<"Client", 'String'> + readonly redirectUri: FieldRef<"Client", 'String'> + readonly secret: FieldRef<"Client", 'String'> + readonly createdBy: FieldRef<"Client", 'Int'> + readonly createdAt: FieldRef<"Client", 'DateTime'> + readonly modifiedBy: FieldRef<"Client", 'Int'> + readonly modifiedAt: FieldRef<"Client", 'DateTime'> + } + + + // Custom InputTypes + /** + * Client findUnique + */ + export type ClientFindUniqueArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * Filter, which Client to fetch. + */ + where: ClientWhereUniqueInput + } + + /** + * Client findUniqueOrThrow + */ + export type ClientFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * Filter, which Client to fetch. + */ + where: ClientWhereUniqueInput + } + + /** + * Client findFirst + */ + export type ClientFindFirstArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * Filter, which Client to fetch. + */ + where?: ClientWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Clients to fetch. + */ + orderBy?: ClientOrderByWithRelationInput | ClientOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Clients. + */ + cursor?: ClientWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Clients 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` Clients. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Clients. + */ + distinct?: ClientScalarFieldEnum | ClientScalarFieldEnum[] + } + + /** + * Client findFirstOrThrow + */ + export type ClientFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * Filter, which Client to fetch. + */ + where?: ClientWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Clients to fetch. + */ + orderBy?: ClientOrderByWithRelationInput | ClientOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Clients. + */ + cursor?: ClientWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Clients 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` Clients. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Clients. + */ + distinct?: ClientScalarFieldEnum | ClientScalarFieldEnum[] + } + + /** + * Client findMany + */ + export type ClientFindManyArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * Filter, which Clients to fetch. + */ + where?: ClientWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Clients to fetch. + */ + orderBy?: ClientOrderByWithRelationInput | ClientOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Clients. + */ + cursor?: ClientWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Clients 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` Clients. + */ + skip?: number + distinct?: ClientScalarFieldEnum | ClientScalarFieldEnum[] + } + + /** + * Client create + */ + export type ClientCreateArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * The data needed to create a Client. + */ + data: XOR + } + + /** + * Client createMany + */ + export type ClientCreateManyArgs = { + /** + * The data used to create many Clients. + */ + data: ClientCreateManyInput | ClientCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Client createManyAndReturn + */ + export type ClientCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelectCreateManyAndReturn | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * The data used to create many Clients. + */ + data: ClientCreateManyInput | ClientCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Client update + */ + export type ClientUpdateArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * The data needed to update a Client. + */ + data: XOR + /** + * Choose, which Client to update. + */ + where: ClientWhereUniqueInput + } + + /** + * Client updateMany + */ + export type ClientUpdateManyArgs = { + /** + * The data used to update Clients. + */ + data: XOR + /** + * Filter which Clients to update + */ + where?: ClientWhereInput + /** + * Limit how many Clients to update. + */ + limit?: number + } + + /** + * Client updateManyAndReturn + */ + export type ClientUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * The data used to update Clients. + */ + data: XOR + /** + * Filter which Clients to update + */ + where?: ClientWhereInput + /** + * Limit how many Clients to update. + */ + limit?: number + } + + /** + * Client upsert + */ + export type ClientUpsertArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * The filter to search for the Client to update in case it exists. + */ + where: ClientWhereUniqueInput + /** + * In case the Client found by the `where` argument doesn't exist, create a new Client with this data. + */ + create: XOR + /** + * In case the Client was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Client delete + */ + export type ClientDeleteArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + /** + * Filter which Client to delete. + */ + where: ClientWhereUniqueInput + } + + /** + * Client deleteMany + */ + export type ClientDeleteManyArgs = { + /** + * Filter which Clients to delete + */ + where?: ClientWhereInput + /** + * Limit how many Clients to delete. + */ + limit?: number + } + + /** + * Client without action + */ + export type ClientDefaultArgs = { + /** + * Select specific fields to fetch from the Client + */ + select?: ClientSelect | null + /** + * Omit specific fields from the Client + */ + omit?: ClientOmit | null + } + + + /** + * Model Role + */ + + export type AggregateRole = { + _count: RoleCountAggregateOutputType | null + _avg: RoleAvgAggregateOutputType | null + _sum: RoleSumAggregateOutputType | null + _min: RoleMinAggregateOutputType | null + _max: RoleMaxAggregateOutputType | null + } + + export type RoleAvgAggregateOutputType = { + id: number | null + createdBy: number | null + modifiedBy: number | null + } + + export type RoleSumAggregateOutputType = { + id: number | null + createdBy: number | null + modifiedBy: number | null + } + + export type RoleMinAggregateOutputType = { + id: number | null + name: string | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + } + + export type RoleMaxAggregateOutputType = { + id: number | null + name: string | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + } + + export type RoleCountAggregateOutputType = { + id: number + name: number + createdBy: number + createdAt: number + modifiedBy: number + modifiedAt: number + _all: number + } + + + export type RoleAvgAggregateInputType = { + id?: true + createdBy?: true + modifiedBy?: true + } + + export type RoleSumAggregateInputType = { + id?: true + createdBy?: true + modifiedBy?: true + } + + export type RoleMinAggregateInputType = { + id?: true + name?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + } + + export type RoleMaxAggregateInputType = { + id?: true + name?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + } + + export type RoleCountAggregateInputType = { + id?: true + name?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + _all?: true + } + + export type RoleAggregateArgs = { + /** + * Filter which Role to aggregate. + */ + where?: RoleWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Roles to fetch. + */ + orderBy?: RoleOrderByWithRelationInput | RoleOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: RoleWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Roles 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` Roles. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Roles + **/ + _count?: true | RoleCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: RoleAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: RoleSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: RoleMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: RoleMaxAggregateInputType + } + + export type GetRoleAggregateType = { + [P in keyof T & keyof AggregateRole]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type RoleGroupByArgs = { + where?: RoleWhereInput + orderBy?: RoleOrderByWithAggregationInput | RoleOrderByWithAggregationInput[] + by: RoleScalarFieldEnum[] | RoleScalarFieldEnum + having?: RoleScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: RoleCountAggregateInputType | true + _avg?: RoleAvgAggregateInputType + _sum?: RoleSumAggregateInputType + _min?: RoleMinAggregateInputType + _max?: RoleMaxAggregateInputType + } + + export type RoleGroupByOutputType = { + id: number + name: string + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + _count: RoleCountAggregateOutputType | null + _avg: RoleAvgAggregateOutputType | null + _sum: RoleSumAggregateOutputType | null + _min: RoleMinAggregateOutputType | null + _max: RoleMaxAggregateOutputType | null + } + + type GetRoleGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof RoleGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type RoleSelect = $Extensions.GetSelect<{ + id?: boolean + name?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + roleAssignments?: boolean | Role$roleAssignmentsArgs + _count?: boolean | RoleCountOutputTypeDefaultArgs + }, ExtArgs["result"]["role"]> + + export type RoleSelectCreateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + name?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + }, ExtArgs["result"]["role"]> + + export type RoleSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + name?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + }, ExtArgs["result"]["role"]> + + export type RoleSelectScalar = { + id?: boolean + name?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + } + + export type RoleOmit = $Extensions.GetOmit<"id" | "name" | "createdBy" | "createdAt" | "modifiedBy" | "modifiedAt", ExtArgs["result"]["role"]> + export type RoleInclude = { + roleAssignments?: boolean | Role$roleAssignmentsArgs + _count?: boolean | RoleCountOutputTypeDefaultArgs + } + export type RoleIncludeCreateManyAndReturn = {} + export type RoleIncludeUpdateManyAndReturn = {} + + export type $RolePayload = { + name: "Role" + objects: { + roleAssignments: Prisma.$RoleAssignmentPayload[] + } + scalars: $Extensions.GetPayloadResult<{ + id: number + name: string + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + }, ExtArgs["result"]["role"]> + composites: {} + } + + type RoleGetPayload = $Result.GetResult + + type RoleCountArgs = + Omit & { + select?: RoleCountAggregateInputType | true + } + + export interface RoleDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Role'], meta: { name: 'Role' } } + /** + * Find zero or one Role that matches the filter. + * @param {RoleFindUniqueArgs} args - Arguments to find a Role + * @example + * // Get one Role + * const role = await prisma.role.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Role that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {RoleFindUniqueOrThrowArgs} args - Arguments to find a Role + * @example + * // Get one Role + * const role = await prisma.role.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Role 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 {RoleFindFirstArgs} args - Arguments to find a Role + * @example + * // Get one Role + * const role = await prisma.role.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Role 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 {RoleFindFirstOrThrowArgs} args - Arguments to find a Role + * @example + * // Get one Role + * const role = await prisma.role.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Roles 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 {RoleFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Roles + * const roles = await prisma.role.findMany() + * + * // Get first 10 Roles + * const roles = await prisma.role.findMany({ take: 10 }) + * + * // Only select the `id` + * const roleWithIdOnly = await prisma.role.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Role. + * @param {RoleCreateArgs} args - Arguments to create a Role. + * @example + * // Create one Role + * const Role = await prisma.role.create({ + * data: { + * // ... data to create a Role + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Roles. + * @param {RoleCreateManyArgs} args - Arguments to create many Roles. + * @example + * // Create many Roles + * const role = await prisma.role.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many Roles and returns the data saved in the database. + * @param {RoleCreateManyAndReturnArgs} args - Arguments to create many Roles. + * @example + * // Create many Roles + * const role = await prisma.role.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many Roles and only return the `id` + * const roleWithIdOnly = await prisma.role.createManyAndReturn({ + * select: { id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a Role. + * @param {RoleDeleteArgs} args - Arguments to delete one Role. + * @example + * // Delete one Role + * const Role = await prisma.role.delete({ + * where: { + * // ... filter to delete one Role + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Role. + * @param {RoleUpdateArgs} args - Arguments to update one Role. + * @example + * // Update one Role + * const role = await prisma.role.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Roles. + * @param {RoleDeleteManyArgs} args - Arguments to filter Roles to delete. + * @example + * // Delete a few Roles + * const { count } = await prisma.role.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Roles. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Roles + * const role = await prisma.role.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Roles and returns the data updated in the database. + * @param {RoleUpdateManyAndReturnArgs} args - Arguments to update many Roles. + * @example + * // Update many Roles + * const role = await prisma.role.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more Roles and only return the `id` + * const roleWithIdOnly = await prisma.role.updateManyAndReturn({ + * select: { id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one Role. + * @param {RoleUpsertArgs} args - Arguments to update or create a Role. + * @example + * // Update or create a Role + * const role = await prisma.role.upsert({ + * create: { + * // ... data to create a Role + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Role we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__RoleClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Roles. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleCountArgs} args - Arguments to filter Roles to count. + * @example + * // Count the number of Roles + * const count = await prisma.role.count({ + * where: { + * // ... the filter for the Roles 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 Role. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleAggregateArgs} 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 Role. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleGroupByArgs} 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 RoleGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: RoleGroupByArgs['orderBy'] } + : { orderBy?: RoleGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetRoleGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the Role model + */ + readonly fields: RoleFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for Role. + * 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__RoleClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + roleAssignments = {}>(args?: Subset>): Prisma.PrismaPromise<$Result.GetResult, 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 Role model + */ + interface RoleFieldRefs { + readonly id: FieldRef<"Role", 'Int'> + readonly name: FieldRef<"Role", 'String'> + readonly createdBy: FieldRef<"Role", 'Int'> + readonly createdAt: FieldRef<"Role", 'DateTime'> + readonly modifiedBy: FieldRef<"Role", 'Int'> + readonly modifiedAt: FieldRef<"Role", 'DateTime'> + } + + + // Custom InputTypes + /** + * Role findUnique + */ + export type RoleFindUniqueArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * Filter, which Role to fetch. + */ + where: RoleWhereUniqueInput + } + + /** + * Role findUniqueOrThrow + */ + export type RoleFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * Filter, which Role to fetch. + */ + where: RoleWhereUniqueInput + } + + /** + * Role findFirst + */ + export type RoleFindFirstArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * Filter, which Role to fetch. + */ + where?: RoleWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Roles to fetch. + */ + orderBy?: RoleOrderByWithRelationInput | RoleOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Roles. + */ + cursor?: RoleWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Roles 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` Roles. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Roles. + */ + distinct?: RoleScalarFieldEnum | RoleScalarFieldEnum[] + } + + /** + * Role findFirstOrThrow + */ + export type RoleFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * Filter, which Role to fetch. + */ + where?: RoleWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Roles to fetch. + */ + orderBy?: RoleOrderByWithRelationInput | RoleOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Roles. + */ + cursor?: RoleWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Roles 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` Roles. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Roles. + */ + distinct?: RoleScalarFieldEnum | RoleScalarFieldEnum[] + } + + /** + * Role findMany + */ + export type RoleFindManyArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * Filter, which Roles to fetch. + */ + where?: RoleWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Roles to fetch. + */ + orderBy?: RoleOrderByWithRelationInput | RoleOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Roles. + */ + cursor?: RoleWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Roles 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` Roles. + */ + skip?: number + distinct?: RoleScalarFieldEnum | RoleScalarFieldEnum[] + } + + /** + * Role create + */ + export type RoleCreateArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * The data needed to create a Role. + */ + data: XOR + } + + /** + * Role createMany + */ + export type RoleCreateManyArgs = { + /** + * The data used to create many Roles. + */ + data: RoleCreateManyInput | RoleCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Role createManyAndReturn + */ + export type RoleCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelectCreateManyAndReturn | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * The data used to create many Roles. + */ + data: RoleCreateManyInput | RoleCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * Role update + */ + export type RoleUpdateArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * The data needed to update a Role. + */ + data: XOR + /** + * Choose, which Role to update. + */ + where: RoleWhereUniqueInput + } + + /** + * Role updateMany + */ + export type RoleUpdateManyArgs = { + /** + * The data used to update Roles. + */ + data: XOR + /** + * Filter which Roles to update + */ + where?: RoleWhereInput + /** + * Limit how many Roles to update. + */ + limit?: number + } + + /** + * Role updateManyAndReturn + */ + export type RoleUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * The data used to update Roles. + */ + data: XOR + /** + * Filter which Roles to update + */ + where?: RoleWhereInput + /** + * Limit how many Roles to update. + */ + limit?: number + } + + /** + * Role upsert + */ + export type RoleUpsertArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * The filter to search for the Role to update in case it exists. + */ + where: RoleWhereUniqueInput + /** + * In case the Role found by the `where` argument doesn't exist, create a new Role with this data. + */ + create: XOR + /** + * In case the Role was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * Role delete + */ + export type RoleDeleteArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + /** + * Filter which Role to delete. + */ + where: RoleWhereUniqueInput + } + + /** + * Role deleteMany + */ + export type RoleDeleteManyArgs = { + /** + * Filter which Roles to delete + */ + where?: RoleWhereInput + /** + * Limit how many Roles to delete. + */ + limit?: number + } + + /** + * Role.roleAssignments + */ + export type Role$roleAssignmentsArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + where?: RoleAssignmentWhereInput + orderBy?: RoleAssignmentOrderByWithRelationInput | RoleAssignmentOrderByWithRelationInput[] + cursor?: RoleAssignmentWhereUniqueInput + take?: number + skip?: number + distinct?: RoleAssignmentScalarFieldEnum | RoleAssignmentScalarFieldEnum[] + } + + /** + * Role without action + */ + export type RoleDefaultArgs = { + /** + * Select specific fields to fetch from the Role + */ + select?: RoleSelect | null + /** + * Omit specific fields from the Role + */ + omit?: RoleOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleInclude | null + } + + + /** + * Model RoleAssignment + */ + + export type AggregateRoleAssignment = { + _count: RoleAssignmentCountAggregateOutputType | null + _avg: RoleAssignmentAvgAggregateOutputType | null + _sum: RoleAssignmentSumAggregateOutputType | null + _min: RoleAssignmentMinAggregateOutputType | null + _max: RoleAssignmentMaxAggregateOutputType | null + } + + export type RoleAssignmentAvgAggregateOutputType = { + id: number | null + roleId: number | null + subjectId: number | null + createdBy: number | null + modifiedBy: number | null + subjectType: number | null + } + + export type RoleAssignmentSumAggregateOutputType = { + id: number | null + roleId: number | null + subjectId: number | null + createdBy: number | null + modifiedBy: number | null + subjectType: number | null + } + + export type RoleAssignmentMinAggregateOutputType = { + id: number | null + roleId: number | null + subjectId: number | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + subjectType: number | null + } + + export type RoleAssignmentMaxAggregateOutputType = { + id: number | null + roleId: number | null + subjectId: number | null + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + subjectType: number | null + } + + export type RoleAssignmentCountAggregateOutputType = { + id: number + roleId: number + subjectId: number + createdBy: number + createdAt: number + modifiedBy: number + modifiedAt: number + subjectType: number + _all: number + } + + + export type RoleAssignmentAvgAggregateInputType = { + id?: true + roleId?: true + subjectId?: true + createdBy?: true + modifiedBy?: true + subjectType?: true + } + + export type RoleAssignmentSumAggregateInputType = { + id?: true + roleId?: true + subjectId?: true + createdBy?: true + modifiedBy?: true + subjectType?: true + } + + export type RoleAssignmentMinAggregateInputType = { + id?: true + roleId?: true + subjectId?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + subjectType?: true + } + + export type RoleAssignmentMaxAggregateInputType = { + id?: true + roleId?: true + subjectId?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + subjectType?: true + } + + export type RoleAssignmentCountAggregateInputType = { + id?: true + roleId?: true + subjectId?: true + createdBy?: true + createdAt?: true + modifiedBy?: true + modifiedAt?: true + subjectType?: true + _all?: true + } + + export type RoleAssignmentAggregateArgs = { + /** + * Filter which RoleAssignment to aggregate. + */ + where?: RoleAssignmentWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of RoleAssignments to fetch. + */ + orderBy?: RoleAssignmentOrderByWithRelationInput | RoleAssignmentOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: RoleAssignmentWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` RoleAssignments 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` RoleAssignments. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned RoleAssignments + **/ + _count?: true | RoleAssignmentCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: RoleAssignmentAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: RoleAssignmentSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: RoleAssignmentMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: RoleAssignmentMaxAggregateInputType + } + + export type GetRoleAssignmentAggregateType = { + [P in keyof T & keyof AggregateRoleAssignment]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : GetScalarType + : GetScalarType + } + + + + + export type RoleAssignmentGroupByArgs = { + where?: RoleAssignmentWhereInput + orderBy?: RoleAssignmentOrderByWithAggregationInput | RoleAssignmentOrderByWithAggregationInput[] + by: RoleAssignmentScalarFieldEnum[] | RoleAssignmentScalarFieldEnum + having?: RoleAssignmentScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: RoleAssignmentCountAggregateInputType | true + _avg?: RoleAssignmentAvgAggregateInputType + _sum?: RoleAssignmentSumAggregateInputType + _min?: RoleAssignmentMinAggregateInputType + _max?: RoleAssignmentMaxAggregateInputType + } + + export type RoleAssignmentGroupByOutputType = { + id: number + roleId: number + subjectId: number + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + subjectType: number + _count: RoleAssignmentCountAggregateOutputType | null + _avg: RoleAssignmentAvgAggregateOutputType | null + _sum: RoleAssignmentSumAggregateOutputType | null + _min: RoleAssignmentMinAggregateOutputType | null + _max: RoleAssignmentMaxAggregateOutputType | null + } + + type GetRoleAssignmentGroupByPayload = Prisma.PrismaPromise< + Array< + PickEnumerable & + { + [P in ((keyof T) & (keyof RoleAssignmentGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : GetScalarType + : GetScalarType + } + > + > + + + export type RoleAssignmentSelect = $Extensions.GetSelect<{ + id?: boolean + roleId?: boolean + subjectId?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + subjectType?: boolean + role?: boolean | RoleDefaultArgs + }, ExtArgs["result"]["roleAssignment"]> + + export type RoleAssignmentSelectCreateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + roleId?: boolean + subjectId?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + subjectType?: boolean + role?: boolean | RoleDefaultArgs + }, ExtArgs["result"]["roleAssignment"]> + + export type RoleAssignmentSelectUpdateManyAndReturn = $Extensions.GetSelect<{ + id?: boolean + roleId?: boolean + subjectId?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + subjectType?: boolean + role?: boolean | RoleDefaultArgs + }, ExtArgs["result"]["roleAssignment"]> + + export type RoleAssignmentSelectScalar = { + id?: boolean + roleId?: boolean + subjectId?: boolean + createdBy?: boolean + createdAt?: boolean + modifiedBy?: boolean + modifiedAt?: boolean + subjectType?: boolean + } + + export type RoleAssignmentOmit = $Extensions.GetOmit<"id" | "roleId" | "subjectId" | "createdBy" | "createdAt" | "modifiedBy" | "modifiedAt" | "subjectType", ExtArgs["result"]["roleAssignment"]> + export type RoleAssignmentInclude = { + role?: boolean | RoleDefaultArgs + } + export type RoleAssignmentIncludeCreateManyAndReturn = { + role?: boolean | RoleDefaultArgs + } + export type RoleAssignmentIncludeUpdateManyAndReturn = { + role?: boolean | RoleDefaultArgs + } + + export type $RoleAssignmentPayload = { + name: "RoleAssignment" + objects: { + role: Prisma.$RolePayload + } + scalars: $Extensions.GetPayloadResult<{ + id: number + roleId: number + subjectId: number + createdBy: number | null + createdAt: Date | null + modifiedBy: number | null + modifiedAt: Date | null + subjectType: number + }, ExtArgs["result"]["roleAssignment"]> + composites: {} + } + + type RoleAssignmentGetPayload = $Result.GetResult + + type RoleAssignmentCountArgs = + Omit & { + select?: RoleAssignmentCountAggregateInputType | true + } + + export interface RoleAssignmentDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['RoleAssignment'], meta: { name: 'RoleAssignment' } } + /** + * Find zero or one RoleAssignment that matches the filter. + * @param {RoleAssignmentFindUniqueArgs} args - Arguments to find a RoleAssignment + * @example + * // Get one RoleAssignment + * const roleAssignment = await prisma.roleAssignment.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one RoleAssignment that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {RoleAssignmentFindUniqueOrThrowArgs} args - Arguments to find a RoleAssignment + * @example + * // Get one RoleAssignment + * const roleAssignment = await prisma.roleAssignment.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first RoleAssignment 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 {RoleAssignmentFindFirstArgs} args - Arguments to find a RoleAssignment + * @example + * // Get one RoleAssignment + * const roleAssignment = await prisma.roleAssignment.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first RoleAssignment 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 {RoleAssignmentFindFirstOrThrowArgs} args - Arguments to find a RoleAssignment + * @example + * // Get one RoleAssignment + * const roleAssignment = await prisma.roleAssignment.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more RoleAssignments 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 {RoleAssignmentFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all RoleAssignments + * const roleAssignments = await prisma.roleAssignment.findMany() + * + * // Get first 10 RoleAssignments + * const roleAssignments = await prisma.roleAssignment.findMany({ take: 10 }) + * + * // Only select the `id` + * const roleAssignmentWithIdOnly = await prisma.roleAssignment.findMany({ select: { id: true } }) + * + */ + findMany(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "findMany", GlobalOmitOptions>> + + /** + * Create a RoleAssignment. + * @param {RoleAssignmentCreateArgs} args - Arguments to create a RoleAssignment. + * @example + * // Create one RoleAssignment + * const RoleAssignment = await prisma.roleAssignment.create({ + * data: { + * // ... data to create a RoleAssignment + * } + * }) + * + */ + create(args: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many RoleAssignments. + * @param {RoleAssignmentCreateManyArgs} args - Arguments to create many RoleAssignments. + * @example + * // Create many RoleAssignments + * const roleAssignment = await prisma.roleAssignment.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Create many RoleAssignments and returns the data saved in the database. + * @param {RoleAssignmentCreateManyAndReturnArgs} args - Arguments to create many RoleAssignments. + * @example + * // Create many RoleAssignments + * const roleAssignment = await prisma.roleAssignment.createManyAndReturn({ + * data: [ + * // ... provide data here + * ] + * }) + * + * // Create many RoleAssignments and only return the `id` + * const roleAssignmentWithIdOnly = await prisma.roleAssignment.createManyAndReturn({ + * select: { id: true }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + createManyAndReturn(args?: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "createManyAndReturn", GlobalOmitOptions>> + + /** + * Delete a RoleAssignment. + * @param {RoleAssignmentDeleteArgs} args - Arguments to delete one RoleAssignment. + * @example + * // Delete one RoleAssignment + * const RoleAssignment = await prisma.roleAssignment.delete({ + * where: { + * // ... filter to delete one RoleAssignment + * } + * }) + * + */ + delete(args: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one RoleAssignment. + * @param {RoleAssignmentUpdateArgs} args - Arguments to update one RoleAssignment. + * @example + * // Update one RoleAssignment + * const roleAssignment = await prisma.roleAssignment.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more RoleAssignments. + * @param {RoleAssignmentDeleteManyArgs} args - Arguments to filter RoleAssignments to delete. + * @example + * // Delete a few RoleAssignments + * const { count } = await prisma.roleAssignment.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more RoleAssignments. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleAssignmentUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many RoleAssignments + * const roleAssignment = await prisma.roleAssignment.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more RoleAssignments and returns the data updated in the database. + * @param {RoleAssignmentUpdateManyAndReturnArgs} args - Arguments to update many RoleAssignments. + * @example + * // Update many RoleAssignments + * const roleAssignment = await prisma.roleAssignment.updateManyAndReturn({ + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * + * // Update zero or more RoleAssignments and only return the `id` + * const roleAssignmentWithIdOnly = await prisma.roleAssignment.updateManyAndReturn({ + * select: { id: true }, + * where: { + * // ... provide filter here + * }, + * data: [ + * // ... provide data here + * ] + * }) + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * + */ + updateManyAndReturn(args: SelectSubset>): Prisma.PrismaPromise<$Result.GetResult, T, "updateManyAndReturn", GlobalOmitOptions>> + + /** + * Create or update one RoleAssignment. + * @param {RoleAssignmentUpsertArgs} args - Arguments to update or create a RoleAssignment. + * @example + * // Update or create a RoleAssignment + * const roleAssignment = await prisma.roleAssignment.upsert({ + * create: { + * // ... data to create a RoleAssignment + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the RoleAssignment we want to update + * } + * }) + */ + upsert(args: SelectSubset>): Prisma__RoleAssignmentClient<$Result.GetResult, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of RoleAssignments. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleAssignmentCountArgs} args - Arguments to filter RoleAssignments to count. + * @example + * // Count the number of RoleAssignments + * const count = await prisma.roleAssignment.count({ + * where: { + * // ... the filter for the RoleAssignments 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 RoleAssignment. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleAssignmentAggregateArgs} 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 RoleAssignment. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {RoleAssignmentGroupByArgs} 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 RoleAssignmentGroupByArgs, + HasSelectOrTake extends Or< + Extends<'skip', Keys>, + Extends<'take', Keys> + >, + OrderByArg extends True extends HasSelectOrTake + ? { orderBy: RoleAssignmentGroupByArgs['orderBy'] } + : { orderBy?: RoleAssignmentGroupByArgs['orderBy'] }, + OrderFields extends ExcludeUnderscoreKeys>>, + ByFields extends MaybeTupleToUnion, + ByValid extends Has, + HavingFields extends GetHavingFields, + HavingValid extends Has, + ByEmpty extends T['by'] extends never[] ? True : False, + InputErrors extends ByEmpty extends True + ? `Error: "by" must not be empty.` + : HavingValid extends False + ? { + [P in HavingFields]: P extends ByFields + ? never + : P extends string + ? `Error: Field "${P}" used in "having" needs to be provided in "by".` + : [ + Error, + 'Field ', + P, + ` in "having" needs to be provided in "by"`, + ] + }[HavingFields] + : 'take' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "take", you also need to provide "orderBy"' + : 'skip' extends Keys + ? 'orderBy' extends Keys + ? ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + : 'Error: If you provide "skip", you also need to provide "orderBy"' + : ByValid extends True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: SubsetIntersection & InputErrors): {} extends InputErrors ? GetRoleAssignmentGroupByPayload : Prisma.PrismaPromise + /** + * Fields of the RoleAssignment model + */ + readonly fields: RoleAssignmentFieldRefs; + } + + /** + * The delegate class that acts as a "Promise-like" for RoleAssignment. + * 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__RoleAssignmentClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + role = {}>(args?: Subset>): Prisma__RoleClient<$Result.GetResult, 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 RoleAssignment model + */ + interface RoleAssignmentFieldRefs { + readonly id: FieldRef<"RoleAssignment", 'Int'> + readonly roleId: FieldRef<"RoleAssignment", 'Int'> + readonly subjectId: FieldRef<"RoleAssignment", 'Int'> + readonly createdBy: FieldRef<"RoleAssignment", 'Int'> + readonly createdAt: FieldRef<"RoleAssignment", 'DateTime'> + readonly modifiedBy: FieldRef<"RoleAssignment", 'Int'> + readonly modifiedAt: FieldRef<"RoleAssignment", 'DateTime'> + readonly subjectType: FieldRef<"RoleAssignment", 'Int'> + } + + + // Custom InputTypes + /** + * RoleAssignment findUnique + */ + export type RoleAssignmentFindUniqueArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * Filter, which RoleAssignment to fetch. + */ + where: RoleAssignmentWhereUniqueInput + } + + /** + * RoleAssignment findUniqueOrThrow + */ + export type RoleAssignmentFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * Filter, which RoleAssignment to fetch. + */ + where: RoleAssignmentWhereUniqueInput + } + + /** + * RoleAssignment findFirst + */ + export type RoleAssignmentFindFirstArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * Filter, which RoleAssignment to fetch. + */ + where?: RoleAssignmentWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of RoleAssignments to fetch. + */ + orderBy?: RoleAssignmentOrderByWithRelationInput | RoleAssignmentOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for RoleAssignments. + */ + cursor?: RoleAssignmentWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` RoleAssignments 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` RoleAssignments. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of RoleAssignments. + */ + distinct?: RoleAssignmentScalarFieldEnum | RoleAssignmentScalarFieldEnum[] + } + + /** + * RoleAssignment findFirstOrThrow + */ + export type RoleAssignmentFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * Filter, which RoleAssignment to fetch. + */ + where?: RoleAssignmentWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of RoleAssignments to fetch. + */ + orderBy?: RoleAssignmentOrderByWithRelationInput | RoleAssignmentOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for RoleAssignments. + */ + cursor?: RoleAssignmentWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` RoleAssignments 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` RoleAssignments. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of RoleAssignments. + */ + distinct?: RoleAssignmentScalarFieldEnum | RoleAssignmentScalarFieldEnum[] + } + + /** + * RoleAssignment findMany + */ + export type RoleAssignmentFindManyArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * Filter, which RoleAssignments to fetch. + */ + where?: RoleAssignmentWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of RoleAssignments to fetch. + */ + orderBy?: RoleAssignmentOrderByWithRelationInput | RoleAssignmentOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing RoleAssignments. + */ + cursor?: RoleAssignmentWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` RoleAssignments 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` RoleAssignments. + */ + skip?: number + distinct?: RoleAssignmentScalarFieldEnum | RoleAssignmentScalarFieldEnum[] + } + + /** + * RoleAssignment create + */ + export type RoleAssignmentCreateArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * The data needed to create a RoleAssignment. + */ + data: XOR + } + + /** + * RoleAssignment createMany + */ + export type RoleAssignmentCreateManyArgs = { + /** + * The data used to create many RoleAssignments. + */ + data: RoleAssignmentCreateManyInput | RoleAssignmentCreateManyInput[] + skipDuplicates?: boolean + } + + /** + * RoleAssignment createManyAndReturn + */ + export type RoleAssignmentCreateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelectCreateManyAndReturn | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * The data used to create many RoleAssignments. + */ + data: RoleAssignmentCreateManyInput | RoleAssignmentCreateManyInput[] + skipDuplicates?: boolean + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentIncludeCreateManyAndReturn | null + } + + /** + * RoleAssignment update + */ + export type RoleAssignmentUpdateArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * The data needed to update a RoleAssignment. + */ + data: XOR + /** + * Choose, which RoleAssignment to update. + */ + where: RoleAssignmentWhereUniqueInput + } + + /** + * RoleAssignment updateMany + */ + export type RoleAssignmentUpdateManyArgs = { + /** + * The data used to update RoleAssignments. + */ + data: XOR + /** + * Filter which RoleAssignments to update + */ + where?: RoleAssignmentWhereInput + /** + * Limit how many RoleAssignments to update. + */ + limit?: number + } + + /** + * RoleAssignment updateManyAndReturn + */ + export type RoleAssignmentUpdateManyAndReturnArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelectUpdateManyAndReturn | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * The data used to update RoleAssignments. + */ + data: XOR + /** + * Filter which RoleAssignments to update + */ + where?: RoleAssignmentWhereInput + /** + * Limit how many RoleAssignments to update. + */ + limit?: number + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentIncludeUpdateManyAndReturn | null + } + + /** + * RoleAssignment upsert + */ + export type RoleAssignmentUpsertArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * The filter to search for the RoleAssignment to update in case it exists. + */ + where: RoleAssignmentWhereUniqueInput + /** + * In case the RoleAssignment found by the `where` argument doesn't exist, create a new RoleAssignment with this data. + */ + create: XOR + /** + * In case the RoleAssignment was found with the provided `where` argument, update it with this data. + */ + update: XOR + } + + /** + * RoleAssignment delete + */ + export type RoleAssignmentDeleteArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + /** + * Filter which RoleAssignment to delete. + */ + where: RoleAssignmentWhereUniqueInput + } + + /** + * RoleAssignment deleteMany + */ + export type RoleAssignmentDeleteManyArgs = { + /** + * Filter which RoleAssignments to delete + */ + where?: RoleAssignmentWhereInput + /** + * Limit how many RoleAssignments to delete. + */ + limit?: number + } + + /** + * RoleAssignment without action + */ + export type RoleAssignmentDefaultArgs = { + /** + * Select specific fields to fetch from the RoleAssignment + */ + select?: RoleAssignmentSelect | null + /** + * Omit specific fields from the RoleAssignment + */ + omit?: RoleAssignmentOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: RoleAssignmentInclude | null + } + + + /** + * Enums + */ + + export const TransactionIsolationLevel: { + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' + }; + + export type TransactionIsolationLevel = (typeof TransactionIsolationLevel)[keyof typeof TransactionIsolationLevel] + + + export const Achievement_type_luScalarFieldEnum: { + achievement_type_id: 'achievement_type_id', + achievement_type_desc: 'achievement_type_desc' + }; + + export type Achievement_type_luScalarFieldEnum = (typeof Achievement_type_luScalarFieldEnum)[keyof typeof Achievement_type_luScalarFieldEnum] + + + export const CountryScalarFieldEnum: { + country_code: 'country_code', + country_name: 'country_name', + modify_date: 'modify_date', + participating: 'participating', + default_taxform_id: 'default_taxform_id', + longitude: 'longitude', + latitude: 'latitude', + region: 'region', + iso_name: 'iso_name', + iso_alpha2_code: 'iso_alpha2_code', + iso_alpha3_code: 'iso_alpha3_code' + }; + + export type CountryScalarFieldEnum = (typeof CountryScalarFieldEnum)[keyof typeof CountryScalarFieldEnum] + + + export const Dice_connectionScalarFieldEnum: { + id: 'id', + user_id: 'user_id', + connection: 'connection', + accepted: 'accepted', + created_at: 'created_at', + short_url: 'short_url', + con_created_at: 'con_created_at' + }; + + export type Dice_connectionScalarFieldEnum = (typeof Dice_connectionScalarFieldEnum)[keyof typeof Dice_connectionScalarFieldEnum] + + + export const EmailScalarFieldEnum: { + user_id: 'user_id', + email_id: 'email_id', + email_type_id: 'email_type_id', + address: 'address', + create_date: 'create_date', + modify_date: 'modify_date', + primary_ind: 'primary_ind', + status_id: 'status_id' + }; + + export type EmailScalarFieldEnum = (typeof EmailScalarFieldEnum)[keyof typeof EmailScalarFieldEnum] + + + export const Email_status_luScalarFieldEnum: { + status_id: 'status_id', + status_desc: 'status_desc', + create_date: 'create_date', + modify_date: 'modify_date' + }; + + export type Email_status_luScalarFieldEnum = (typeof Email_status_luScalarFieldEnum)[keyof typeof Email_status_luScalarFieldEnum] + + + export const Email_type_luScalarFieldEnum: { + email_type_id: 'email_type_id', + email_type_desc: 'email_type_desc', + create_date: 'create_date', + modify_date: 'modify_date' + }; + + export type Email_type_luScalarFieldEnum = (typeof Email_type_luScalarFieldEnum)[keyof typeof Email_type_luScalarFieldEnum] + + + export const Id_sequencesScalarFieldEnum: { + name: 'name', + next_block_start: 'next_block_start', + block_size: 'block_size', + exhausted: 'exhausted' + }; + + export type Id_sequencesScalarFieldEnum = (typeof Id_sequencesScalarFieldEnum)[keyof typeof Id_sequencesScalarFieldEnum] + + + export const Invalid_handlesScalarFieldEnum: { + invalid_handle_id: 'invalid_handle_id', + invalid_handle: 'invalid_handle' + }; + + export type Invalid_handlesScalarFieldEnum = (typeof Invalid_handlesScalarFieldEnum)[keyof typeof Invalid_handlesScalarFieldEnum] + + + export const Security_groupsScalarFieldEnum: { + group_id: 'group_id', + description: 'description', + challenge_group_ind: 'challenge_group_ind', + create_user_id: 'create_user_id' + }; + + export type Security_groupsScalarFieldEnum = (typeof Security_groupsScalarFieldEnum)[keyof typeof Security_groupsScalarFieldEnum] + + + export const Security_status_luScalarFieldEnum: { + security_status_id: 'security_status_id', + status_desc: 'status_desc' + }; + + export type Security_status_luScalarFieldEnum = (typeof Security_status_luScalarFieldEnum)[keyof typeof Security_status_luScalarFieldEnum] + + + export const Security_userScalarFieldEnum: { + login_id: 'login_id', + user_id: 'user_id', + password: 'password', + create_user_id: 'create_user_id', + modify_date: 'modify_date' + }; + + export type Security_userScalarFieldEnum = (typeof Security_userScalarFieldEnum)[keyof typeof Security_userScalarFieldEnum] + + + export const Social_login_providerScalarFieldEnum: { + social_login_provider_id: 'social_login_provider_id', + name: 'name' + }; + + export type Social_login_providerScalarFieldEnum = (typeof Social_login_providerScalarFieldEnum)[keyof typeof Social_login_providerScalarFieldEnum] + + + export const Sso_login_providerScalarFieldEnum: { + sso_login_provider_id: 'sso_login_provider_id', + name: 'name', + type: 'type', + identify_email_enabled: 'identify_email_enabled', + identify_handle_enabled: 'identify_handle_enabled' + }; + + export type Sso_login_providerScalarFieldEnum = (typeof Sso_login_providerScalarFieldEnum)[keyof typeof Sso_login_providerScalarFieldEnum] + + + export const UserScalarFieldEnum: { + user_id: 'user_id', + first_name: 'first_name', + last_name: 'last_name', + create_date: 'create_date', + modify_date: 'modify_date', + handle: 'handle', + last_login: 'last_login', + status: 'status', + activation_code: 'activation_code', + middle_name: 'middle_name', + handle_lower: 'handle_lower', + timezone_id: 'timezone_id', + last_site_hit_date: 'last_site_hit_date', + name_in_another_language: 'name_in_another_language', + password: 'password', + open_id: 'open_id', + reg_source: 'reg_source', + utm_source: 'utm_source', + utm_medium: 'utm_medium', + utm_campaign: 'utm_campaign' + }; + + export type UserScalarFieldEnum = (typeof UserScalarFieldEnum)[keyof typeof UserScalarFieldEnum] + + + export const User_2faScalarFieldEnum: { + id: 'id', + user_id: 'user_id', + mfa_enabled: 'mfa_enabled', + dice_enabled: 'dice_enabled', + created_by: 'created_by', + created_at: 'created_at', + modified_by: 'modified_by', + modified_at: 'modified_at' + }; + + export type User_2faScalarFieldEnum = (typeof User_2faScalarFieldEnum)[keyof typeof User_2faScalarFieldEnum] + + + export const User_achievementScalarFieldEnum: { + user_id: 'user_id', + achievement_date: 'achievement_date', + achievement_type_id: 'achievement_type_id', + description: 'description', + create_date: 'create_date' + }; + + export type User_achievementScalarFieldEnum = (typeof User_achievementScalarFieldEnum)[keyof typeof User_achievementScalarFieldEnum] + + + export const User_group_xrefScalarFieldEnum: { + user_group_id: 'user_group_id', + login_id: 'login_id', + group_id: 'group_id', + create_user_id: 'create_user_id', + security_status_id: 'security_status_id', + create_date: 'create_date' + }; + + export type User_group_xrefScalarFieldEnum = (typeof User_group_xrefScalarFieldEnum)[keyof typeof User_group_xrefScalarFieldEnum] + + + export const User_otp_emailScalarFieldEnum: { + id: 'id', + user_id: 'user_id', + mode: 'mode', + otp: 'otp', + expire_at: 'expire_at', + resend: 'resend', + fail_count: 'fail_count' + }; + + export type User_otp_emailScalarFieldEnum = (typeof User_otp_emailScalarFieldEnum)[keyof typeof User_otp_emailScalarFieldEnum] + + + export const User_social_loginScalarFieldEnum: { + social_user_id: 'social_user_id', + user_id: 'user_id', + social_login_provider_id: 'social_login_provider_id', + social_user_name: 'social_user_name', + social_email: 'social_email', + social_email_verified: 'social_email_verified', + create_date: 'create_date', + modify_date: 'modify_date' + }; + + export type User_social_loginScalarFieldEnum = (typeof User_social_loginScalarFieldEnum)[keyof typeof User_social_loginScalarFieldEnum] + + + export const User_sso_loginScalarFieldEnum: { + user_id: 'user_id', + sso_user_id: 'sso_user_id', + sso_user_name: 'sso_user_name', + provider_id: 'provider_id', + email: 'email' + }; + + export type User_sso_loginScalarFieldEnum = (typeof User_sso_loginScalarFieldEnum)[keyof typeof User_sso_loginScalarFieldEnum] + + + export const User_statusScalarFieldEnum: { + user_id: 'user_id', + user_status_type_id: 'user_status_type_id', + user_status_id: 'user_status_id' + }; + + export type User_statusScalarFieldEnum = (typeof User_statusScalarFieldEnum)[keyof typeof User_statusScalarFieldEnum] + + + export const User_status_luScalarFieldEnum: { + user_status_id: 'user_status_id', + description: 'description' + }; + + export type User_status_luScalarFieldEnum = (typeof User_status_luScalarFieldEnum)[keyof typeof User_status_luScalarFieldEnum] + + + export const User_status_type_luScalarFieldEnum: { + user_status_type_id: 'user_status_type_id', + description: 'description' + }; + + export type User_status_type_luScalarFieldEnum = (typeof User_status_type_luScalarFieldEnum)[keyof typeof User_status_type_luScalarFieldEnum] + + + export const User_email_xrefScalarFieldEnum: { + user_id: 'user_id', + email_id: 'email_id', + is_primary: 'is_primary', + status_id: 'status_id', + create_date: 'create_date', + modify_date: 'modify_date' + }; + + export type User_email_xrefScalarFieldEnum = (typeof User_email_xrefScalarFieldEnum)[keyof typeof User_email_xrefScalarFieldEnum] + + + export const ClientScalarFieldEnum: { + id: 'id', + clientId: 'clientId', + name: 'name', + redirectUri: 'redirectUri', + secret: 'secret', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' + }; + + export type ClientScalarFieldEnum = (typeof ClientScalarFieldEnum)[keyof typeof ClientScalarFieldEnum] + + + export const RoleScalarFieldEnum: { + id: 'id', + name: 'name', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' + }; + + export type RoleScalarFieldEnum = (typeof RoleScalarFieldEnum)[keyof typeof RoleScalarFieldEnum] + + + export const RoleAssignmentScalarFieldEnum: { + id: 'id', + roleId: 'roleId', + subjectId: 'subjectId', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt', + subjectType: 'subjectType' + }; + + export type RoleAssignmentScalarFieldEnum = (typeof RoleAssignmentScalarFieldEnum)[keyof typeof RoleAssignmentScalarFieldEnum] + + + export const SortOrder: { + asc: 'asc', + desc: 'desc' + }; + + export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder] + + + export const QueryMode: { + default: 'default', + insensitive: 'insensitive' + }; + + export type QueryMode = (typeof QueryMode)[keyof typeof QueryMode] + + + export const NullsOrder: { + first: 'first', + last: 'last' + }; + + export type NullsOrder = (typeof NullsOrder)[keyof typeof NullsOrder] + + + /** + * Field references + */ + + + /** + * Reference to a field of type 'Decimal' + */ + export type DecimalFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Decimal'> + + + + /** + * Reference to a field of type 'Decimal[]' + */ + export type ListDecimalFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Decimal[]'> + + + + /** + * 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 'Boolean' + */ + export type BooleanFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Boolean'> + + + + /** + * 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[]'> + + /** + * Deep Input Types + */ + + + export type achievement_type_luWhereInput = { + AND?: achievement_type_luWhereInput | achievement_type_luWhereInput[] + OR?: achievement_type_luWhereInput[] + NOT?: achievement_type_luWhereInput | achievement_type_luWhereInput[] + achievement_type_id?: DecimalFilter<"achievement_type_lu"> | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFilter<"achievement_type_lu"> | string + user_achievement?: User_achievementListRelationFilter + } + + export type achievement_type_luOrderByWithRelationInput = { + achievement_type_id?: SortOrder + achievement_type_desc?: SortOrder + user_achievement?: user_achievementOrderByRelationAggregateInput + } + + export type achievement_type_luWhereUniqueInput = Prisma.AtLeast<{ + achievement_type_id?: Decimal | DecimalJsLike | number | string + AND?: achievement_type_luWhereInput | achievement_type_luWhereInput[] + OR?: achievement_type_luWhereInput[] + NOT?: achievement_type_luWhereInput | achievement_type_luWhereInput[] + achievement_type_desc?: StringFilter<"achievement_type_lu"> | string + user_achievement?: User_achievementListRelationFilter + }, "achievement_type_id"> + + export type achievement_type_luOrderByWithAggregationInput = { + achievement_type_id?: SortOrder + achievement_type_desc?: SortOrder + _count?: achievement_type_luCountOrderByAggregateInput + _avg?: achievement_type_luAvgOrderByAggregateInput + _max?: achievement_type_luMaxOrderByAggregateInput + _min?: achievement_type_luMinOrderByAggregateInput + _sum?: achievement_type_luSumOrderByAggregateInput + } + + export type achievement_type_luScalarWhereWithAggregatesInput = { + AND?: achievement_type_luScalarWhereWithAggregatesInput | achievement_type_luScalarWhereWithAggregatesInput[] + OR?: achievement_type_luScalarWhereWithAggregatesInput[] + NOT?: achievement_type_luScalarWhereWithAggregatesInput | achievement_type_luScalarWhereWithAggregatesInput[] + achievement_type_id?: DecimalWithAggregatesFilter<"achievement_type_lu"> | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringWithAggregatesFilter<"achievement_type_lu"> | string + } + + export type countryWhereInput = { + AND?: countryWhereInput | countryWhereInput[] + OR?: countryWhereInput[] + NOT?: countryWhereInput | countryWhereInput[] + country_code?: StringFilter<"country"> | string + country_name?: StringFilter<"country"> | string + modify_date?: DateTimeNullableFilter<"country"> | Date | string | null + participating?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + longitude?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + latitude?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + region?: StringNullableFilter<"country"> | string | null + iso_name?: StringNullableFilter<"country"> | string | null + iso_alpha2_code?: StringNullableFilter<"country"> | string | null + iso_alpha3_code?: StringNullableFilter<"country"> | string | null + } + + export type countryOrderByWithRelationInput = { + country_code?: SortOrder + country_name?: SortOrder + modify_date?: SortOrderInput | SortOrder + participating?: SortOrderInput | SortOrder + default_taxform_id?: SortOrderInput | SortOrder + longitude?: SortOrderInput | SortOrder + latitude?: SortOrderInput | SortOrder + region?: SortOrderInput | SortOrder + iso_name?: SortOrderInput | SortOrder + iso_alpha2_code?: SortOrderInput | SortOrder + iso_alpha3_code?: SortOrderInput | SortOrder + } + + export type countryWhereUniqueInput = Prisma.AtLeast<{ + country_code?: string + AND?: countryWhereInput | countryWhereInput[] + OR?: countryWhereInput[] + NOT?: countryWhereInput | countryWhereInput[] + country_name?: StringFilter<"country"> | string + modify_date?: DateTimeNullableFilter<"country"> | Date | string | null + participating?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + longitude?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + latitude?: DecimalNullableFilter<"country"> | Decimal | DecimalJsLike | number | string | null + region?: StringNullableFilter<"country"> | string | null + iso_name?: StringNullableFilter<"country"> | string | null + iso_alpha2_code?: StringNullableFilter<"country"> | string | null + iso_alpha3_code?: StringNullableFilter<"country"> | string | null + }, "country_code"> + + export type countryOrderByWithAggregationInput = { + country_code?: SortOrder + country_name?: SortOrder + modify_date?: SortOrderInput | SortOrder + participating?: SortOrderInput | SortOrder + default_taxform_id?: SortOrderInput | SortOrder + longitude?: SortOrderInput | SortOrder + latitude?: SortOrderInput | SortOrder + region?: SortOrderInput | SortOrder + iso_name?: SortOrderInput | SortOrder + iso_alpha2_code?: SortOrderInput | SortOrder + iso_alpha3_code?: SortOrderInput | SortOrder + _count?: countryCountOrderByAggregateInput + _avg?: countryAvgOrderByAggregateInput + _max?: countryMaxOrderByAggregateInput + _min?: countryMinOrderByAggregateInput + _sum?: countrySumOrderByAggregateInput + } + + export type countryScalarWhereWithAggregatesInput = { + AND?: countryScalarWhereWithAggregatesInput | countryScalarWhereWithAggregatesInput[] + OR?: countryScalarWhereWithAggregatesInput[] + NOT?: countryScalarWhereWithAggregatesInput | countryScalarWhereWithAggregatesInput[] + country_code?: StringWithAggregatesFilter<"country"> | string + country_name?: StringWithAggregatesFilter<"country"> | string + modify_date?: DateTimeNullableWithAggregatesFilter<"country"> | Date | string | null + participating?: DecimalNullableWithAggregatesFilter<"country"> | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: DecimalNullableWithAggregatesFilter<"country"> | Decimal | DecimalJsLike | number | string | null + longitude?: DecimalNullableWithAggregatesFilter<"country"> | Decimal | DecimalJsLike | number | string | null + latitude?: DecimalNullableWithAggregatesFilter<"country"> | Decimal | DecimalJsLike | number | string | null + region?: StringNullableWithAggregatesFilter<"country"> | string | null + iso_name?: StringNullableWithAggregatesFilter<"country"> | string | null + iso_alpha2_code?: StringNullableWithAggregatesFilter<"country"> | string | null + iso_alpha3_code?: StringNullableWithAggregatesFilter<"country"> | string | null + } + + export type dice_connectionWhereInput = { + AND?: dice_connectionWhereInput | dice_connectionWhereInput[] + OR?: dice_connectionWhereInput[] + NOT?: dice_connectionWhereInput | dice_connectionWhereInput[] + id?: IntFilter<"dice_connection"> | number + user_id?: DecimalFilter<"dice_connection"> | Decimal | DecimalJsLike | number | string + connection?: StringNullableFilter<"dice_connection"> | string | null + accepted?: BoolFilter<"dice_connection"> | boolean + created_at?: DateTimeFilter<"dice_connection"> | Date | string + short_url?: StringNullableFilter<"dice_connection"> | string | null + con_created_at?: DateTimeNullableFilter<"dice_connection"> | Date | string | null + user?: XOR + } + + export type dice_connectionOrderByWithRelationInput = { + id?: SortOrder + user_id?: SortOrder + connection?: SortOrderInput | SortOrder + accepted?: SortOrder + created_at?: SortOrder + short_url?: SortOrderInput | SortOrder + con_created_at?: SortOrderInput | SortOrder + user?: userOrderByWithRelationInput + } + + export type dice_connectionWhereUniqueInput = Prisma.AtLeast<{ + id?: number + user_id?: Decimal | DecimalJsLike | number | string + AND?: dice_connectionWhereInput | dice_connectionWhereInput[] + OR?: dice_connectionWhereInput[] + NOT?: dice_connectionWhereInput | dice_connectionWhereInput[] + connection?: StringNullableFilter<"dice_connection"> | string | null + accepted?: BoolFilter<"dice_connection"> | boolean + created_at?: DateTimeFilter<"dice_connection"> | Date | string + short_url?: StringNullableFilter<"dice_connection"> | string | null + con_created_at?: DateTimeNullableFilter<"dice_connection"> | Date | string | null + user?: XOR + }, "id" | "user_id"> + + export type dice_connectionOrderByWithAggregationInput = { + id?: SortOrder + user_id?: SortOrder + connection?: SortOrderInput | SortOrder + accepted?: SortOrder + created_at?: SortOrder + short_url?: SortOrderInput | SortOrder + con_created_at?: SortOrderInput | SortOrder + _count?: dice_connectionCountOrderByAggregateInput + _avg?: dice_connectionAvgOrderByAggregateInput + _max?: dice_connectionMaxOrderByAggregateInput + _min?: dice_connectionMinOrderByAggregateInput + _sum?: dice_connectionSumOrderByAggregateInput + } + + export type dice_connectionScalarWhereWithAggregatesInput = { + AND?: dice_connectionScalarWhereWithAggregatesInput | dice_connectionScalarWhereWithAggregatesInput[] + OR?: dice_connectionScalarWhereWithAggregatesInput[] + NOT?: dice_connectionScalarWhereWithAggregatesInput | dice_connectionScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"dice_connection"> | number + user_id?: DecimalWithAggregatesFilter<"dice_connection"> | Decimal | DecimalJsLike | number | string + connection?: StringNullableWithAggregatesFilter<"dice_connection"> | string | null + accepted?: BoolWithAggregatesFilter<"dice_connection"> | boolean + created_at?: DateTimeWithAggregatesFilter<"dice_connection"> | Date | string + short_url?: StringNullableWithAggregatesFilter<"dice_connection"> | string | null + con_created_at?: DateTimeNullableWithAggregatesFilter<"dice_connection"> | Date | string | null + } + + export type emailWhereInput = { + AND?: emailWhereInput | emailWhereInput[] + OR?: emailWhereInput[] + NOT?: emailWhereInput | emailWhereInput[] + user_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFilter<"email"> | Decimal | DecimalJsLike | number | string + email_type_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + address?: StringNullableFilter<"email"> | string | null + create_date?: DateTimeNullableFilter<"email"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email"> | Date | string | null + primary_ind?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + status_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + email_status_lu?: XOR | null + email_type_lu?: XOR | null + user_email_xref?: User_email_xrefListRelationFilter + user?: XOR | null + } + + export type emailOrderByWithRelationInput = { + user_id?: SortOrderInput | SortOrder + email_id?: SortOrder + email_type_id?: SortOrderInput | SortOrder + address?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + primary_ind?: SortOrderInput | SortOrder + status_id?: SortOrderInput | SortOrder + email_status_lu?: email_status_luOrderByWithRelationInput + email_type_lu?: email_type_luOrderByWithRelationInput + user_email_xref?: user_email_xrefOrderByRelationAggregateInput + user?: userOrderByWithRelationInput + } + + export type emailWhereUniqueInput = Prisma.AtLeast<{ + email_id?: Decimal | DecimalJsLike | number | string + AND?: emailWhereInput | emailWhereInput[] + OR?: emailWhereInput[] + NOT?: emailWhereInput | emailWhereInput[] + user_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + email_type_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + address?: StringNullableFilter<"email"> | string | null + create_date?: DateTimeNullableFilter<"email"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email"> | Date | string | null + primary_ind?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + status_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + email_status_lu?: XOR | null + email_type_lu?: XOR | null + user_email_xref?: User_email_xrefListRelationFilter + user?: XOR | null + }, "email_id"> + + export type emailOrderByWithAggregationInput = { + user_id?: SortOrderInput | SortOrder + email_id?: SortOrder + email_type_id?: SortOrderInput | SortOrder + address?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + primary_ind?: SortOrderInput | SortOrder + status_id?: SortOrderInput | SortOrder + _count?: emailCountOrderByAggregateInput + _avg?: emailAvgOrderByAggregateInput + _max?: emailMaxOrderByAggregateInput + _min?: emailMinOrderByAggregateInput + _sum?: emailSumOrderByAggregateInput + } + + export type emailScalarWhereWithAggregatesInput = { + AND?: emailScalarWhereWithAggregatesInput | emailScalarWhereWithAggregatesInput[] + OR?: emailScalarWhereWithAggregatesInput[] + NOT?: emailScalarWhereWithAggregatesInput | emailScalarWhereWithAggregatesInput[] + user_id?: DecimalNullableWithAggregatesFilter<"email"> | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalWithAggregatesFilter<"email"> | Decimal | DecimalJsLike | number | string + email_type_id?: DecimalNullableWithAggregatesFilter<"email"> | Decimal | DecimalJsLike | number | string | null + address?: StringNullableWithAggregatesFilter<"email"> | string | null + create_date?: DateTimeNullableWithAggregatesFilter<"email"> | Date | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"email"> | Date | string | null + primary_ind?: DecimalNullableWithAggregatesFilter<"email"> | Decimal | DecimalJsLike | number | string | null + status_id?: DecimalNullableWithAggregatesFilter<"email"> | Decimal | DecimalJsLike | number | string | null + } + + export type email_status_luWhereInput = { + AND?: email_status_luWhereInput | email_status_luWhereInput[] + OR?: email_status_luWhereInput[] + NOT?: email_status_luWhereInput | email_status_luWhereInput[] + status_id?: DecimalFilter<"email_status_lu"> | Decimal | DecimalJsLike | number | string + status_desc?: StringNullableFilter<"email_status_lu"> | string | null + create_date?: DateTimeNullableFilter<"email_status_lu"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email_status_lu"> | Date | string | null + email?: EmailListRelationFilter + user_email_xref?: User_email_xrefListRelationFilter + } + + export type email_status_luOrderByWithRelationInput = { + status_id?: SortOrder + status_desc?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + email?: emailOrderByRelationAggregateInput + user_email_xref?: user_email_xrefOrderByRelationAggregateInput + } + + export type email_status_luWhereUniqueInput = Prisma.AtLeast<{ + status_id?: Decimal | DecimalJsLike | number | string + AND?: email_status_luWhereInput | email_status_luWhereInput[] + OR?: email_status_luWhereInput[] + NOT?: email_status_luWhereInput | email_status_luWhereInput[] + status_desc?: StringNullableFilter<"email_status_lu"> | string | null + create_date?: DateTimeNullableFilter<"email_status_lu"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email_status_lu"> | Date | string | null + email?: EmailListRelationFilter + user_email_xref?: User_email_xrefListRelationFilter + }, "status_id"> + + export type email_status_luOrderByWithAggregationInput = { + status_id?: SortOrder + status_desc?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + _count?: email_status_luCountOrderByAggregateInput + _avg?: email_status_luAvgOrderByAggregateInput + _max?: email_status_luMaxOrderByAggregateInput + _min?: email_status_luMinOrderByAggregateInput + _sum?: email_status_luSumOrderByAggregateInput + } + + export type email_status_luScalarWhereWithAggregatesInput = { + AND?: email_status_luScalarWhereWithAggregatesInput | email_status_luScalarWhereWithAggregatesInput[] + OR?: email_status_luScalarWhereWithAggregatesInput[] + NOT?: email_status_luScalarWhereWithAggregatesInput | email_status_luScalarWhereWithAggregatesInput[] + status_id?: DecimalWithAggregatesFilter<"email_status_lu"> | Decimal | DecimalJsLike | number | string + status_desc?: StringNullableWithAggregatesFilter<"email_status_lu"> | string | null + create_date?: DateTimeNullableWithAggregatesFilter<"email_status_lu"> | Date | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"email_status_lu"> | Date | string | null + } + + export type email_type_luWhereInput = { + AND?: email_type_luWhereInput | email_type_luWhereInput[] + OR?: email_type_luWhereInput[] + NOT?: email_type_luWhereInput | email_type_luWhereInput[] + email_type_id?: DecimalFilter<"email_type_lu"> | Decimal | DecimalJsLike | number | string + email_type_desc?: StringNullableFilter<"email_type_lu"> | string | null + create_date?: DateTimeNullableFilter<"email_type_lu"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email_type_lu"> | Date | string | null + email?: EmailListRelationFilter + } + + export type email_type_luOrderByWithRelationInput = { + email_type_id?: SortOrder + email_type_desc?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + email?: emailOrderByRelationAggregateInput + } + + export type email_type_luWhereUniqueInput = Prisma.AtLeast<{ + email_type_id?: Decimal | DecimalJsLike | number | string + AND?: email_type_luWhereInput | email_type_luWhereInput[] + OR?: email_type_luWhereInput[] + NOT?: email_type_luWhereInput | email_type_luWhereInput[] + email_type_desc?: StringNullableFilter<"email_type_lu"> | string | null + create_date?: DateTimeNullableFilter<"email_type_lu"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email_type_lu"> | Date | string | null + email?: EmailListRelationFilter + }, "email_type_id"> + + export type email_type_luOrderByWithAggregationInput = { + email_type_id?: SortOrder + email_type_desc?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + _count?: email_type_luCountOrderByAggregateInput + _avg?: email_type_luAvgOrderByAggregateInput + _max?: email_type_luMaxOrderByAggregateInput + _min?: email_type_luMinOrderByAggregateInput + _sum?: email_type_luSumOrderByAggregateInput + } + + export type email_type_luScalarWhereWithAggregatesInput = { + AND?: email_type_luScalarWhereWithAggregatesInput | email_type_luScalarWhereWithAggregatesInput[] + OR?: email_type_luScalarWhereWithAggregatesInput[] + NOT?: email_type_luScalarWhereWithAggregatesInput | email_type_luScalarWhereWithAggregatesInput[] + email_type_id?: DecimalWithAggregatesFilter<"email_type_lu"> | Decimal | DecimalJsLike | number | string + email_type_desc?: StringNullableWithAggregatesFilter<"email_type_lu"> | string | null + create_date?: DateTimeNullableWithAggregatesFilter<"email_type_lu"> | Date | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"email_type_lu"> | Date | string | null + } + + export type id_sequencesWhereInput = { + AND?: id_sequencesWhereInput | id_sequencesWhereInput[] + OR?: id_sequencesWhereInput[] + NOT?: id_sequencesWhereInput | id_sequencesWhereInput[] + name?: StringFilter<"id_sequences"> | string + next_block_start?: DecimalFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + block_size?: DecimalFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + exhausted?: DecimalFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + } + + export type id_sequencesOrderByWithRelationInput = { + name?: SortOrder + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + } + + export type id_sequencesWhereUniqueInput = Prisma.AtLeast<{ + name?: string + AND?: id_sequencesWhereInput | id_sequencesWhereInput[] + OR?: id_sequencesWhereInput[] + NOT?: id_sequencesWhereInput | id_sequencesWhereInput[] + next_block_start?: DecimalFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + block_size?: DecimalFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + exhausted?: DecimalFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + }, "name"> + + export type id_sequencesOrderByWithAggregationInput = { + name?: SortOrder + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + _count?: id_sequencesCountOrderByAggregateInput + _avg?: id_sequencesAvgOrderByAggregateInput + _max?: id_sequencesMaxOrderByAggregateInput + _min?: id_sequencesMinOrderByAggregateInput + _sum?: id_sequencesSumOrderByAggregateInput + } + + export type id_sequencesScalarWhereWithAggregatesInput = { + AND?: id_sequencesScalarWhereWithAggregatesInput | id_sequencesScalarWhereWithAggregatesInput[] + OR?: id_sequencesScalarWhereWithAggregatesInput[] + NOT?: id_sequencesScalarWhereWithAggregatesInput | id_sequencesScalarWhereWithAggregatesInput[] + name?: StringWithAggregatesFilter<"id_sequences"> | string + next_block_start?: DecimalWithAggregatesFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + block_size?: DecimalWithAggregatesFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + exhausted?: DecimalWithAggregatesFilter<"id_sequences"> | Decimal | DecimalJsLike | number | string + } + + export type invalid_handlesWhereInput = { + AND?: invalid_handlesWhereInput | invalid_handlesWhereInput[] + OR?: invalid_handlesWhereInput[] + NOT?: invalid_handlesWhereInput | invalid_handlesWhereInput[] + invalid_handle_id?: IntFilter<"invalid_handles"> | number + invalid_handle?: StringFilter<"invalid_handles"> | string + } + + export type invalid_handlesOrderByWithRelationInput = { + invalid_handle_id?: SortOrder + invalid_handle?: SortOrder + } + + export type invalid_handlesWhereUniqueInput = Prisma.AtLeast<{ + invalid_handle_id?: number + AND?: invalid_handlesWhereInput | invalid_handlesWhereInput[] + OR?: invalid_handlesWhereInput[] + NOT?: invalid_handlesWhereInput | invalid_handlesWhereInput[] + invalid_handle?: StringFilter<"invalid_handles"> | string + }, "invalid_handle_id"> + + export type invalid_handlesOrderByWithAggregationInput = { + invalid_handle_id?: SortOrder + invalid_handle?: SortOrder + _count?: invalid_handlesCountOrderByAggregateInput + _avg?: invalid_handlesAvgOrderByAggregateInput + _max?: invalid_handlesMaxOrderByAggregateInput + _min?: invalid_handlesMinOrderByAggregateInput + _sum?: invalid_handlesSumOrderByAggregateInput + } + + export type invalid_handlesScalarWhereWithAggregatesInput = { + AND?: invalid_handlesScalarWhereWithAggregatesInput | invalid_handlesScalarWhereWithAggregatesInput[] + OR?: invalid_handlesScalarWhereWithAggregatesInput[] + NOT?: invalid_handlesScalarWhereWithAggregatesInput | invalid_handlesScalarWhereWithAggregatesInput[] + invalid_handle_id?: IntWithAggregatesFilter<"invalid_handles"> | number + invalid_handle?: StringWithAggregatesFilter<"invalid_handles"> | string + } + + export type security_groupsWhereInput = { + AND?: security_groupsWhereInput | security_groupsWhereInput[] + OR?: security_groupsWhereInput[] + NOT?: security_groupsWhereInput | security_groupsWhereInput[] + group_id?: DecimalFilter<"security_groups"> | Decimal | DecimalJsLike | number | string + description?: StringFilter<"security_groups"> | string + challenge_group_ind?: IntFilter<"security_groups"> | number + create_user_id?: DecimalNullableFilter<"security_groups"> | Decimal | DecimalJsLike | number | string | null + user_group_xref?: User_group_xrefListRelationFilter + } + + export type security_groupsOrderByWithRelationInput = { + group_id?: SortOrder + description?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrderInput | SortOrder + user_group_xref?: user_group_xrefOrderByRelationAggregateInput + } + + export type security_groupsWhereUniqueInput = Prisma.AtLeast<{ + group_id?: Decimal | DecimalJsLike | number | string + AND?: security_groupsWhereInput | security_groupsWhereInput[] + OR?: security_groupsWhereInput[] + NOT?: security_groupsWhereInput | security_groupsWhereInput[] + description?: StringFilter<"security_groups"> | string + challenge_group_ind?: IntFilter<"security_groups"> | number + create_user_id?: DecimalNullableFilter<"security_groups"> | Decimal | DecimalJsLike | number | string | null + user_group_xref?: User_group_xrefListRelationFilter + }, "group_id"> + + export type security_groupsOrderByWithAggregationInput = { + group_id?: SortOrder + description?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrderInput | SortOrder + _count?: security_groupsCountOrderByAggregateInput + _avg?: security_groupsAvgOrderByAggregateInput + _max?: security_groupsMaxOrderByAggregateInput + _min?: security_groupsMinOrderByAggregateInput + _sum?: security_groupsSumOrderByAggregateInput + } + + export type security_groupsScalarWhereWithAggregatesInput = { + AND?: security_groupsScalarWhereWithAggregatesInput | security_groupsScalarWhereWithAggregatesInput[] + OR?: security_groupsScalarWhereWithAggregatesInput[] + NOT?: security_groupsScalarWhereWithAggregatesInput | security_groupsScalarWhereWithAggregatesInput[] + group_id?: DecimalWithAggregatesFilter<"security_groups"> | Decimal | DecimalJsLike | number | string + description?: StringWithAggregatesFilter<"security_groups"> | string + challenge_group_ind?: IntWithAggregatesFilter<"security_groups"> | number + create_user_id?: DecimalNullableWithAggregatesFilter<"security_groups"> | Decimal | DecimalJsLike | number | string | null + } + + export type security_status_luWhereInput = { + AND?: security_status_luWhereInput | security_status_luWhereInput[] + OR?: security_status_luWhereInput[] + NOT?: security_status_luWhereInput | security_status_luWhereInput[] + security_status_id?: DecimalFilter<"security_status_lu"> | Decimal | DecimalJsLike | number | string + status_desc?: StringNullableFilter<"security_status_lu"> | string | null + user_group_xref?: User_group_xrefListRelationFilter + } + + export type security_status_luOrderByWithRelationInput = { + security_status_id?: SortOrder + status_desc?: SortOrderInput | SortOrder + user_group_xref?: user_group_xrefOrderByRelationAggregateInput + } + + export type security_status_luWhereUniqueInput = Prisma.AtLeast<{ + security_status_id?: Decimal | DecimalJsLike | number | string + AND?: security_status_luWhereInput | security_status_luWhereInput[] + OR?: security_status_luWhereInput[] + NOT?: security_status_luWhereInput | security_status_luWhereInput[] + status_desc?: StringNullableFilter<"security_status_lu"> | string | null + user_group_xref?: User_group_xrefListRelationFilter + }, "security_status_id"> + + export type security_status_luOrderByWithAggregationInput = { + security_status_id?: SortOrder + status_desc?: SortOrderInput | SortOrder + _count?: security_status_luCountOrderByAggregateInput + _avg?: security_status_luAvgOrderByAggregateInput + _max?: security_status_luMaxOrderByAggregateInput + _min?: security_status_luMinOrderByAggregateInput + _sum?: security_status_luSumOrderByAggregateInput + } + + export type security_status_luScalarWhereWithAggregatesInput = { + AND?: security_status_luScalarWhereWithAggregatesInput | security_status_luScalarWhereWithAggregatesInput[] + OR?: security_status_luScalarWhereWithAggregatesInput[] + NOT?: security_status_luScalarWhereWithAggregatesInput | security_status_luScalarWhereWithAggregatesInput[] + security_status_id?: DecimalWithAggregatesFilter<"security_status_lu"> | Decimal | DecimalJsLike | number | string + status_desc?: StringNullableWithAggregatesFilter<"security_status_lu"> | string | null + } + + export type security_userWhereInput = { + AND?: security_userWhereInput | security_userWhereInput[] + OR?: security_userWhereInput[] + NOT?: security_userWhereInput | security_userWhereInput[] + login_id?: DecimalFilter<"security_user"> | Decimal | DecimalJsLike | number | string + user_id?: StringFilter<"security_user"> | string + password?: StringFilter<"security_user"> | string + create_user_id?: DecimalNullableFilter<"security_user"> | Decimal | DecimalJsLike | number | string | null + modify_date?: DateTimeNullableFilter<"security_user"> | Date | string | null + user_group_xref?: User_group_xrefListRelationFilter + } + + export type security_userOrderByWithRelationInput = { + login_id?: SortOrder + user_id?: SortOrder + password?: SortOrder + create_user_id?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + user_group_xref?: user_group_xrefOrderByRelationAggregateInput + } + + export type security_userWhereUniqueInput = Prisma.AtLeast<{ + login_id?: Decimal | DecimalJsLike | number | string + user_id?: string + AND?: security_userWhereInput | security_userWhereInput[] + OR?: security_userWhereInput[] + NOT?: security_userWhereInput | security_userWhereInput[] + password?: StringFilter<"security_user"> | string + create_user_id?: DecimalNullableFilter<"security_user"> | Decimal | DecimalJsLike | number | string | null + modify_date?: DateTimeNullableFilter<"security_user"> | Date | string | null + user_group_xref?: User_group_xrefListRelationFilter + }, "login_id" | "user_id"> + + export type security_userOrderByWithAggregationInput = { + login_id?: SortOrder + user_id?: SortOrder + password?: SortOrder + create_user_id?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + _count?: security_userCountOrderByAggregateInput + _avg?: security_userAvgOrderByAggregateInput + _max?: security_userMaxOrderByAggregateInput + _min?: security_userMinOrderByAggregateInput + _sum?: security_userSumOrderByAggregateInput + } + + export type security_userScalarWhereWithAggregatesInput = { + AND?: security_userScalarWhereWithAggregatesInput | security_userScalarWhereWithAggregatesInput[] + OR?: security_userScalarWhereWithAggregatesInput[] + NOT?: security_userScalarWhereWithAggregatesInput | security_userScalarWhereWithAggregatesInput[] + login_id?: DecimalWithAggregatesFilter<"security_user"> | Decimal | DecimalJsLike | number | string + user_id?: StringWithAggregatesFilter<"security_user"> | string + password?: StringWithAggregatesFilter<"security_user"> | string + create_user_id?: DecimalNullableWithAggregatesFilter<"security_user"> | Decimal | DecimalJsLike | number | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"security_user"> | Date | string | null + } + + export type social_login_providerWhereInput = { + AND?: social_login_providerWhereInput | social_login_providerWhereInput[] + OR?: social_login_providerWhereInput[] + NOT?: social_login_providerWhereInput | social_login_providerWhereInput[] + social_login_provider_id?: DecimalFilter<"social_login_provider"> | Decimal | DecimalJsLike | number | string + name?: StringNullableFilter<"social_login_provider"> | string | null + user_social_login?: User_social_loginListRelationFilter + } + + export type social_login_providerOrderByWithRelationInput = { + social_login_provider_id?: SortOrder + name?: SortOrderInput | SortOrder + user_social_login?: user_social_loginOrderByRelationAggregateInput + } + + export type social_login_providerWhereUniqueInput = Prisma.AtLeast<{ + social_login_provider_id?: Decimal | DecimalJsLike | number | string + AND?: social_login_providerWhereInput | social_login_providerWhereInput[] + OR?: social_login_providerWhereInput[] + NOT?: social_login_providerWhereInput | social_login_providerWhereInput[] + name?: StringNullableFilter<"social_login_provider"> | string | null + user_social_login?: User_social_loginListRelationFilter + }, "social_login_provider_id"> + + export type social_login_providerOrderByWithAggregationInput = { + social_login_provider_id?: SortOrder + name?: SortOrderInput | SortOrder + _count?: social_login_providerCountOrderByAggregateInput + _avg?: social_login_providerAvgOrderByAggregateInput + _max?: social_login_providerMaxOrderByAggregateInput + _min?: social_login_providerMinOrderByAggregateInput + _sum?: social_login_providerSumOrderByAggregateInput + } + + export type social_login_providerScalarWhereWithAggregatesInput = { + AND?: social_login_providerScalarWhereWithAggregatesInput | social_login_providerScalarWhereWithAggregatesInput[] + OR?: social_login_providerScalarWhereWithAggregatesInput[] + NOT?: social_login_providerScalarWhereWithAggregatesInput | social_login_providerScalarWhereWithAggregatesInput[] + social_login_provider_id?: DecimalWithAggregatesFilter<"social_login_provider"> | Decimal | DecimalJsLike | number | string + name?: StringNullableWithAggregatesFilter<"social_login_provider"> | string | null + } + + export type sso_login_providerWhereInput = { + AND?: sso_login_providerWhereInput | sso_login_providerWhereInput[] + OR?: sso_login_providerWhereInput[] + NOT?: sso_login_providerWhereInput | sso_login_providerWhereInput[] + sso_login_provider_id?: DecimalFilter<"sso_login_provider"> | Decimal | DecimalJsLike | number | string + name?: StringNullableFilter<"sso_login_provider"> | string | null + type?: StringFilter<"sso_login_provider"> | string + identify_email_enabled?: BoolFilter<"sso_login_provider"> | boolean + identify_handle_enabled?: BoolFilter<"sso_login_provider"> | boolean + user_sso_login?: User_sso_loginListRelationFilter + } + + export type sso_login_providerOrderByWithRelationInput = { + sso_login_provider_id?: SortOrder + name?: SortOrderInput | SortOrder + type?: SortOrder + identify_email_enabled?: SortOrder + identify_handle_enabled?: SortOrder + user_sso_login?: user_sso_loginOrderByRelationAggregateInput + } + + export type sso_login_providerWhereUniqueInput = Prisma.AtLeast<{ + sso_login_provider_id?: Decimal | DecimalJsLike | number | string + AND?: sso_login_providerWhereInput | sso_login_providerWhereInput[] + OR?: sso_login_providerWhereInput[] + NOT?: sso_login_providerWhereInput | sso_login_providerWhereInput[] + name?: StringNullableFilter<"sso_login_provider"> | string | null + type?: StringFilter<"sso_login_provider"> | string + identify_email_enabled?: BoolFilter<"sso_login_provider"> | boolean + identify_handle_enabled?: BoolFilter<"sso_login_provider"> | boolean + user_sso_login?: User_sso_loginListRelationFilter + }, "sso_login_provider_id"> + + export type sso_login_providerOrderByWithAggregationInput = { + sso_login_provider_id?: SortOrder + name?: SortOrderInput | SortOrder + type?: SortOrder + identify_email_enabled?: SortOrder + identify_handle_enabled?: SortOrder + _count?: sso_login_providerCountOrderByAggregateInput + _avg?: sso_login_providerAvgOrderByAggregateInput + _max?: sso_login_providerMaxOrderByAggregateInput + _min?: sso_login_providerMinOrderByAggregateInput + _sum?: sso_login_providerSumOrderByAggregateInput + } + + export type sso_login_providerScalarWhereWithAggregatesInput = { + AND?: sso_login_providerScalarWhereWithAggregatesInput | sso_login_providerScalarWhereWithAggregatesInput[] + OR?: sso_login_providerScalarWhereWithAggregatesInput[] + NOT?: sso_login_providerScalarWhereWithAggregatesInput | sso_login_providerScalarWhereWithAggregatesInput[] + sso_login_provider_id?: DecimalWithAggregatesFilter<"sso_login_provider"> | Decimal | DecimalJsLike | number | string + name?: StringNullableWithAggregatesFilter<"sso_login_provider"> | string | null + type?: StringWithAggregatesFilter<"sso_login_provider"> | string + identify_email_enabled?: BoolWithAggregatesFilter<"sso_login_provider"> | boolean + identify_handle_enabled?: BoolWithAggregatesFilter<"sso_login_provider"> | boolean + } + + export type userWhereInput = { + AND?: userWhereInput | userWhereInput[] + OR?: userWhereInput[] + NOT?: userWhereInput | userWhereInput[] + user_id?: DecimalFilter<"user"> | Decimal | DecimalJsLike | number | string + first_name?: StringNullableFilter<"user"> | string | null + last_name?: StringNullableFilter<"user"> | string | null + create_date?: DateTimeNullableFilter<"user"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user"> | Date | string | null + handle?: StringFilter<"user"> | string + last_login?: DateTimeNullableFilter<"user"> | Date | string | null + status?: StringFilter<"user"> | string + activation_code?: StringNullableFilter<"user"> | string | null + middle_name?: StringNullableFilter<"user"> | string | null + handle_lower?: StringNullableFilter<"user"> | string | null + timezone_id?: DecimalNullableFilter<"user"> | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: DateTimeNullableFilter<"user"> | Date | string | null + name_in_another_language?: StringNullableFilter<"user"> | string | null + password?: StringNullableFilter<"user"> | string | null + open_id?: StringNullableFilter<"user"> | string | null + reg_source?: StringNullableFilter<"user"> | string | null + utm_source?: StringNullableFilter<"user"> | string | null + utm_medium?: StringNullableFilter<"user"> | string | null + utm_campaign?: StringNullableFilter<"user"> | string | null + dice_connection?: XOR | null + user_2fa?: XOR | null + user_achievement?: User_achievementListRelationFilter + user_otp_email?: User_otp_emailListRelationFilter + user_social_login?: User_social_loginListRelationFilter + user_sso_login?: User_sso_loginListRelationFilter + user_status?: User_statusListRelationFilter + user_email_xref?: User_email_xrefListRelationFilter + emails?: EmailListRelationFilter + } + + export type userOrderByWithRelationInput = { + user_id?: SortOrder + first_name?: SortOrderInput | SortOrder + last_name?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + handle?: SortOrder + last_login?: SortOrderInput | SortOrder + status?: SortOrder + activation_code?: SortOrderInput | SortOrder + middle_name?: SortOrderInput | SortOrder + handle_lower?: SortOrderInput | SortOrder + timezone_id?: SortOrderInput | SortOrder + last_site_hit_date?: SortOrderInput | SortOrder + name_in_another_language?: SortOrderInput | SortOrder + password?: SortOrderInput | SortOrder + open_id?: SortOrderInput | SortOrder + reg_source?: SortOrderInput | SortOrder + utm_source?: SortOrderInput | SortOrder + utm_medium?: SortOrderInput | SortOrder + utm_campaign?: SortOrderInput | SortOrder + dice_connection?: dice_connectionOrderByWithRelationInput + user_2fa?: user_2faOrderByWithRelationInput + user_achievement?: user_achievementOrderByRelationAggregateInput + user_otp_email?: user_otp_emailOrderByRelationAggregateInput + user_social_login?: user_social_loginOrderByRelationAggregateInput + user_sso_login?: user_sso_loginOrderByRelationAggregateInput + user_status?: user_statusOrderByRelationAggregateInput + user_email_xref?: user_email_xrefOrderByRelationAggregateInput + emails?: emailOrderByRelationAggregateInput + } + + export type userWhereUniqueInput = Prisma.AtLeast<{ + user_id?: Decimal | DecimalJsLike | number | string + AND?: userWhereInput | userWhereInput[] + OR?: userWhereInput[] + NOT?: userWhereInput | userWhereInput[] + first_name?: StringNullableFilter<"user"> | string | null + last_name?: StringNullableFilter<"user"> | string | null + create_date?: DateTimeNullableFilter<"user"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user"> | Date | string | null + handle?: StringFilter<"user"> | string + last_login?: DateTimeNullableFilter<"user"> | Date | string | null + status?: StringFilter<"user"> | string + activation_code?: StringNullableFilter<"user"> | string | null + middle_name?: StringNullableFilter<"user"> | string | null + handle_lower?: StringNullableFilter<"user"> | string | null + timezone_id?: DecimalNullableFilter<"user"> | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: DateTimeNullableFilter<"user"> | Date | string | null + name_in_another_language?: StringNullableFilter<"user"> | string | null + password?: StringNullableFilter<"user"> | string | null + open_id?: StringNullableFilter<"user"> | string | null + reg_source?: StringNullableFilter<"user"> | string | null + utm_source?: StringNullableFilter<"user"> | string | null + utm_medium?: StringNullableFilter<"user"> | string | null + utm_campaign?: StringNullableFilter<"user"> | string | null + dice_connection?: XOR | null + user_2fa?: XOR | null + user_achievement?: User_achievementListRelationFilter + user_otp_email?: User_otp_emailListRelationFilter + user_social_login?: User_social_loginListRelationFilter + user_sso_login?: User_sso_loginListRelationFilter + user_status?: User_statusListRelationFilter + user_email_xref?: User_email_xrefListRelationFilter + emails?: EmailListRelationFilter + }, "user_id"> + + export type userOrderByWithAggregationInput = { + user_id?: SortOrder + first_name?: SortOrderInput | SortOrder + last_name?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + handle?: SortOrder + last_login?: SortOrderInput | SortOrder + status?: SortOrder + activation_code?: SortOrderInput | SortOrder + middle_name?: SortOrderInput | SortOrder + handle_lower?: SortOrderInput | SortOrder + timezone_id?: SortOrderInput | SortOrder + last_site_hit_date?: SortOrderInput | SortOrder + name_in_another_language?: SortOrderInput | SortOrder + password?: SortOrderInput | SortOrder + open_id?: SortOrderInput | SortOrder + reg_source?: SortOrderInput | SortOrder + utm_source?: SortOrderInput | SortOrder + utm_medium?: SortOrderInput | SortOrder + utm_campaign?: SortOrderInput | SortOrder + _count?: userCountOrderByAggregateInput + _avg?: userAvgOrderByAggregateInput + _max?: userMaxOrderByAggregateInput + _min?: userMinOrderByAggregateInput + _sum?: userSumOrderByAggregateInput + } + + export type userScalarWhereWithAggregatesInput = { + AND?: userScalarWhereWithAggregatesInput | userScalarWhereWithAggregatesInput[] + OR?: userScalarWhereWithAggregatesInput[] + NOT?: userScalarWhereWithAggregatesInput | userScalarWhereWithAggregatesInput[] + user_id?: DecimalWithAggregatesFilter<"user"> | Decimal | DecimalJsLike | number | string + first_name?: StringNullableWithAggregatesFilter<"user"> | string | null + last_name?: StringNullableWithAggregatesFilter<"user"> | string | null + create_date?: DateTimeNullableWithAggregatesFilter<"user"> | Date | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"user"> | Date | string | null + handle?: StringWithAggregatesFilter<"user"> | string + last_login?: DateTimeNullableWithAggregatesFilter<"user"> | Date | string | null + status?: StringWithAggregatesFilter<"user"> | string + activation_code?: StringNullableWithAggregatesFilter<"user"> | string | null + middle_name?: StringNullableWithAggregatesFilter<"user"> | string | null + handle_lower?: StringNullableWithAggregatesFilter<"user"> | string | null + timezone_id?: DecimalNullableWithAggregatesFilter<"user"> | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: DateTimeNullableWithAggregatesFilter<"user"> | Date | string | null + name_in_another_language?: StringNullableWithAggregatesFilter<"user"> | string | null + password?: StringNullableWithAggregatesFilter<"user"> | string | null + open_id?: StringNullableWithAggregatesFilter<"user"> | string | null + reg_source?: StringNullableWithAggregatesFilter<"user"> | string | null + utm_source?: StringNullableWithAggregatesFilter<"user"> | string | null + utm_medium?: StringNullableWithAggregatesFilter<"user"> | string | null + utm_campaign?: StringNullableWithAggregatesFilter<"user"> | string | null + } + + export type user_2faWhereInput = { + AND?: user_2faWhereInput | user_2faWhereInput[] + OR?: user_2faWhereInput[] + NOT?: user_2faWhereInput | user_2faWhereInput[] + id?: IntFilter<"user_2fa"> | number + user_id?: DecimalFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + mfa_enabled?: BoolFilter<"user_2fa"> | boolean + dice_enabled?: BoolFilter<"user_2fa"> | boolean + created_by?: DecimalFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFilter<"user_2fa"> | Date | string + modified_by?: DecimalFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFilter<"user_2fa"> | Date | string + user?: XOR + } + + export type user_2faOrderByWithRelationInput = { + id?: SortOrder + user_id?: SortOrder + mfa_enabled?: SortOrder + dice_enabled?: SortOrder + created_by?: SortOrder + created_at?: SortOrder + modified_by?: SortOrder + modified_at?: SortOrder + user?: userOrderByWithRelationInput + } + + export type user_2faWhereUniqueInput = Prisma.AtLeast<{ + id?: number + user_id?: Decimal | DecimalJsLike | number | string + AND?: user_2faWhereInput | user_2faWhereInput[] + OR?: user_2faWhereInput[] + NOT?: user_2faWhereInput | user_2faWhereInput[] + mfa_enabled?: BoolFilter<"user_2fa"> | boolean + dice_enabled?: BoolFilter<"user_2fa"> | boolean + created_by?: DecimalFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFilter<"user_2fa"> | Date | string + modified_by?: DecimalFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFilter<"user_2fa"> | Date | string + user?: XOR + }, "id" | "user_id"> + + export type user_2faOrderByWithAggregationInput = { + id?: SortOrder + user_id?: SortOrder + mfa_enabled?: SortOrder + dice_enabled?: SortOrder + created_by?: SortOrder + created_at?: SortOrder + modified_by?: SortOrder + modified_at?: SortOrder + _count?: user_2faCountOrderByAggregateInput + _avg?: user_2faAvgOrderByAggregateInput + _max?: user_2faMaxOrderByAggregateInput + _min?: user_2faMinOrderByAggregateInput + _sum?: user_2faSumOrderByAggregateInput + } + + export type user_2faScalarWhereWithAggregatesInput = { + AND?: user_2faScalarWhereWithAggregatesInput | user_2faScalarWhereWithAggregatesInput[] + OR?: user_2faScalarWhereWithAggregatesInput[] + NOT?: user_2faScalarWhereWithAggregatesInput | user_2faScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"user_2fa"> | number + user_id?: DecimalWithAggregatesFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + mfa_enabled?: BoolWithAggregatesFilter<"user_2fa"> | boolean + dice_enabled?: BoolWithAggregatesFilter<"user_2fa"> | boolean + created_by?: DecimalWithAggregatesFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + created_at?: DateTimeWithAggregatesFilter<"user_2fa"> | Date | string + modified_by?: DecimalWithAggregatesFilter<"user_2fa"> | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeWithAggregatesFilter<"user_2fa"> | Date | string + } + + export type user_achievementWhereInput = { + AND?: user_achievementWhereInput | user_achievementWhereInput[] + OR?: user_achievementWhereInput[] + NOT?: user_achievementWhereInput | user_achievementWhereInput[] + user_id?: DecimalFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFilter<"user_achievement"> | Date | string + achievement_type_id?: DecimalFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + description?: StringNullableFilter<"user_achievement"> | string | null + create_date?: DateTimeNullableFilter<"user_achievement"> | Date | string | null + achievement_type_lu?: XOR + user?: XOR + } + + export type user_achievementOrderByWithRelationInput = { + user_id?: SortOrder + achievement_date?: SortOrder + achievement_type_id?: SortOrder + description?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + achievement_type_lu?: achievement_type_luOrderByWithRelationInput + user?: userOrderByWithRelationInput + } + + export type user_achievementWhereUniqueInput = Prisma.AtLeast<{ + user_id_achievement_type_id?: user_achievementUser_idAchievement_type_idCompoundUniqueInput + AND?: user_achievementWhereInput | user_achievementWhereInput[] + OR?: user_achievementWhereInput[] + NOT?: user_achievementWhereInput | user_achievementWhereInput[] + user_id?: DecimalFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFilter<"user_achievement"> | Date | string + achievement_type_id?: DecimalFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + description?: StringNullableFilter<"user_achievement"> | string | null + create_date?: DateTimeNullableFilter<"user_achievement"> | Date | string | null + achievement_type_lu?: XOR + user?: XOR + }, "user_id_achievement_type_id"> + + export type user_achievementOrderByWithAggregationInput = { + user_id?: SortOrder + achievement_date?: SortOrder + achievement_type_id?: SortOrder + description?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + _count?: user_achievementCountOrderByAggregateInput + _avg?: user_achievementAvgOrderByAggregateInput + _max?: user_achievementMaxOrderByAggregateInput + _min?: user_achievementMinOrderByAggregateInput + _sum?: user_achievementSumOrderByAggregateInput + } + + export type user_achievementScalarWhereWithAggregatesInput = { + AND?: user_achievementScalarWhereWithAggregatesInput | user_achievementScalarWhereWithAggregatesInput[] + OR?: user_achievementScalarWhereWithAggregatesInput[] + NOT?: user_achievementScalarWhereWithAggregatesInput | user_achievementScalarWhereWithAggregatesInput[] + user_id?: DecimalWithAggregatesFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeWithAggregatesFilter<"user_achievement"> | Date | string + achievement_type_id?: DecimalWithAggregatesFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + description?: StringNullableWithAggregatesFilter<"user_achievement"> | string | null + create_date?: DateTimeNullableWithAggregatesFilter<"user_achievement"> | Date | string | null + } + + export type user_group_xrefWhereInput = { + AND?: user_group_xrefWhereInput | user_group_xrefWhereInput[] + OR?: user_group_xrefWhereInput[] + NOT?: user_group_xrefWhereInput | user_group_xrefWhereInput[] + user_group_id?: DecimalFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string + login_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + group_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_user_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + security_status_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_date?: DateTimeNullableFilter<"user_group_xref"> | Date | string | null + security_user?: XOR | null + security_groups?: XOR | null + security_status_lu?: XOR | null + } + + export type user_group_xrefOrderByWithRelationInput = { + user_group_id?: SortOrder + login_id?: SortOrderInput | SortOrder + group_id?: SortOrderInput | SortOrder + create_user_id?: SortOrderInput | SortOrder + security_status_id?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + security_user?: security_userOrderByWithRelationInput + security_groups?: security_groupsOrderByWithRelationInput + security_status_lu?: security_status_luOrderByWithRelationInput + } + + export type user_group_xrefWhereUniqueInput = Prisma.AtLeast<{ + user_group_id?: Decimal | DecimalJsLike | number | string + login_id_group_id?: user_group_xrefLogin_idGroup_idCompoundUniqueInput + AND?: user_group_xrefWhereInput | user_group_xrefWhereInput[] + OR?: user_group_xrefWhereInput[] + NOT?: user_group_xrefWhereInput | user_group_xrefWhereInput[] + login_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + group_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_user_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + security_status_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_date?: DateTimeNullableFilter<"user_group_xref"> | Date | string | null + security_user?: XOR | null + security_groups?: XOR | null + security_status_lu?: XOR | null + }, "user_group_id" | "login_id_group_id"> + + export type user_group_xrefOrderByWithAggregationInput = { + user_group_id?: SortOrder + login_id?: SortOrderInput | SortOrder + group_id?: SortOrderInput | SortOrder + create_user_id?: SortOrderInput | SortOrder + security_status_id?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + _count?: user_group_xrefCountOrderByAggregateInput + _avg?: user_group_xrefAvgOrderByAggregateInput + _max?: user_group_xrefMaxOrderByAggregateInput + _min?: user_group_xrefMinOrderByAggregateInput + _sum?: user_group_xrefSumOrderByAggregateInput + } + + export type user_group_xrefScalarWhereWithAggregatesInput = { + AND?: user_group_xrefScalarWhereWithAggregatesInput | user_group_xrefScalarWhereWithAggregatesInput[] + OR?: user_group_xrefScalarWhereWithAggregatesInput[] + NOT?: user_group_xrefScalarWhereWithAggregatesInput | user_group_xrefScalarWhereWithAggregatesInput[] + user_group_id?: DecimalWithAggregatesFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string + login_id?: DecimalNullableWithAggregatesFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + group_id?: DecimalNullableWithAggregatesFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_user_id?: DecimalNullableWithAggregatesFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + security_status_id?: DecimalNullableWithAggregatesFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_date?: DateTimeNullableWithAggregatesFilter<"user_group_xref"> | Date | string | null + } + + export type user_otp_emailWhereInput = { + AND?: user_otp_emailWhereInput | user_otp_emailWhereInput[] + OR?: user_otp_emailWhereInput[] + NOT?: user_otp_emailWhereInput | user_otp_emailWhereInput[] + id?: IntFilter<"user_otp_email"> | number + user_id?: DecimalFilter<"user_otp_email"> | Decimal | DecimalJsLike | number | string + mode?: IntFilter<"user_otp_email"> | number + otp?: StringFilter<"user_otp_email"> | string + expire_at?: DateTimeFilter<"user_otp_email"> | Date | string + resend?: BoolFilter<"user_otp_email"> | boolean + fail_count?: IntFilter<"user_otp_email"> | number + user?: XOR + } + + export type user_otp_emailOrderByWithRelationInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + otp?: SortOrder + expire_at?: SortOrder + resend?: SortOrder + fail_count?: SortOrder + user?: userOrderByWithRelationInput + } + + export type user_otp_emailWhereUniqueInput = Prisma.AtLeast<{ + id?: number + user_id_mode?: user_otp_emailUser_idModeCompoundUniqueInput + AND?: user_otp_emailWhereInput | user_otp_emailWhereInput[] + OR?: user_otp_emailWhereInput[] + NOT?: user_otp_emailWhereInput | user_otp_emailWhereInput[] + user_id?: DecimalFilter<"user_otp_email"> | Decimal | DecimalJsLike | number | string + mode?: IntFilter<"user_otp_email"> | number + otp?: StringFilter<"user_otp_email"> | string + expire_at?: DateTimeFilter<"user_otp_email"> | Date | string + resend?: BoolFilter<"user_otp_email"> | boolean + fail_count?: IntFilter<"user_otp_email"> | number + user?: XOR + }, "id" | "user_id_mode"> + + export type user_otp_emailOrderByWithAggregationInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + otp?: SortOrder + expire_at?: SortOrder + resend?: SortOrder + fail_count?: SortOrder + _count?: user_otp_emailCountOrderByAggregateInput + _avg?: user_otp_emailAvgOrderByAggregateInput + _max?: user_otp_emailMaxOrderByAggregateInput + _min?: user_otp_emailMinOrderByAggregateInput + _sum?: user_otp_emailSumOrderByAggregateInput + } + + export type user_otp_emailScalarWhereWithAggregatesInput = { + AND?: user_otp_emailScalarWhereWithAggregatesInput | user_otp_emailScalarWhereWithAggregatesInput[] + OR?: user_otp_emailScalarWhereWithAggregatesInput[] + NOT?: user_otp_emailScalarWhereWithAggregatesInput | user_otp_emailScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"user_otp_email"> | number + user_id?: DecimalWithAggregatesFilter<"user_otp_email"> | Decimal | DecimalJsLike | number | string + mode?: IntWithAggregatesFilter<"user_otp_email"> | number + otp?: StringWithAggregatesFilter<"user_otp_email"> | string + expire_at?: DateTimeWithAggregatesFilter<"user_otp_email"> | Date | string + resend?: BoolWithAggregatesFilter<"user_otp_email"> | boolean + fail_count?: IntWithAggregatesFilter<"user_otp_email"> | number + } + + export type user_social_loginWhereInput = { + AND?: user_social_loginWhereInput | user_social_loginWhereInput[] + OR?: user_social_loginWhereInput[] + NOT?: user_social_loginWhereInput | user_social_loginWhereInput[] + social_user_id?: StringNullableFilter<"user_social_login"> | string | null + user_id?: DecimalFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_login_provider_id?: DecimalFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_user_name?: StringFilter<"user_social_login"> | string + social_email?: StringNullableFilter<"user_social_login"> | string | null + social_email_verified?: BoolNullableFilter<"user_social_login"> | boolean | null + create_date?: DateTimeNullableFilter<"user_social_login"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user_social_login"> | Date | string | null + social_login_provider?: XOR + user?: XOR + } + + export type user_social_loginOrderByWithRelationInput = { + social_user_id?: SortOrderInput | SortOrder + user_id?: SortOrder + social_login_provider_id?: SortOrder + social_user_name?: SortOrder + social_email?: SortOrderInput | SortOrder + social_email_verified?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + social_login_provider?: social_login_providerOrderByWithRelationInput + user?: userOrderByWithRelationInput + } + + export type user_social_loginWhereUniqueInput = Prisma.AtLeast<{ + user_id_social_login_provider_id?: user_social_loginUser_idSocial_login_provider_idCompoundUniqueInput + AND?: user_social_loginWhereInput | user_social_loginWhereInput[] + OR?: user_social_loginWhereInput[] + NOT?: user_social_loginWhereInput | user_social_loginWhereInput[] + social_user_id?: StringNullableFilter<"user_social_login"> | string | null + user_id?: DecimalFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_login_provider_id?: DecimalFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_user_name?: StringFilter<"user_social_login"> | string + social_email?: StringNullableFilter<"user_social_login"> | string | null + social_email_verified?: BoolNullableFilter<"user_social_login"> | boolean | null + create_date?: DateTimeNullableFilter<"user_social_login"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user_social_login"> | Date | string | null + social_login_provider?: XOR + user?: XOR + }, "user_id_social_login_provider_id"> + + export type user_social_loginOrderByWithAggregationInput = { + social_user_id?: SortOrderInput | SortOrder + user_id?: SortOrder + social_login_provider_id?: SortOrder + social_user_name?: SortOrder + social_email?: SortOrderInput | SortOrder + social_email_verified?: SortOrderInput | SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + _count?: user_social_loginCountOrderByAggregateInput + _avg?: user_social_loginAvgOrderByAggregateInput + _max?: user_social_loginMaxOrderByAggregateInput + _min?: user_social_loginMinOrderByAggregateInput + _sum?: user_social_loginSumOrderByAggregateInput + } + + export type user_social_loginScalarWhereWithAggregatesInput = { + AND?: user_social_loginScalarWhereWithAggregatesInput | user_social_loginScalarWhereWithAggregatesInput[] + OR?: user_social_loginScalarWhereWithAggregatesInput[] + NOT?: user_social_loginScalarWhereWithAggregatesInput | user_social_loginScalarWhereWithAggregatesInput[] + social_user_id?: StringNullableWithAggregatesFilter<"user_social_login"> | string | null + user_id?: DecimalWithAggregatesFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_login_provider_id?: DecimalWithAggregatesFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_user_name?: StringWithAggregatesFilter<"user_social_login"> | string + social_email?: StringNullableWithAggregatesFilter<"user_social_login"> | string | null + social_email_verified?: BoolNullableWithAggregatesFilter<"user_social_login"> | boolean | null + create_date?: DateTimeNullableWithAggregatesFilter<"user_social_login"> | Date | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"user_social_login"> | Date | string | null + } + + export type user_sso_loginWhereInput = { + AND?: user_sso_loginWhereInput | user_sso_loginWhereInput[] + OR?: user_sso_loginWhereInput[] + NOT?: user_sso_loginWhereInput | user_sso_loginWhereInput[] + user_id?: DecimalFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFilter<"user_sso_login"> | string + sso_user_name?: StringNullableFilter<"user_sso_login"> | string | null + provider_id?: DecimalFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + email?: StringNullableFilter<"user_sso_login"> | string | null + sso_login_provider?: XOR + user?: XOR + } + + export type user_sso_loginOrderByWithRelationInput = { + user_id?: SortOrder + sso_user_id?: SortOrder + sso_user_name?: SortOrderInput | SortOrder + provider_id?: SortOrder + email?: SortOrderInput | SortOrder + sso_login_provider?: sso_login_providerOrderByWithRelationInput + user?: userOrderByWithRelationInput + } + + export type user_sso_loginWhereUniqueInput = Prisma.AtLeast<{ + user_id_provider_id?: user_sso_loginUser_idProvider_idCompoundUniqueInput + AND?: user_sso_loginWhereInput | user_sso_loginWhereInput[] + OR?: user_sso_loginWhereInput[] + NOT?: user_sso_loginWhereInput | user_sso_loginWhereInput[] + user_id?: DecimalFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFilter<"user_sso_login"> | string + sso_user_name?: StringNullableFilter<"user_sso_login"> | string | null + provider_id?: DecimalFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + email?: StringNullableFilter<"user_sso_login"> | string | null + sso_login_provider?: XOR + user?: XOR + }, "user_id_provider_id"> + + export type user_sso_loginOrderByWithAggregationInput = { + user_id?: SortOrder + sso_user_id?: SortOrder + sso_user_name?: SortOrderInput | SortOrder + provider_id?: SortOrder + email?: SortOrderInput | SortOrder + _count?: user_sso_loginCountOrderByAggregateInput + _avg?: user_sso_loginAvgOrderByAggregateInput + _max?: user_sso_loginMaxOrderByAggregateInput + _min?: user_sso_loginMinOrderByAggregateInput + _sum?: user_sso_loginSumOrderByAggregateInput + } + + export type user_sso_loginScalarWhereWithAggregatesInput = { + AND?: user_sso_loginScalarWhereWithAggregatesInput | user_sso_loginScalarWhereWithAggregatesInput[] + OR?: user_sso_loginScalarWhereWithAggregatesInput[] + NOT?: user_sso_loginScalarWhereWithAggregatesInput | user_sso_loginScalarWhereWithAggregatesInput[] + user_id?: DecimalWithAggregatesFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + sso_user_id?: StringWithAggregatesFilter<"user_sso_login"> | string + sso_user_name?: StringNullableWithAggregatesFilter<"user_sso_login"> | string | null + provider_id?: DecimalWithAggregatesFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + email?: StringNullableWithAggregatesFilter<"user_sso_login"> | string | null + } + + export type user_statusWhereInput = { + AND?: user_statusWhereInput | user_statusWhereInput[] + OR?: user_statusWhereInput[] + NOT?: user_statusWhereInput | user_statusWhereInput[] + user_id?: DecimalFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_id?: DecimalNullableFilter<"user_status"> | Decimal | DecimalJsLike | number | string | null + user?: XOR + user_status_lu?: XOR | null + user_status_type_lu?: XOR + } + + export type user_statusOrderByWithRelationInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrderInput | SortOrder + user?: userOrderByWithRelationInput + user_status_lu?: user_status_luOrderByWithRelationInput + user_status_type_lu?: user_status_type_luOrderByWithRelationInput + } + + export type user_statusWhereUniqueInput = Prisma.AtLeast<{ + user_id_user_status_type_id?: user_statusUser_idUser_status_type_idCompoundUniqueInput + AND?: user_statusWhereInput | user_statusWhereInput[] + OR?: user_statusWhereInput[] + NOT?: user_statusWhereInput | user_statusWhereInput[] + user_id?: DecimalFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_id?: DecimalNullableFilter<"user_status"> | Decimal | DecimalJsLike | number | string | null + user?: XOR + user_status_lu?: XOR | null + user_status_type_lu?: XOR + }, "user_id_user_status_type_id"> + + export type user_statusOrderByWithAggregationInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrderInput | SortOrder + _count?: user_statusCountOrderByAggregateInput + _avg?: user_statusAvgOrderByAggregateInput + _max?: user_statusMaxOrderByAggregateInput + _min?: user_statusMinOrderByAggregateInput + _sum?: user_statusSumOrderByAggregateInput + } + + export type user_statusScalarWhereWithAggregatesInput = { + AND?: user_statusScalarWhereWithAggregatesInput | user_statusScalarWhereWithAggregatesInput[] + OR?: user_statusScalarWhereWithAggregatesInput[] + NOT?: user_statusScalarWhereWithAggregatesInput | user_statusScalarWhereWithAggregatesInput[] + user_id?: DecimalWithAggregatesFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalWithAggregatesFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_id?: DecimalNullableWithAggregatesFilter<"user_status"> | Decimal | DecimalJsLike | number | string | null + } + + export type user_status_luWhereInput = { + AND?: user_status_luWhereInput | user_status_luWhereInput[] + OR?: user_status_luWhereInput[] + NOT?: user_status_luWhereInput | user_status_luWhereInput[] + user_status_id?: DecimalFilter<"user_status_lu"> | Decimal | DecimalJsLike | number | string + description?: StringNullableFilter<"user_status_lu"> | string | null + user_status?: User_statusListRelationFilter + } + + export type user_status_luOrderByWithRelationInput = { + user_status_id?: SortOrder + description?: SortOrderInput | SortOrder + user_status?: user_statusOrderByRelationAggregateInput + } + + export type user_status_luWhereUniqueInput = Prisma.AtLeast<{ + user_status_id?: Decimal | DecimalJsLike | number | string + AND?: user_status_luWhereInput | user_status_luWhereInput[] + OR?: user_status_luWhereInput[] + NOT?: user_status_luWhereInput | user_status_luWhereInput[] + description?: StringNullableFilter<"user_status_lu"> | string | null + user_status?: User_statusListRelationFilter + }, "user_status_id"> + + export type user_status_luOrderByWithAggregationInput = { + user_status_id?: SortOrder + description?: SortOrderInput | SortOrder + _count?: user_status_luCountOrderByAggregateInput + _avg?: user_status_luAvgOrderByAggregateInput + _max?: user_status_luMaxOrderByAggregateInput + _min?: user_status_luMinOrderByAggregateInput + _sum?: user_status_luSumOrderByAggregateInput + } + + export type user_status_luScalarWhereWithAggregatesInput = { + AND?: user_status_luScalarWhereWithAggregatesInput | user_status_luScalarWhereWithAggregatesInput[] + OR?: user_status_luScalarWhereWithAggregatesInput[] + NOT?: user_status_luScalarWhereWithAggregatesInput | user_status_luScalarWhereWithAggregatesInput[] + user_status_id?: DecimalWithAggregatesFilter<"user_status_lu"> | Decimal | DecimalJsLike | number | string + description?: StringNullableWithAggregatesFilter<"user_status_lu"> | string | null + } + + export type user_status_type_luWhereInput = { + AND?: user_status_type_luWhereInput | user_status_type_luWhereInput[] + OR?: user_status_type_luWhereInput[] + NOT?: user_status_type_luWhereInput | user_status_type_luWhereInput[] + user_status_type_id?: DecimalFilter<"user_status_type_lu"> | Decimal | DecimalJsLike | number | string + description?: StringNullableFilter<"user_status_type_lu"> | string | null + user_status?: User_statusListRelationFilter + } + + export type user_status_type_luOrderByWithRelationInput = { + user_status_type_id?: SortOrder + description?: SortOrderInput | SortOrder + user_status?: user_statusOrderByRelationAggregateInput + } + + export type user_status_type_luWhereUniqueInput = Prisma.AtLeast<{ + user_status_type_id?: Decimal | DecimalJsLike | number | string + AND?: user_status_type_luWhereInput | user_status_type_luWhereInput[] + OR?: user_status_type_luWhereInput[] + NOT?: user_status_type_luWhereInput | user_status_type_luWhereInput[] + description?: StringNullableFilter<"user_status_type_lu"> | string | null + user_status?: User_statusListRelationFilter + }, "user_status_type_id"> + + export type user_status_type_luOrderByWithAggregationInput = { + user_status_type_id?: SortOrder + description?: SortOrderInput | SortOrder + _count?: user_status_type_luCountOrderByAggregateInput + _avg?: user_status_type_luAvgOrderByAggregateInput + _max?: user_status_type_luMaxOrderByAggregateInput + _min?: user_status_type_luMinOrderByAggregateInput + _sum?: user_status_type_luSumOrderByAggregateInput + } + + export type user_status_type_luScalarWhereWithAggregatesInput = { + AND?: user_status_type_luScalarWhereWithAggregatesInput | user_status_type_luScalarWhereWithAggregatesInput[] + OR?: user_status_type_luScalarWhereWithAggregatesInput[] + NOT?: user_status_type_luScalarWhereWithAggregatesInput | user_status_type_luScalarWhereWithAggregatesInput[] + user_status_type_id?: DecimalWithAggregatesFilter<"user_status_type_lu"> | Decimal | DecimalJsLike | number | string + description?: StringNullableWithAggregatesFilter<"user_status_type_lu"> | string | null + } + + export type user_email_xrefWhereInput = { + AND?: user_email_xrefWhereInput | user_email_xrefWhereInput[] + OR?: user_email_xrefWhereInput[] + NOT?: user_email_xrefWhereInput | user_email_xrefWhereInput[] + user_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + email_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + is_primary?: BoolFilter<"user_email_xref"> | boolean + status_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + create_date?: DateTimeNullableFilter<"user_email_xref"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user_email_xref"> | Date | string | null + user?: XOR + email?: XOR + email_status_lu?: XOR | null + } + + export type user_email_xrefOrderByWithRelationInput = { + user_id?: SortOrder + email_id?: SortOrder + is_primary?: SortOrder + status_id?: SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + user?: userOrderByWithRelationInput + email?: emailOrderByWithRelationInput + email_status_lu?: email_status_luOrderByWithRelationInput + } + + export type user_email_xrefWhereUniqueInput = Prisma.AtLeast<{ + user_id_email_id?: user_email_xrefUser_idEmail_idCompoundUniqueInput + AND?: user_email_xrefWhereInput | user_email_xrefWhereInput[] + OR?: user_email_xrefWhereInput[] + NOT?: user_email_xrefWhereInput | user_email_xrefWhereInput[] + user_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + email_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + is_primary?: BoolFilter<"user_email_xref"> | boolean + status_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + create_date?: DateTimeNullableFilter<"user_email_xref"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user_email_xref"> | Date | string | null + user?: XOR + email?: XOR + email_status_lu?: XOR | null + }, "user_id_email_id"> + + export type user_email_xrefOrderByWithAggregationInput = { + user_id?: SortOrder + email_id?: SortOrder + is_primary?: SortOrder + status_id?: SortOrder + create_date?: SortOrderInput | SortOrder + modify_date?: SortOrderInput | SortOrder + _count?: user_email_xrefCountOrderByAggregateInput + _avg?: user_email_xrefAvgOrderByAggregateInput + _max?: user_email_xrefMaxOrderByAggregateInput + _min?: user_email_xrefMinOrderByAggregateInput + _sum?: user_email_xrefSumOrderByAggregateInput + } + + export type user_email_xrefScalarWhereWithAggregatesInput = { + AND?: user_email_xrefScalarWhereWithAggregatesInput | user_email_xrefScalarWhereWithAggregatesInput[] + OR?: user_email_xrefScalarWhereWithAggregatesInput[] + NOT?: user_email_xrefScalarWhereWithAggregatesInput | user_email_xrefScalarWhereWithAggregatesInput[] + user_id?: DecimalWithAggregatesFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + email_id?: DecimalWithAggregatesFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + is_primary?: BoolWithAggregatesFilter<"user_email_xref"> | boolean + status_id?: DecimalWithAggregatesFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + create_date?: DateTimeNullableWithAggregatesFilter<"user_email_xref"> | Date | string | null + modify_date?: DateTimeNullableWithAggregatesFilter<"user_email_xref"> | Date | string | null + } + + export type ClientWhereInput = { + AND?: ClientWhereInput | ClientWhereInput[] + OR?: ClientWhereInput[] + NOT?: ClientWhereInput | ClientWhereInput[] + id?: IntFilter<"Client"> | number + clientId?: StringFilter<"Client"> | string + name?: StringFilter<"Client"> | string + redirectUri?: StringNullableFilter<"Client"> | string | null + secret?: StringNullableFilter<"Client"> | string | null + createdBy?: IntNullableFilter<"Client"> | number | null + createdAt?: DateTimeNullableFilter<"Client"> | Date | string | null + modifiedBy?: IntNullableFilter<"Client"> | number | null + modifiedAt?: DateTimeNullableFilter<"Client"> | Date | string | null + } + + export type ClientOrderByWithRelationInput = { + id?: SortOrder + clientId?: SortOrder + name?: SortOrder + redirectUri?: SortOrderInput | SortOrder + secret?: SortOrderInput | SortOrder + createdBy?: SortOrderInput | SortOrder + createdAt?: SortOrderInput | SortOrder + modifiedBy?: SortOrderInput | SortOrder + modifiedAt?: SortOrderInput | SortOrder + } + + export type ClientWhereUniqueInput = Prisma.AtLeast<{ + id?: number + clientId?: string + AND?: ClientWhereInput | ClientWhereInput[] + OR?: ClientWhereInput[] + NOT?: ClientWhereInput | ClientWhereInput[] + name?: StringFilter<"Client"> | string + redirectUri?: StringNullableFilter<"Client"> | string | null + secret?: StringNullableFilter<"Client"> | string | null + createdBy?: IntNullableFilter<"Client"> | number | null + createdAt?: DateTimeNullableFilter<"Client"> | Date | string | null + modifiedBy?: IntNullableFilter<"Client"> | number | null + modifiedAt?: DateTimeNullableFilter<"Client"> | Date | string | null + }, "id" | "clientId"> + + export type ClientOrderByWithAggregationInput = { + id?: SortOrder + clientId?: SortOrder + name?: SortOrder + redirectUri?: SortOrderInput | SortOrder + secret?: SortOrderInput | SortOrder + createdBy?: SortOrderInput | SortOrder + createdAt?: SortOrderInput | SortOrder + modifiedBy?: SortOrderInput | SortOrder + modifiedAt?: SortOrderInput | SortOrder + _count?: ClientCountOrderByAggregateInput + _avg?: ClientAvgOrderByAggregateInput + _max?: ClientMaxOrderByAggregateInput + _min?: ClientMinOrderByAggregateInput + _sum?: ClientSumOrderByAggregateInput + } + + export type ClientScalarWhereWithAggregatesInput = { + AND?: ClientScalarWhereWithAggregatesInput | ClientScalarWhereWithAggregatesInput[] + OR?: ClientScalarWhereWithAggregatesInput[] + NOT?: ClientScalarWhereWithAggregatesInput | ClientScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"Client"> | number + clientId?: StringWithAggregatesFilter<"Client"> | string + name?: StringWithAggregatesFilter<"Client"> | string + redirectUri?: StringNullableWithAggregatesFilter<"Client"> | string | null + secret?: StringNullableWithAggregatesFilter<"Client"> | string | null + createdBy?: IntNullableWithAggregatesFilter<"Client"> | number | null + createdAt?: DateTimeNullableWithAggregatesFilter<"Client"> | Date | string | null + modifiedBy?: IntNullableWithAggregatesFilter<"Client"> | number | null + modifiedAt?: DateTimeNullableWithAggregatesFilter<"Client"> | Date | string | null + } + + export type RoleWhereInput = { + AND?: RoleWhereInput | RoleWhereInput[] + OR?: RoleWhereInput[] + NOT?: RoleWhereInput | RoleWhereInput[] + id?: IntFilter<"Role"> | number + name?: StringFilter<"Role"> | string + createdBy?: IntNullableFilter<"Role"> | number | null + createdAt?: DateTimeNullableFilter<"Role"> | Date | string | null + modifiedBy?: IntNullableFilter<"Role"> | number | null + modifiedAt?: DateTimeNullableFilter<"Role"> | Date | string | null + roleAssignments?: RoleAssignmentListRelationFilter + } + + export type RoleOrderByWithRelationInput = { + id?: SortOrder + name?: SortOrder + createdBy?: SortOrderInput | SortOrder + createdAt?: SortOrderInput | SortOrder + modifiedBy?: SortOrderInput | SortOrder + modifiedAt?: SortOrderInput | SortOrder + roleAssignments?: RoleAssignmentOrderByRelationAggregateInput + } + + export type RoleWhereUniqueInput = Prisma.AtLeast<{ + id?: number + name?: string + AND?: RoleWhereInput | RoleWhereInput[] + OR?: RoleWhereInput[] + NOT?: RoleWhereInput | RoleWhereInput[] + createdBy?: IntNullableFilter<"Role"> | number | null + createdAt?: DateTimeNullableFilter<"Role"> | Date | string | null + modifiedBy?: IntNullableFilter<"Role"> | number | null + modifiedAt?: DateTimeNullableFilter<"Role"> | Date | string | null + roleAssignments?: RoleAssignmentListRelationFilter + }, "id" | "name"> + + export type RoleOrderByWithAggregationInput = { + id?: SortOrder + name?: SortOrder + createdBy?: SortOrderInput | SortOrder + createdAt?: SortOrderInput | SortOrder + modifiedBy?: SortOrderInput | SortOrder + modifiedAt?: SortOrderInput | SortOrder + _count?: RoleCountOrderByAggregateInput + _avg?: RoleAvgOrderByAggregateInput + _max?: RoleMaxOrderByAggregateInput + _min?: RoleMinOrderByAggregateInput + _sum?: RoleSumOrderByAggregateInput + } + + export type RoleScalarWhereWithAggregatesInput = { + AND?: RoleScalarWhereWithAggregatesInput | RoleScalarWhereWithAggregatesInput[] + OR?: RoleScalarWhereWithAggregatesInput[] + NOT?: RoleScalarWhereWithAggregatesInput | RoleScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"Role"> | number + name?: StringWithAggregatesFilter<"Role"> | string + createdBy?: IntNullableWithAggregatesFilter<"Role"> | number | null + createdAt?: DateTimeNullableWithAggregatesFilter<"Role"> | Date | string | null + modifiedBy?: IntNullableWithAggregatesFilter<"Role"> | number | null + modifiedAt?: DateTimeNullableWithAggregatesFilter<"Role"> | Date | string | null + } + + export type RoleAssignmentWhereInput = { + AND?: RoleAssignmentWhereInput | RoleAssignmentWhereInput[] + OR?: RoleAssignmentWhereInput[] + NOT?: RoleAssignmentWhereInput | RoleAssignmentWhereInput[] + id?: IntFilter<"RoleAssignment"> | number + roleId?: IntFilter<"RoleAssignment"> | number + subjectId?: IntFilter<"RoleAssignment"> | number + createdBy?: IntNullableFilter<"RoleAssignment"> | number | null + createdAt?: DateTimeNullableFilter<"RoleAssignment"> | Date | string | null + modifiedBy?: IntNullableFilter<"RoleAssignment"> | number | null + modifiedAt?: DateTimeNullableFilter<"RoleAssignment"> | Date | string | null + subjectType?: IntFilter<"RoleAssignment"> | number + role?: XOR + } + + export type RoleAssignmentOrderByWithRelationInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrderInput | SortOrder + createdAt?: SortOrderInput | SortOrder + modifiedBy?: SortOrderInput | SortOrder + modifiedAt?: SortOrderInput | SortOrder + subjectType?: SortOrder + role?: RoleOrderByWithRelationInput + } + + export type RoleAssignmentWhereUniqueInput = Prisma.AtLeast<{ + id?: number + roleId_subjectId_subjectType?: RoleAssignmentRoleIdSubjectIdSubjectTypeCompoundUniqueInput + AND?: RoleAssignmentWhereInput | RoleAssignmentWhereInput[] + OR?: RoleAssignmentWhereInput[] + NOT?: RoleAssignmentWhereInput | RoleAssignmentWhereInput[] + roleId?: IntFilter<"RoleAssignment"> | number + subjectId?: IntFilter<"RoleAssignment"> | number + createdBy?: IntNullableFilter<"RoleAssignment"> | number | null + createdAt?: DateTimeNullableFilter<"RoleAssignment"> | Date | string | null + modifiedBy?: IntNullableFilter<"RoleAssignment"> | number | null + modifiedAt?: DateTimeNullableFilter<"RoleAssignment"> | Date | string | null + subjectType?: IntFilter<"RoleAssignment"> | number + role?: XOR + }, "id" | "roleId_subjectId_subjectType"> + + export type RoleAssignmentOrderByWithAggregationInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrderInput | SortOrder + createdAt?: SortOrderInput | SortOrder + modifiedBy?: SortOrderInput | SortOrder + modifiedAt?: SortOrderInput | SortOrder + subjectType?: SortOrder + _count?: RoleAssignmentCountOrderByAggregateInput + _avg?: RoleAssignmentAvgOrderByAggregateInput + _max?: RoleAssignmentMaxOrderByAggregateInput + _min?: RoleAssignmentMinOrderByAggregateInput + _sum?: RoleAssignmentSumOrderByAggregateInput + } + + export type RoleAssignmentScalarWhereWithAggregatesInput = { + AND?: RoleAssignmentScalarWhereWithAggregatesInput | RoleAssignmentScalarWhereWithAggregatesInput[] + OR?: RoleAssignmentScalarWhereWithAggregatesInput[] + NOT?: RoleAssignmentScalarWhereWithAggregatesInput | RoleAssignmentScalarWhereWithAggregatesInput[] + id?: IntWithAggregatesFilter<"RoleAssignment"> | number + roleId?: IntWithAggregatesFilter<"RoleAssignment"> | number + subjectId?: IntWithAggregatesFilter<"RoleAssignment"> | number + createdBy?: IntNullableWithAggregatesFilter<"RoleAssignment"> | number | null + createdAt?: DateTimeNullableWithAggregatesFilter<"RoleAssignment"> | Date | string | null + modifiedBy?: IntNullableWithAggregatesFilter<"RoleAssignment"> | number | null + modifiedAt?: DateTimeNullableWithAggregatesFilter<"RoleAssignment"> | Date | string | null + subjectType?: IntWithAggregatesFilter<"RoleAssignment"> | number + } + + export type achievement_type_luCreateInput = { + achievement_type_id: Decimal | DecimalJsLike | number | string + achievement_type_desc: string + user_achievement?: user_achievementCreateNestedManyWithoutAchievement_type_luInput + } + + export type achievement_type_luUncheckedCreateInput = { + achievement_type_id: Decimal | DecimalJsLike | number | string + achievement_type_desc: string + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutAchievement_type_luInput + } + + export type achievement_type_luUpdateInput = { + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFieldUpdateOperationsInput | string + user_achievement?: user_achievementUpdateManyWithoutAchievement_type_luNestedInput + } + + export type achievement_type_luUncheckedUpdateInput = { + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFieldUpdateOperationsInput | string + user_achievement?: user_achievementUncheckedUpdateManyWithoutAchievement_type_luNestedInput + } + + export type achievement_type_luCreateManyInput = { + achievement_type_id: Decimal | DecimalJsLike | number | string + achievement_type_desc: string + } + + export type achievement_type_luUpdateManyMutationInput = { + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFieldUpdateOperationsInput | string + } + + export type achievement_type_luUncheckedUpdateManyInput = { + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFieldUpdateOperationsInput | string + } + + export type countryCreateInput = { + country_code: string + country_name: string + modify_date?: Date | string | null + participating?: Decimal | DecimalJsLike | number | string | null + default_taxform_id?: Decimal | DecimalJsLike | number | string | null + longitude?: Decimal | DecimalJsLike | number | string | null + latitude?: Decimal | DecimalJsLike | number | string | null + region?: string | null + iso_name?: string | null + iso_alpha2_code?: string | null + iso_alpha3_code?: string | null + } + + export type countryUncheckedCreateInput = { + country_code: string + country_name: string + modify_date?: Date | string | null + participating?: Decimal | DecimalJsLike | number | string | null + default_taxform_id?: Decimal | DecimalJsLike | number | string | null + longitude?: Decimal | DecimalJsLike | number | string | null + latitude?: Decimal | DecimalJsLike | number | string | null + region?: string | null + iso_name?: string | null + iso_alpha2_code?: string | null + iso_alpha3_code?: string | null + } + + export type countryUpdateInput = { + country_code?: StringFieldUpdateOperationsInput | string + country_name?: StringFieldUpdateOperationsInput | string + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + participating?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + longitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + latitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + region?: NullableStringFieldUpdateOperationsInput | string | null + iso_name?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha2_code?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha3_code?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type countryUncheckedUpdateInput = { + country_code?: StringFieldUpdateOperationsInput | string + country_name?: StringFieldUpdateOperationsInput | string + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + participating?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + longitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + latitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + region?: NullableStringFieldUpdateOperationsInput | string | null + iso_name?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha2_code?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha3_code?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type countryCreateManyInput = { + country_code: string + country_name: string + modify_date?: Date | string | null + participating?: Decimal | DecimalJsLike | number | string | null + default_taxform_id?: Decimal | DecimalJsLike | number | string | null + longitude?: Decimal | DecimalJsLike | number | string | null + latitude?: Decimal | DecimalJsLike | number | string | null + region?: string | null + iso_name?: string | null + iso_alpha2_code?: string | null + iso_alpha3_code?: string | null + } + + export type countryUpdateManyMutationInput = { + country_code?: StringFieldUpdateOperationsInput | string + country_name?: StringFieldUpdateOperationsInput | string + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + participating?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + longitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + latitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + region?: NullableStringFieldUpdateOperationsInput | string | null + iso_name?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha2_code?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha3_code?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type countryUncheckedUpdateManyInput = { + country_code?: StringFieldUpdateOperationsInput | string + country_name?: StringFieldUpdateOperationsInput | string + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + participating?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + default_taxform_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + longitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + latitude?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + region?: NullableStringFieldUpdateOperationsInput | string | null + iso_name?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha2_code?: NullableStringFieldUpdateOperationsInput | string | null + iso_alpha3_code?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type dice_connectionCreateInput = { + connection?: string | null + accepted?: boolean + created_at?: Date | string + short_url?: string | null + con_created_at?: Date | string | null + user: userCreateNestedOneWithoutDice_connectionInput + } + + export type dice_connectionUncheckedCreateInput = { + id?: number + user_id: Decimal | DecimalJsLike | number | string + connection?: string | null + accepted?: boolean + created_at?: Date | string + short_url?: string | null + con_created_at?: Date | string | null + } + + export type dice_connectionUpdateInput = { + connection?: NullableStringFieldUpdateOperationsInput | string | null + accepted?: BoolFieldUpdateOperationsInput | boolean + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + short_url?: NullableStringFieldUpdateOperationsInput | string | null + con_created_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user?: userUpdateOneRequiredWithoutDice_connectionNestedInput + } + + export type dice_connectionUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + connection?: NullableStringFieldUpdateOperationsInput | string | null + accepted?: BoolFieldUpdateOperationsInput | boolean + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + short_url?: NullableStringFieldUpdateOperationsInput | string | null + con_created_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type dice_connectionCreateManyInput = { + id?: number + user_id: Decimal | DecimalJsLike | number | string + connection?: string | null + accepted?: boolean + created_at?: Date | string + short_url?: string | null + con_created_at?: Date | string | null + } + + export type dice_connectionUpdateManyMutationInput = { + connection?: NullableStringFieldUpdateOperationsInput | string | null + accepted?: BoolFieldUpdateOperationsInput | boolean + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + short_url?: NullableStringFieldUpdateOperationsInput | string | null + con_created_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type dice_connectionUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + connection?: NullableStringFieldUpdateOperationsInput | string | null + accepted?: BoolFieldUpdateOperationsInput | boolean + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + short_url?: NullableStringFieldUpdateOperationsInput | string | null + con_created_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type emailCreateInput = { + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luCreateNestedOneWithoutEmailInput + email_type_lu?: email_type_luCreateNestedOneWithoutEmailInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutEmailInput + user?: userCreateNestedOneWithoutEmailsInput + } + + export type emailUncheckedCreateInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutEmailInput + } + + export type emailUpdateInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luUpdateOneWithoutEmailNestedInput + email_type_lu?: email_type_luUpdateOneWithoutEmailNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutEmailNestedInput + user?: userUpdateOneWithoutEmailsNestedInput + } + + export type emailUncheckedUpdateInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutEmailNestedInput + } + + export type emailCreateManyInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type emailUpdateManyMutationInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type emailUncheckedUpdateManyInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type email_status_luCreateInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + email?: emailCreateNestedManyWithoutEmail_status_luInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutEmail_status_luInput + } + + export type email_status_luUncheckedCreateInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + email?: emailUncheckedCreateNestedManyWithoutEmail_status_luInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutEmail_status_luInput + } + + export type email_status_luUpdateInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUpdateManyWithoutEmail_status_luNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutEmail_status_luNestedInput + } + + export type email_status_luUncheckedUpdateInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUncheckedUpdateManyWithoutEmail_status_luNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutEmail_status_luNestedInput + } + + export type email_status_luCreateManyInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type email_status_luUpdateManyMutationInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type email_status_luUncheckedUpdateManyInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type email_type_luCreateInput = { + email_type_id: Decimal | DecimalJsLike | number | string + email_type_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + email?: emailCreateNestedManyWithoutEmail_type_luInput + } + + export type email_type_luUncheckedCreateInput = { + email_type_id: Decimal | DecimalJsLike | number | string + email_type_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + email?: emailUncheckedCreateNestedManyWithoutEmail_type_luInput + } + + export type email_type_luUpdateInput = { + email_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUpdateManyWithoutEmail_type_luNestedInput + } + + export type email_type_luUncheckedUpdateInput = { + email_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUncheckedUpdateManyWithoutEmail_type_luNestedInput + } + + export type email_type_luCreateManyInput = { + email_type_id: Decimal | DecimalJsLike | number | string + email_type_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type email_type_luUpdateManyMutationInput = { + email_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type email_type_luUncheckedUpdateManyInput = { + email_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type id_sequencesCreateInput = { + name: string + next_block_start: Decimal | DecimalJsLike | number | string + block_size: Decimal | DecimalJsLike | number | string + exhausted?: Decimal | DecimalJsLike | number | string + } + + export type id_sequencesUncheckedCreateInput = { + name: string + next_block_start: Decimal | DecimalJsLike | number | string + block_size: Decimal | DecimalJsLike | number | string + exhausted?: Decimal | DecimalJsLike | number | string + } + + export type id_sequencesUpdateInput = { + name?: StringFieldUpdateOperationsInput | string + next_block_start?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + block_size?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + exhausted?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + } + + export type id_sequencesUncheckedUpdateInput = { + name?: StringFieldUpdateOperationsInput | string + next_block_start?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + block_size?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + exhausted?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + } + + export type id_sequencesCreateManyInput = { + name: string + next_block_start: Decimal | DecimalJsLike | number | string + block_size: Decimal | DecimalJsLike | number | string + exhausted?: Decimal | DecimalJsLike | number | string + } + + export type id_sequencesUpdateManyMutationInput = { + name?: StringFieldUpdateOperationsInput | string + next_block_start?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + block_size?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + exhausted?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + } + + export type id_sequencesUncheckedUpdateManyInput = { + name?: StringFieldUpdateOperationsInput | string + next_block_start?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + block_size?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + exhausted?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + } + + export type invalid_handlesCreateInput = { + invalid_handle_id: number + invalid_handle: string + } + + export type invalid_handlesUncheckedCreateInput = { + invalid_handle_id: number + invalid_handle: string + } + + export type invalid_handlesUpdateInput = { + invalid_handle_id?: IntFieldUpdateOperationsInput | number + invalid_handle?: StringFieldUpdateOperationsInput | string + } + + export type invalid_handlesUncheckedUpdateInput = { + invalid_handle_id?: IntFieldUpdateOperationsInput | number + invalid_handle?: StringFieldUpdateOperationsInput | string + } + + export type invalid_handlesCreateManyInput = { + invalid_handle_id: number + invalid_handle: string + } + + export type invalid_handlesUpdateManyMutationInput = { + invalid_handle_id?: IntFieldUpdateOperationsInput | number + invalid_handle?: StringFieldUpdateOperationsInput | string + } + + export type invalid_handlesUncheckedUpdateManyInput = { + invalid_handle_id?: IntFieldUpdateOperationsInput | number + invalid_handle?: StringFieldUpdateOperationsInput | string + } + + export type security_groupsCreateInput = { + group_id: Decimal | DecimalJsLike | number | string + description: string + challenge_group_ind?: number + create_user_id?: Decimal | DecimalJsLike | number | string | null + user_group_xref?: user_group_xrefCreateNestedManyWithoutSecurity_groupsInput + } + + export type security_groupsUncheckedCreateInput = { + group_id: Decimal | DecimalJsLike | number | string + description: string + challenge_group_ind?: number + create_user_id?: Decimal | DecimalJsLike | number | string | null + user_group_xref?: user_group_xrefUncheckedCreateNestedManyWithoutSecurity_groupsInput + } + + export type security_groupsUpdateInput = { + group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: StringFieldUpdateOperationsInput | string + challenge_group_ind?: IntFieldUpdateOperationsInput | number + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + user_group_xref?: user_group_xrefUpdateManyWithoutSecurity_groupsNestedInput + } + + export type security_groupsUncheckedUpdateInput = { + group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: StringFieldUpdateOperationsInput | string + challenge_group_ind?: IntFieldUpdateOperationsInput | number + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + user_group_xref?: user_group_xrefUncheckedUpdateManyWithoutSecurity_groupsNestedInput + } + + export type security_groupsCreateManyInput = { + group_id: Decimal | DecimalJsLike | number | string + description: string + challenge_group_ind?: number + create_user_id?: Decimal | DecimalJsLike | number | string | null + } + + export type security_groupsUpdateManyMutationInput = { + group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: StringFieldUpdateOperationsInput | string + challenge_group_ind?: IntFieldUpdateOperationsInput | number + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type security_groupsUncheckedUpdateManyInput = { + group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: StringFieldUpdateOperationsInput | string + challenge_group_ind?: IntFieldUpdateOperationsInput | number + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type security_status_luCreateInput = { + security_status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + user_group_xref?: user_group_xrefCreateNestedManyWithoutSecurity_status_luInput + } + + export type security_status_luUncheckedCreateInput = { + security_status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + user_group_xref?: user_group_xrefUncheckedCreateNestedManyWithoutSecurity_status_luInput + } + + export type security_status_luUpdateInput = { + security_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + user_group_xref?: user_group_xrefUpdateManyWithoutSecurity_status_luNestedInput + } + + export type security_status_luUncheckedUpdateInput = { + security_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + user_group_xref?: user_group_xrefUncheckedUpdateManyWithoutSecurity_status_luNestedInput + } + + export type security_status_luCreateManyInput = { + security_status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + } + + export type security_status_luUpdateManyMutationInput = { + security_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type security_status_luUncheckedUpdateManyInput = { + security_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type security_userCreateInput = { + login_id: Decimal | DecimalJsLike | number | string + user_id: string + password: string + create_user_id?: Decimal | DecimalJsLike | number | string | null + modify_date?: Date | string | null + user_group_xref?: user_group_xrefCreateNestedManyWithoutSecurity_userInput + } + + export type security_userUncheckedCreateInput = { + login_id: Decimal | DecimalJsLike | number | string + user_id: string + password: string + create_user_id?: Decimal | DecimalJsLike | number | string | null + modify_date?: Date | string | null + user_group_xref?: user_group_xrefUncheckedCreateNestedManyWithoutSecurity_userInput + } + + export type security_userUpdateInput = { + login_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_id?: StringFieldUpdateOperationsInput | string + password?: StringFieldUpdateOperationsInput | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user_group_xref?: user_group_xrefUpdateManyWithoutSecurity_userNestedInput + } + + export type security_userUncheckedUpdateInput = { + login_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_id?: StringFieldUpdateOperationsInput | string + password?: StringFieldUpdateOperationsInput | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user_group_xref?: user_group_xrefUncheckedUpdateManyWithoutSecurity_userNestedInput + } + + export type security_userCreateManyInput = { + login_id: Decimal | DecimalJsLike | number | string + user_id: string + password: string + create_user_id?: Decimal | DecimalJsLike | number | string | null + modify_date?: Date | string | null + } + + export type security_userUpdateManyMutationInput = { + login_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_id?: StringFieldUpdateOperationsInput | string + password?: StringFieldUpdateOperationsInput | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type security_userUncheckedUpdateManyInput = { + login_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_id?: StringFieldUpdateOperationsInput | string + password?: StringFieldUpdateOperationsInput | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type social_login_providerCreateInput = { + social_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + user_social_login?: user_social_loginCreateNestedManyWithoutSocial_login_providerInput + } + + export type social_login_providerUncheckedCreateInput = { + social_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutSocial_login_providerInput + } + + export type social_login_providerUpdateInput = { + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + user_social_login?: user_social_loginUpdateManyWithoutSocial_login_providerNestedInput + } + + export type social_login_providerUncheckedUpdateInput = { + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + user_social_login?: user_social_loginUncheckedUpdateManyWithoutSocial_login_providerNestedInput + } + + export type social_login_providerCreateManyInput = { + social_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + } + + export type social_login_providerUpdateManyMutationInput = { + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type social_login_providerUncheckedUpdateManyInput = { + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type sso_login_providerCreateInput = { + sso_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + type: string + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + user_sso_login?: user_sso_loginCreateNestedManyWithoutSso_login_providerInput + } + + export type sso_login_providerUncheckedCreateInput = { + sso_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + type: string + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutSso_login_providerInput + } + + export type sso_login_providerUpdateInput = { + sso_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + type?: StringFieldUpdateOperationsInput | string + identify_email_enabled?: BoolFieldUpdateOperationsInput | boolean + identify_handle_enabled?: BoolFieldUpdateOperationsInput | boolean + user_sso_login?: user_sso_loginUpdateManyWithoutSso_login_providerNestedInput + } + + export type sso_login_providerUncheckedUpdateInput = { + sso_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + type?: StringFieldUpdateOperationsInput | string + identify_email_enabled?: BoolFieldUpdateOperationsInput | boolean + identify_handle_enabled?: BoolFieldUpdateOperationsInput | boolean + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutSso_login_providerNestedInput + } + + export type sso_login_providerCreateManyInput = { + sso_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + type: string + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + } + + export type sso_login_providerUpdateManyMutationInput = { + sso_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + type?: StringFieldUpdateOperationsInput | string + identify_email_enabled?: BoolFieldUpdateOperationsInput | boolean + identify_handle_enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type sso_login_providerUncheckedUpdateManyInput = { + sso_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + type?: StringFieldUpdateOperationsInput | string + identify_email_enabled?: BoolFieldUpdateOperationsInput | boolean + identify_handle_enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type userCreateInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userUpdateInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type userCreateManyInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + } + + export type userUpdateManyMutationInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type userUncheckedUpdateManyInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_2faCreateInput = { + mfa_enabled?: boolean + dice_enabled?: boolean + created_by: Decimal | DecimalJsLike | number | string + created_at?: Date | string + modified_by: Decimal | DecimalJsLike | number | string + modified_at?: Date | string + user: userCreateNestedOneWithoutUser_2faInput + } + + export type user_2faUncheckedCreateInput = { + id?: number + user_id: Decimal | DecimalJsLike | number | string + mfa_enabled?: boolean + dice_enabled?: boolean + created_by: Decimal | DecimalJsLike | number | string + created_at?: Date | string + modified_by: Decimal | DecimalJsLike | number | string + modified_at?: Date | string + } + + export type user_2faUpdateInput = { + mfa_enabled?: BoolFieldUpdateOperationsInput | boolean + dice_enabled?: BoolFieldUpdateOperationsInput | boolean + created_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + modified_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFieldUpdateOperationsInput | Date | string + user?: userUpdateOneRequiredWithoutUser_2faNestedInput + } + + export type user_2faUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + mfa_enabled?: BoolFieldUpdateOperationsInput | boolean + dice_enabled?: BoolFieldUpdateOperationsInput | boolean + created_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + modified_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFieldUpdateOperationsInput | Date | string + } + + export type user_2faCreateManyInput = { + id?: number + user_id: Decimal | DecimalJsLike | number | string + mfa_enabled?: boolean + dice_enabled?: boolean + created_by: Decimal | DecimalJsLike | number | string + created_at?: Date | string + modified_by: Decimal | DecimalJsLike | number | string + modified_at?: Date | string + } + + export type user_2faUpdateManyMutationInput = { + mfa_enabled?: BoolFieldUpdateOperationsInput | boolean + dice_enabled?: BoolFieldUpdateOperationsInput | boolean + created_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + modified_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFieldUpdateOperationsInput | Date | string + } + + export type user_2faUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + mfa_enabled?: BoolFieldUpdateOperationsInput | boolean + dice_enabled?: BoolFieldUpdateOperationsInput | boolean + created_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + modified_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFieldUpdateOperationsInput | Date | string + } + + export type user_achievementCreateInput = { + achievement_date: Date | string + description?: string | null + create_date?: Date | string | null + achievement_type_lu: achievement_type_luCreateNestedOneWithoutUser_achievementInput + user: userCreateNestedOneWithoutUser_achievementInput + } + + export type user_achievementUncheckedCreateInput = { + user_id: Decimal | DecimalJsLike | number | string + achievement_date: Date | string + achievement_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + create_date?: Date | string | null + } + + export type user_achievementUpdateInput = { + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + achievement_type_lu?: achievement_type_luUpdateOneRequiredWithoutUser_achievementNestedInput + user?: userUpdateOneRequiredWithoutUser_achievementNestedInput + } + + export type user_achievementUncheckedUpdateInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_achievementCreateManyInput = { + user_id: Decimal | DecimalJsLike | number | string + achievement_date: Date | string + achievement_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + create_date?: Date | string | null + } + + export type user_achievementUpdateManyMutationInput = { + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_achievementUncheckedUpdateManyInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefCreateInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + create_user_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + security_user?: security_userCreateNestedOneWithoutUser_group_xrefInput + security_groups?: security_groupsCreateNestedOneWithoutUser_group_xrefInput + security_status_lu?: security_status_luCreateNestedOneWithoutUser_group_xrefInput + } + + export type user_group_xrefUncheckedCreateInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + login_id?: Decimal | DecimalJsLike | number | string | null + group_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + security_status_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefUpdateInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + security_user?: security_userUpdateOneWithoutUser_group_xrefNestedInput + security_groups?: security_groupsUpdateOneWithoutUser_group_xrefNestedInput + security_status_lu?: security_status_luUpdateOneWithoutUser_group_xrefNestedInput + } + + export type user_group_xrefUncheckedUpdateInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + login_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + group_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + security_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefCreateManyInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + login_id?: Decimal | DecimalJsLike | number | string | null + group_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + security_status_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefUpdateManyMutationInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefUncheckedUpdateManyInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + login_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + group_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + security_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_otp_emailCreateInput = { + mode: number + otp: string + expire_at: Date | string + resend?: boolean + fail_count?: number + user: userCreateNestedOneWithoutUser_otp_emailInput + } + + export type user_otp_emailUncheckedCreateInput = { + id?: number + user_id: Decimal | DecimalJsLike | number | string + mode: number + otp: string + expire_at: Date | string + resend?: boolean + fail_count?: number + } + + export type user_otp_emailUpdateInput = { + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + user?: userUpdateOneRequiredWithoutUser_otp_emailNestedInput + } + + export type user_otp_emailUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + } + + export type user_otp_emailCreateManyInput = { + id?: number + user_id: Decimal | DecimalJsLike | number | string + mode: number + otp: string + expire_at: Date | string + resend?: boolean + fail_count?: number + } + + export type user_otp_emailUpdateManyMutationInput = { + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + } + + export type user_otp_emailUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + } + + export type user_social_loginCreateInput = { + social_user_id?: string | null + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + social_login_provider: social_login_providerCreateNestedOneWithoutUser_social_loginInput + user: userCreateNestedOneWithoutUser_social_loginInput + } + + export type user_social_loginUncheckedCreateInput = { + social_user_id?: string | null + user_id: Decimal | DecimalJsLike | number | string + social_login_provider_id: Decimal | DecimalJsLike | number | string + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_social_loginUpdateInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + social_login_provider?: social_login_providerUpdateOneRequiredWithoutUser_social_loginNestedInput + user?: userUpdateOneRequiredWithoutUser_social_loginNestedInput + } + + export type user_social_loginUncheckedUpdateInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_social_loginCreateManyInput = { + social_user_id?: string | null + user_id: Decimal | DecimalJsLike | number | string + social_login_provider_id: Decimal | DecimalJsLike | number | string + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_social_loginUpdateManyMutationInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_social_loginUncheckedUpdateManyInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_sso_loginCreateInput = { + sso_user_id: string + sso_user_name?: string | null + email?: string | null + sso_login_provider: sso_login_providerCreateNestedOneWithoutUser_sso_loginInput + user: userCreateNestedOneWithoutUser_sso_loginInput + } + + export type user_sso_loginUncheckedCreateInput = { + user_id: Decimal | DecimalJsLike | number | string + sso_user_id: string + sso_user_name?: string | null + provider_id: Decimal | DecimalJsLike | number | string + email?: string | null + } + + export type user_sso_loginUpdateInput = { + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + sso_login_provider?: sso_login_providerUpdateOneRequiredWithoutUser_sso_loginNestedInput + user?: userUpdateOneRequiredWithoutUser_sso_loginNestedInput + } + + export type user_sso_loginUncheckedUpdateInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_sso_loginCreateManyInput = { + user_id: Decimal | DecimalJsLike | number | string + sso_user_id: string + sso_user_name?: string | null + provider_id: Decimal | DecimalJsLike | number | string + email?: string | null + } + + export type user_sso_loginUpdateManyMutationInput = { + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_sso_loginUncheckedUpdateManyInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_statusCreateInput = { + user: userCreateNestedOneWithoutUser_statusInput + user_status_lu?: user_status_luCreateNestedOneWithoutUser_statusInput + user_status_type_lu: user_status_type_luCreateNestedOneWithoutUser_statusInput + } + + export type user_statusUncheckedCreateInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_type_id: Decimal | DecimalJsLike | number | string + user_status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_statusUpdateInput = { + user?: userUpdateOneRequiredWithoutUser_statusNestedInput + user_status_lu?: user_status_luUpdateOneWithoutUser_statusNestedInput + user_status_type_lu?: user_status_type_luUpdateOneRequiredWithoutUser_statusNestedInput + } + + export type user_statusUncheckedUpdateInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_statusCreateManyInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_type_id: Decimal | DecimalJsLike | number | string + user_status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_statusUpdateManyMutationInput = { + + } + + export type user_statusUncheckedUpdateManyInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_status_luCreateInput = { + user_status_id: Decimal | DecimalJsLike | number | string + description?: string | null + user_status?: user_statusCreateNestedManyWithoutUser_status_luInput + } + + export type user_status_luUncheckedCreateInput = { + user_status_id: Decimal | DecimalJsLike | number | string + description?: string | null + user_status?: user_statusUncheckedCreateNestedManyWithoutUser_status_luInput + } + + export type user_status_luUpdateInput = { + user_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + user_status?: user_statusUpdateManyWithoutUser_status_luNestedInput + } + + export type user_status_luUncheckedUpdateInput = { + user_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + user_status?: user_statusUncheckedUpdateManyWithoutUser_status_luNestedInput + } + + export type user_status_luCreateManyInput = { + user_status_id: Decimal | DecimalJsLike | number | string + description?: string | null + } + + export type user_status_luUpdateManyMutationInput = { + user_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_status_luUncheckedUpdateManyInput = { + user_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_status_type_luCreateInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + user_status?: user_statusCreateNestedManyWithoutUser_status_type_luInput + } + + export type user_status_type_luUncheckedCreateInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + user_status?: user_statusUncheckedCreateNestedManyWithoutUser_status_type_luInput + } + + export type user_status_type_luUpdateInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + user_status?: user_statusUpdateManyWithoutUser_status_type_luNestedInput + } + + export type user_status_type_luUncheckedUpdateInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + user_status?: user_statusUncheckedUpdateManyWithoutUser_status_type_luNestedInput + } + + export type user_status_type_luCreateManyInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + } + + export type user_status_type_luUpdateManyMutationInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_status_type_luUncheckedUpdateManyInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_email_xrefCreateInput = { + is_primary: boolean + create_date?: Date | string | null + modify_date?: Date | string | null + user: userCreateNestedOneWithoutUser_email_xrefInput + email: emailCreateNestedOneWithoutUser_email_xrefInput + email_status_lu?: email_status_luCreateNestedOneWithoutUser_email_xrefInput + } + + export type user_email_xrefUncheckedCreateInput = { + user_id: Decimal | DecimalJsLike | number | string + email_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + status_id: Decimal | DecimalJsLike | number | string + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_email_xrefUpdateInput = { + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user?: userUpdateOneRequiredWithoutUser_email_xrefNestedInput + email?: emailUpdateOneRequiredWithoutUser_email_xrefNestedInput + email_status_lu?: email_status_luUpdateOneWithoutUser_email_xrefNestedInput + } + + export type user_email_xrefUncheckedUpdateInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefCreateManyInput = { + user_id: Decimal | DecimalJsLike | number | string + email_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + status_id: Decimal | DecimalJsLike | number | string + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_email_xrefUpdateManyMutationInput = { + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefUncheckedUpdateManyInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type ClientCreateInput = { + clientId: string + name: string + redirectUri?: string | null + secret?: string | null + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + } + + export type ClientUncheckedCreateInput = { + id?: number + clientId: string + name: string + redirectUri?: string | null + secret?: string | null + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + } + + export type ClientUpdateInput = { + clientId?: StringFieldUpdateOperationsInput | string + name?: StringFieldUpdateOperationsInput | string + redirectUri?: NullableStringFieldUpdateOperationsInput | string | null + secret?: NullableStringFieldUpdateOperationsInput | string | null + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type ClientUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + clientId?: StringFieldUpdateOperationsInput | string + name?: StringFieldUpdateOperationsInput | string + redirectUri?: NullableStringFieldUpdateOperationsInput | string | null + secret?: NullableStringFieldUpdateOperationsInput | string | null + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type ClientCreateManyInput = { + id?: number + clientId: string + name: string + redirectUri?: string | null + secret?: string | null + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + } + + export type ClientUpdateManyMutationInput = { + clientId?: StringFieldUpdateOperationsInput | string + name?: StringFieldUpdateOperationsInput | string + redirectUri?: NullableStringFieldUpdateOperationsInput | string | null + secret?: NullableStringFieldUpdateOperationsInput | string | null + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type ClientUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + clientId?: StringFieldUpdateOperationsInput | string + name?: StringFieldUpdateOperationsInput | string + redirectUri?: NullableStringFieldUpdateOperationsInput | string | null + secret?: NullableStringFieldUpdateOperationsInput | string | null + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type RoleCreateInput = { + name: string + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + roleAssignments?: RoleAssignmentCreateNestedManyWithoutRoleInput + } + + export type RoleUncheckedCreateInput = { + id?: number + name: string + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + roleAssignments?: RoleAssignmentUncheckedCreateNestedManyWithoutRoleInput + } + + export type RoleUpdateInput = { + name?: StringFieldUpdateOperationsInput | string + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + roleAssignments?: RoleAssignmentUpdateManyWithoutRoleNestedInput + } + + export type RoleUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + name?: StringFieldUpdateOperationsInput | string + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + roleAssignments?: RoleAssignmentUncheckedUpdateManyWithoutRoleNestedInput + } + + export type RoleCreateManyInput = { + id?: number + name: string + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + } + + export type RoleUpdateManyMutationInput = { + name?: StringFieldUpdateOperationsInput | string + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type RoleUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + name?: StringFieldUpdateOperationsInput | string + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type RoleAssignmentCreateInput = { + subjectId: number + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + subjectType?: number + role: RoleCreateNestedOneWithoutRoleAssignmentsInput + } + + export type RoleAssignmentUncheckedCreateInput = { + id?: number + roleId: number + subjectId: number + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + subjectType?: number + } + + export type RoleAssignmentUpdateInput = { + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + role?: RoleUpdateOneRequiredWithoutRoleAssignmentsNestedInput + } + + export type RoleAssignmentUncheckedUpdateInput = { + id?: IntFieldUpdateOperationsInput | number + roleId?: IntFieldUpdateOperationsInput | number + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + } + + export type RoleAssignmentCreateManyInput = { + id?: number + roleId: number + subjectId: number + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + subjectType?: number + } + + export type RoleAssignmentUpdateManyMutationInput = { + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + } + + export type RoleAssignmentUncheckedUpdateManyInput = { + id?: IntFieldUpdateOperationsInput | number + roleId?: IntFieldUpdateOperationsInput | number + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + } + + export type DecimalFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string + } + + export type StringFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] | ListStringFieldRefInput<$PrismaModel> + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> + 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> + mode?: QueryMode + not?: NestedStringFilter<$PrismaModel> | string + } + + export type User_achievementListRelationFilter = { + every?: user_achievementWhereInput + some?: user_achievementWhereInput + none?: user_achievementWhereInput + } + + export type user_achievementOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type achievement_type_luCountOrderByAggregateInput = { + achievement_type_id?: SortOrder + achievement_type_desc?: SortOrder + } + + export type achievement_type_luAvgOrderByAggregateInput = { + achievement_type_id?: SortOrder + } + + export type achievement_type_luMaxOrderByAggregateInput = { + achievement_type_id?: SortOrder + achievement_type_desc?: SortOrder + } + + export type achievement_type_luMinOrderByAggregateInput = { + achievement_type_id?: SortOrder + achievement_type_desc?: SortOrder + } + + export type achievement_type_luSumOrderByAggregateInput = { + achievement_type_id?: SortOrder + } + + export type DecimalWithAggregatesFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalWithAggregatesFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string + _count?: NestedIntFilter<$PrismaModel> + _avg?: NestedDecimalFilter<$PrismaModel> + _sum?: NestedDecimalFilter<$PrismaModel> + _min?: NestedDecimalFilter<$PrismaModel> + _max?: NestedDecimalFilter<$PrismaModel> + } + + export type StringWithAggregatesFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] | ListStringFieldRefInput<$PrismaModel> + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> + 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> + mode?: QueryMode + not?: NestedStringWithAggregatesFilter<$PrismaModel> | string + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedStringFilter<$PrismaModel> + _max?: NestedStringFilter<$PrismaModel> + } + + export type DateTimeNullableFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | null + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | 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 DecimalNullableFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> | null + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalNullableFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string | null + } + + export type StringNullableFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | ListStringFieldRefInput<$PrismaModel> | null + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | 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> + mode?: QueryMode + not?: NestedStringNullableFilter<$PrismaModel> | string | null + } + + export type SortOrderInput = { + sort: SortOrder + nulls?: NullsOrder + } + + export type countryCountOrderByAggregateInput = { + country_code?: SortOrder + country_name?: SortOrder + modify_date?: SortOrder + participating?: SortOrder + default_taxform_id?: SortOrder + longitude?: SortOrder + latitude?: SortOrder + region?: SortOrder + iso_name?: SortOrder + iso_alpha2_code?: SortOrder + iso_alpha3_code?: SortOrder + } + + export type countryAvgOrderByAggregateInput = { + participating?: SortOrder + default_taxform_id?: SortOrder + longitude?: SortOrder + latitude?: SortOrder + } + + export type countryMaxOrderByAggregateInput = { + country_code?: SortOrder + country_name?: SortOrder + modify_date?: SortOrder + participating?: SortOrder + default_taxform_id?: SortOrder + longitude?: SortOrder + latitude?: SortOrder + region?: SortOrder + iso_name?: SortOrder + iso_alpha2_code?: SortOrder + iso_alpha3_code?: SortOrder + } + + export type countryMinOrderByAggregateInput = { + country_code?: SortOrder + country_name?: SortOrder + modify_date?: SortOrder + participating?: SortOrder + default_taxform_id?: SortOrder + longitude?: SortOrder + latitude?: SortOrder + region?: SortOrder + iso_name?: SortOrder + iso_alpha2_code?: SortOrder + iso_alpha3_code?: SortOrder + } + + export type countrySumOrderByAggregateInput = { + participating?: SortOrder + default_taxform_id?: SortOrder + longitude?: SortOrder + latitude?: SortOrder + } + + export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | null + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | 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 DecimalNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> | null + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalNullableWithAggregatesFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _avg?: NestedDecimalNullableFilter<$PrismaModel> + _sum?: NestedDecimalNullableFilter<$PrismaModel> + _min?: NestedDecimalNullableFilter<$PrismaModel> + _max?: NestedDecimalNullableFilter<$PrismaModel> + } + + export type StringNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | ListStringFieldRefInput<$PrismaModel> | null + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | 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> + mode?: QueryMode + not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedStringNullableFilter<$PrismaModel> + _max?: NestedStringNullableFilter<$PrismaModel> + } + + export type IntFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] | ListIntFieldRefInput<$PrismaModel> + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntFilter<$PrismaModel> | number + } + + export type BoolFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolFilter<$PrismaModel> | boolean + } + + export type DateTimeFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + 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 dice_connectionCountOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + connection?: SortOrder + accepted?: SortOrder + created_at?: SortOrder + short_url?: SortOrder + con_created_at?: SortOrder + } + + export type dice_connectionAvgOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + } + + export type dice_connectionMaxOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + connection?: SortOrder + accepted?: SortOrder + created_at?: SortOrder + short_url?: SortOrder + con_created_at?: SortOrder + } + + export type dice_connectionMinOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + connection?: SortOrder + accepted?: SortOrder + created_at?: SortOrder + short_url?: SortOrder + con_created_at?: SortOrder + } + + export type dice_connectionSumOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + } + + export type IntWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] | ListIntFieldRefInput<$PrismaModel> + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> + 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 BoolWithAggregatesFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedBoolFilter<$PrismaModel> + _max?: NestedBoolFilter<$PrismaModel> + } + + export type DateTimeWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + 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 Email_status_luNullableScalarRelationFilter = { + is?: email_status_luWhereInput | null + isNot?: email_status_luWhereInput | null + } + + export type Email_type_luNullableScalarRelationFilter = { + is?: email_type_luWhereInput | null + isNot?: email_type_luWhereInput | null + } + + export type User_email_xrefListRelationFilter = { + every?: user_email_xrefWhereInput + some?: user_email_xrefWhereInput + none?: user_email_xrefWhereInput + } + + export type UserNullableScalarRelationFilter = { + is?: userWhereInput | null + isNot?: userWhereInput | null + } + + export type user_email_xrefOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type emailCountOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + email_type_id?: SortOrder + address?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + primary_ind?: SortOrder + status_id?: SortOrder + } + + export type emailAvgOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + email_type_id?: SortOrder + primary_ind?: SortOrder + status_id?: SortOrder + } + + export type emailMaxOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + email_type_id?: SortOrder + address?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + primary_ind?: SortOrder + status_id?: SortOrder + } + + export type emailMinOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + email_type_id?: SortOrder + address?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + primary_ind?: SortOrder + status_id?: SortOrder + } + + export type emailSumOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + email_type_id?: SortOrder + primary_ind?: SortOrder + status_id?: SortOrder + } + + export type EmailListRelationFilter = { + every?: emailWhereInput + some?: emailWhereInput + none?: emailWhereInput + } + + export type emailOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type email_status_luCountOrderByAggregateInput = { + status_id?: SortOrder + status_desc?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type email_status_luAvgOrderByAggregateInput = { + status_id?: SortOrder + } + + export type email_status_luMaxOrderByAggregateInput = { + status_id?: SortOrder + status_desc?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type email_status_luMinOrderByAggregateInput = { + status_id?: SortOrder + status_desc?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type email_status_luSumOrderByAggregateInput = { + status_id?: SortOrder + } + + export type email_type_luCountOrderByAggregateInput = { + email_type_id?: SortOrder + email_type_desc?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type email_type_luAvgOrderByAggregateInput = { + email_type_id?: SortOrder + } + + export type email_type_luMaxOrderByAggregateInput = { + email_type_id?: SortOrder + email_type_desc?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type email_type_luMinOrderByAggregateInput = { + email_type_id?: SortOrder + email_type_desc?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type email_type_luSumOrderByAggregateInput = { + email_type_id?: SortOrder + } + + export type id_sequencesCountOrderByAggregateInput = { + name?: SortOrder + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + } + + export type id_sequencesAvgOrderByAggregateInput = { + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + } + + export type id_sequencesMaxOrderByAggregateInput = { + name?: SortOrder + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + } + + export type id_sequencesMinOrderByAggregateInput = { + name?: SortOrder + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + } + + export type id_sequencesSumOrderByAggregateInput = { + next_block_start?: SortOrder + block_size?: SortOrder + exhausted?: SortOrder + } + + export type invalid_handlesCountOrderByAggregateInput = { + invalid_handle_id?: SortOrder + invalid_handle?: SortOrder + } + + export type invalid_handlesAvgOrderByAggregateInput = { + invalid_handle_id?: SortOrder + } + + export type invalid_handlesMaxOrderByAggregateInput = { + invalid_handle_id?: SortOrder + invalid_handle?: SortOrder + } + + export type invalid_handlesMinOrderByAggregateInput = { + invalid_handle_id?: SortOrder + invalid_handle?: SortOrder + } + + export type invalid_handlesSumOrderByAggregateInput = { + invalid_handle_id?: SortOrder + } + + export type User_group_xrefListRelationFilter = { + every?: user_group_xrefWhereInput + some?: user_group_xrefWhereInput + none?: user_group_xrefWhereInput + } + + export type user_group_xrefOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type security_groupsCountOrderByAggregateInput = { + group_id?: SortOrder + description?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrder + } + + export type security_groupsAvgOrderByAggregateInput = { + group_id?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrder + } + + export type security_groupsMaxOrderByAggregateInput = { + group_id?: SortOrder + description?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrder + } + + export type security_groupsMinOrderByAggregateInput = { + group_id?: SortOrder + description?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrder + } + + export type security_groupsSumOrderByAggregateInput = { + group_id?: SortOrder + challenge_group_ind?: SortOrder + create_user_id?: SortOrder + } + + export type security_status_luCountOrderByAggregateInput = { + security_status_id?: SortOrder + status_desc?: SortOrder + } + + export type security_status_luAvgOrderByAggregateInput = { + security_status_id?: SortOrder + } + + export type security_status_luMaxOrderByAggregateInput = { + security_status_id?: SortOrder + status_desc?: SortOrder + } + + export type security_status_luMinOrderByAggregateInput = { + security_status_id?: SortOrder + status_desc?: SortOrder + } + + export type security_status_luSumOrderByAggregateInput = { + security_status_id?: SortOrder + } + + export type security_userCountOrderByAggregateInput = { + login_id?: SortOrder + user_id?: SortOrder + password?: SortOrder + create_user_id?: SortOrder + modify_date?: SortOrder + } + + export type security_userAvgOrderByAggregateInput = { + login_id?: SortOrder + create_user_id?: SortOrder + } + + export type security_userMaxOrderByAggregateInput = { + login_id?: SortOrder + user_id?: SortOrder + password?: SortOrder + create_user_id?: SortOrder + modify_date?: SortOrder + } + + export type security_userMinOrderByAggregateInput = { + login_id?: SortOrder + user_id?: SortOrder + password?: SortOrder + create_user_id?: SortOrder + modify_date?: SortOrder + } + + export type security_userSumOrderByAggregateInput = { + login_id?: SortOrder + create_user_id?: SortOrder + } + + export type User_social_loginListRelationFilter = { + every?: user_social_loginWhereInput + some?: user_social_loginWhereInput + none?: user_social_loginWhereInput + } + + export type user_social_loginOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type social_login_providerCountOrderByAggregateInput = { + social_login_provider_id?: SortOrder + name?: SortOrder + } + + export type social_login_providerAvgOrderByAggregateInput = { + social_login_provider_id?: SortOrder + } + + export type social_login_providerMaxOrderByAggregateInput = { + social_login_provider_id?: SortOrder + name?: SortOrder + } + + export type social_login_providerMinOrderByAggregateInput = { + social_login_provider_id?: SortOrder + name?: SortOrder + } + + export type social_login_providerSumOrderByAggregateInput = { + social_login_provider_id?: SortOrder + } + + export type User_sso_loginListRelationFilter = { + every?: user_sso_loginWhereInput + some?: user_sso_loginWhereInput + none?: user_sso_loginWhereInput + } + + export type user_sso_loginOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type sso_login_providerCountOrderByAggregateInput = { + sso_login_provider_id?: SortOrder + name?: SortOrder + type?: SortOrder + identify_email_enabled?: SortOrder + identify_handle_enabled?: SortOrder + } + + export type sso_login_providerAvgOrderByAggregateInput = { + sso_login_provider_id?: SortOrder + } + + export type sso_login_providerMaxOrderByAggregateInput = { + sso_login_provider_id?: SortOrder + name?: SortOrder + type?: SortOrder + identify_email_enabled?: SortOrder + identify_handle_enabled?: SortOrder + } + + export type sso_login_providerMinOrderByAggregateInput = { + sso_login_provider_id?: SortOrder + name?: SortOrder + type?: SortOrder + identify_email_enabled?: SortOrder + identify_handle_enabled?: SortOrder + } + + export type sso_login_providerSumOrderByAggregateInput = { + sso_login_provider_id?: SortOrder + } + + export type Dice_connectionNullableScalarRelationFilter = { + is?: dice_connectionWhereInput | null + isNot?: dice_connectionWhereInput | null + } + + export type User_2faNullableScalarRelationFilter = { + is?: user_2faWhereInput | null + isNot?: user_2faWhereInput | null + } + + export type User_otp_emailListRelationFilter = { + every?: user_otp_emailWhereInput + some?: user_otp_emailWhereInput + none?: user_otp_emailWhereInput + } + + export type User_statusListRelationFilter = { + every?: user_statusWhereInput + some?: user_statusWhereInput + none?: user_statusWhereInput + } + + export type user_otp_emailOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type user_statusOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type userCountOrderByAggregateInput = { + user_id?: SortOrder + first_name?: SortOrder + last_name?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + handle?: SortOrder + last_login?: SortOrder + status?: SortOrder + activation_code?: SortOrder + middle_name?: SortOrder + handle_lower?: SortOrder + timezone_id?: SortOrder + last_site_hit_date?: SortOrder + name_in_another_language?: SortOrder + password?: SortOrder + open_id?: SortOrder + reg_source?: SortOrder + utm_source?: SortOrder + utm_medium?: SortOrder + utm_campaign?: SortOrder + } + + export type userAvgOrderByAggregateInput = { + user_id?: SortOrder + timezone_id?: SortOrder + } + + export type userMaxOrderByAggregateInput = { + user_id?: SortOrder + first_name?: SortOrder + last_name?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + handle?: SortOrder + last_login?: SortOrder + status?: SortOrder + activation_code?: SortOrder + middle_name?: SortOrder + handle_lower?: SortOrder + timezone_id?: SortOrder + last_site_hit_date?: SortOrder + name_in_another_language?: SortOrder + password?: SortOrder + open_id?: SortOrder + reg_source?: SortOrder + utm_source?: SortOrder + utm_medium?: SortOrder + utm_campaign?: SortOrder + } + + export type userMinOrderByAggregateInput = { + user_id?: SortOrder + first_name?: SortOrder + last_name?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + handle?: SortOrder + last_login?: SortOrder + status?: SortOrder + activation_code?: SortOrder + middle_name?: SortOrder + handle_lower?: SortOrder + timezone_id?: SortOrder + last_site_hit_date?: SortOrder + name_in_another_language?: SortOrder + password?: SortOrder + open_id?: SortOrder + reg_source?: SortOrder + utm_source?: SortOrder + utm_medium?: SortOrder + utm_campaign?: SortOrder + } + + export type userSumOrderByAggregateInput = { + user_id?: SortOrder + timezone_id?: SortOrder + } + + export type user_2faCountOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mfa_enabled?: SortOrder + dice_enabled?: SortOrder + created_by?: SortOrder + created_at?: SortOrder + modified_by?: SortOrder + modified_at?: SortOrder + } + + export type user_2faAvgOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + created_by?: SortOrder + modified_by?: SortOrder + } + + export type user_2faMaxOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mfa_enabled?: SortOrder + dice_enabled?: SortOrder + created_by?: SortOrder + created_at?: SortOrder + modified_by?: SortOrder + modified_at?: SortOrder + } + + export type user_2faMinOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mfa_enabled?: SortOrder + dice_enabled?: SortOrder + created_by?: SortOrder + created_at?: SortOrder + modified_by?: SortOrder + modified_at?: SortOrder + } + + export type user_2faSumOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + created_by?: SortOrder + modified_by?: SortOrder + } + + export type Achievement_type_luScalarRelationFilter = { + is?: achievement_type_luWhereInput + isNot?: achievement_type_luWhereInput + } + + export type user_achievementUser_idAchievement_type_idCompoundUniqueInput = { + user_id: Decimal | DecimalJsLike | number | string + achievement_type_id: Decimal | DecimalJsLike | number | string + } + + export type user_achievementCountOrderByAggregateInput = { + user_id?: SortOrder + achievement_date?: SortOrder + achievement_type_id?: SortOrder + description?: SortOrder + create_date?: SortOrder + } + + export type user_achievementAvgOrderByAggregateInput = { + user_id?: SortOrder + achievement_type_id?: SortOrder + } + + export type user_achievementMaxOrderByAggregateInput = { + user_id?: SortOrder + achievement_date?: SortOrder + achievement_type_id?: SortOrder + description?: SortOrder + create_date?: SortOrder + } + + export type user_achievementMinOrderByAggregateInput = { + user_id?: SortOrder + achievement_date?: SortOrder + achievement_type_id?: SortOrder + description?: SortOrder + create_date?: SortOrder + } + + export type user_achievementSumOrderByAggregateInput = { + user_id?: SortOrder + achievement_type_id?: SortOrder + } + + export type Security_userNullableScalarRelationFilter = { + is?: security_userWhereInput | null + isNot?: security_userWhereInput | null + } + + export type Security_groupsNullableScalarRelationFilter = { + is?: security_groupsWhereInput | null + isNot?: security_groupsWhereInput | null + } + + export type Security_status_luNullableScalarRelationFilter = { + is?: security_status_luWhereInput | null + isNot?: security_status_luWhereInput | null + } + + export type user_group_xrefLogin_idGroup_idCompoundUniqueInput = { + login_id: Decimal | DecimalJsLike | number | string + group_id: Decimal | DecimalJsLike | number | string + } + + export type user_group_xrefCountOrderByAggregateInput = { + user_group_id?: SortOrder + login_id?: SortOrder + group_id?: SortOrder + create_user_id?: SortOrder + security_status_id?: SortOrder + create_date?: SortOrder + } + + export type user_group_xrefAvgOrderByAggregateInput = { + user_group_id?: SortOrder + login_id?: SortOrder + group_id?: SortOrder + create_user_id?: SortOrder + security_status_id?: SortOrder + } + + export type user_group_xrefMaxOrderByAggregateInput = { + user_group_id?: SortOrder + login_id?: SortOrder + group_id?: SortOrder + create_user_id?: SortOrder + security_status_id?: SortOrder + create_date?: SortOrder + } + + export type user_group_xrefMinOrderByAggregateInput = { + user_group_id?: SortOrder + login_id?: SortOrder + group_id?: SortOrder + create_user_id?: SortOrder + security_status_id?: SortOrder + create_date?: SortOrder + } + + export type user_group_xrefSumOrderByAggregateInput = { + user_group_id?: SortOrder + login_id?: SortOrder + group_id?: SortOrder + create_user_id?: SortOrder + security_status_id?: SortOrder + } + + export type user_otp_emailUser_idModeCompoundUniqueInput = { + user_id: Decimal | DecimalJsLike | number | string + mode: number + } + + export type user_otp_emailCountOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + otp?: SortOrder + expire_at?: SortOrder + resend?: SortOrder + fail_count?: SortOrder + } + + export type user_otp_emailAvgOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + fail_count?: SortOrder + } + + export type user_otp_emailMaxOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + otp?: SortOrder + expire_at?: SortOrder + resend?: SortOrder + fail_count?: SortOrder + } + + export type user_otp_emailMinOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + otp?: SortOrder + expire_at?: SortOrder + resend?: SortOrder + fail_count?: SortOrder + } + + export type user_otp_emailSumOrderByAggregateInput = { + id?: SortOrder + user_id?: SortOrder + mode?: SortOrder + fail_count?: SortOrder + } + + export type BoolNullableFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null + not?: NestedBoolNullableFilter<$PrismaModel> | boolean | null + } + + export type Social_login_providerScalarRelationFilter = { + is?: social_login_providerWhereInput + isNot?: social_login_providerWhereInput + } + + export type user_social_loginUser_idSocial_login_provider_idCompoundUniqueInput = { + user_id: Decimal | DecimalJsLike | number | string + social_login_provider_id: Decimal | DecimalJsLike | number | string + } + + export type user_social_loginCountOrderByAggregateInput = { + social_user_id?: SortOrder + user_id?: SortOrder + social_login_provider_id?: SortOrder + social_user_name?: SortOrder + social_email?: SortOrder + social_email_verified?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type user_social_loginAvgOrderByAggregateInput = { + user_id?: SortOrder + social_login_provider_id?: SortOrder + } + + export type user_social_loginMaxOrderByAggregateInput = { + social_user_id?: SortOrder + user_id?: SortOrder + social_login_provider_id?: SortOrder + social_user_name?: SortOrder + social_email?: SortOrder + social_email_verified?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type user_social_loginMinOrderByAggregateInput = { + social_user_id?: SortOrder + user_id?: SortOrder + social_login_provider_id?: SortOrder + social_user_name?: SortOrder + social_email?: SortOrder + social_email_verified?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type user_social_loginSumOrderByAggregateInput = { + user_id?: SortOrder + social_login_provider_id?: SortOrder + } + + export type BoolNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null + not?: NestedBoolNullableWithAggregatesFilter<$PrismaModel> | boolean | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedBoolNullableFilter<$PrismaModel> + _max?: NestedBoolNullableFilter<$PrismaModel> + } + + export type Sso_login_providerScalarRelationFilter = { + is?: sso_login_providerWhereInput + isNot?: sso_login_providerWhereInput + } + + export type user_sso_loginUser_idProvider_idCompoundUniqueInput = { + user_id: Decimal | DecimalJsLike | number | string + provider_id: Decimal | DecimalJsLike | number | string + } + + export type user_sso_loginCountOrderByAggregateInput = { + user_id?: SortOrder + sso_user_id?: SortOrder + sso_user_name?: SortOrder + provider_id?: SortOrder + email?: SortOrder + } + + export type user_sso_loginAvgOrderByAggregateInput = { + user_id?: SortOrder + provider_id?: SortOrder + } + + export type user_sso_loginMaxOrderByAggregateInput = { + user_id?: SortOrder + sso_user_id?: SortOrder + sso_user_name?: SortOrder + provider_id?: SortOrder + email?: SortOrder + } + + export type user_sso_loginMinOrderByAggregateInput = { + user_id?: SortOrder + sso_user_id?: SortOrder + sso_user_name?: SortOrder + provider_id?: SortOrder + email?: SortOrder + } + + export type user_sso_loginSumOrderByAggregateInput = { + user_id?: SortOrder + provider_id?: SortOrder + } + + export type User_status_luNullableScalarRelationFilter = { + is?: user_status_luWhereInput | null + isNot?: user_status_luWhereInput | null + } + + export type User_status_type_luScalarRelationFilter = { + is?: user_status_type_luWhereInput + isNot?: user_status_type_luWhereInput + } + + export type user_statusUser_idUser_status_type_idCompoundUniqueInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_type_id: Decimal | DecimalJsLike | number | string + } + + export type user_statusCountOrderByAggregateInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrder + } + + export type user_statusAvgOrderByAggregateInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrder + } + + export type user_statusMaxOrderByAggregateInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrder + } + + export type user_statusMinOrderByAggregateInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrder + } + + export type user_statusSumOrderByAggregateInput = { + user_id?: SortOrder + user_status_type_id?: SortOrder + user_status_id?: SortOrder + } + + export type user_status_luCountOrderByAggregateInput = { + user_status_id?: SortOrder + description?: SortOrder + } + + export type user_status_luAvgOrderByAggregateInput = { + user_status_id?: SortOrder + } + + export type user_status_luMaxOrderByAggregateInput = { + user_status_id?: SortOrder + description?: SortOrder + } + + export type user_status_luMinOrderByAggregateInput = { + user_status_id?: SortOrder + description?: SortOrder + } + + export type user_status_luSumOrderByAggregateInput = { + user_status_id?: SortOrder + } + + export type user_status_type_luCountOrderByAggregateInput = { + user_status_type_id?: SortOrder + description?: SortOrder + } + + export type user_status_type_luAvgOrderByAggregateInput = { + user_status_type_id?: SortOrder + } + + export type user_status_type_luMaxOrderByAggregateInput = { + user_status_type_id?: SortOrder + description?: SortOrder + } + + export type user_status_type_luMinOrderByAggregateInput = { + user_status_type_id?: SortOrder + description?: SortOrder + } + + export type user_status_type_luSumOrderByAggregateInput = { + user_status_type_id?: SortOrder + } + + export type EmailScalarRelationFilter = { + is?: emailWhereInput + isNot?: emailWhereInput + } + + export type user_email_xrefUser_idEmail_idCompoundUniqueInput = { + user_id: Decimal | DecimalJsLike | number | string + email_id: Decimal | DecimalJsLike | number | string + } + + export type user_email_xrefCountOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + is_primary?: SortOrder + status_id?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type user_email_xrefAvgOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + status_id?: SortOrder + } + + export type user_email_xrefMaxOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + is_primary?: SortOrder + status_id?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type user_email_xrefMinOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + is_primary?: SortOrder + status_id?: SortOrder + create_date?: SortOrder + modify_date?: SortOrder + } + + export type user_email_xrefSumOrderByAggregateInput = { + user_id?: SortOrder + email_id?: SortOrder + status_id?: SortOrder + } + + export type IntNullableFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | ListIntFieldRefInput<$PrismaModel> | null + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> | null + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntNullableFilter<$PrismaModel> | number | null + } + + export type ClientCountOrderByAggregateInput = { + id?: SortOrder + clientId?: SortOrder + name?: SortOrder + redirectUri?: SortOrder + secret?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + } + + export type ClientAvgOrderByAggregateInput = { + id?: SortOrder + createdBy?: SortOrder + modifiedBy?: SortOrder + } + + export type ClientMaxOrderByAggregateInput = { + id?: SortOrder + clientId?: SortOrder + name?: SortOrder + redirectUri?: SortOrder + secret?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + } + + export type ClientMinOrderByAggregateInput = { + id?: SortOrder + clientId?: SortOrder + name?: SortOrder + redirectUri?: SortOrder + secret?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + } + + export type ClientSumOrderByAggregateInput = { + id?: SortOrder + createdBy?: SortOrder + modifiedBy?: SortOrder + } + + export type IntNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | ListIntFieldRefInput<$PrismaModel> | null + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> | 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 RoleAssignmentListRelationFilter = { + every?: RoleAssignmentWhereInput + some?: RoleAssignmentWhereInput + none?: RoleAssignmentWhereInput + } + + export type RoleAssignmentOrderByRelationAggregateInput = { + _count?: SortOrder + } + + export type RoleCountOrderByAggregateInput = { + id?: SortOrder + name?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + } + + export type RoleAvgOrderByAggregateInput = { + id?: SortOrder + createdBy?: SortOrder + modifiedBy?: SortOrder + } + + export type RoleMaxOrderByAggregateInput = { + id?: SortOrder + name?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + } + + export type RoleMinOrderByAggregateInput = { + id?: SortOrder + name?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + } + + export type RoleSumOrderByAggregateInput = { + id?: SortOrder + createdBy?: SortOrder + modifiedBy?: SortOrder + } + + export type RoleScalarRelationFilter = { + is?: RoleWhereInput + isNot?: RoleWhereInput + } + + export type RoleAssignmentRoleIdSubjectIdSubjectTypeCompoundUniqueInput = { + roleId: number + subjectId: number + subjectType: number + } + + export type RoleAssignmentCountOrderByAggregateInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + subjectType?: SortOrder + } + + export type RoleAssignmentAvgOrderByAggregateInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrder + modifiedBy?: SortOrder + subjectType?: SortOrder + } + + export type RoleAssignmentMaxOrderByAggregateInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + subjectType?: SortOrder + } + + export type RoleAssignmentMinOrderByAggregateInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrder + createdAt?: SortOrder + modifiedBy?: SortOrder + modifiedAt?: SortOrder + subjectType?: SortOrder + } + + export type RoleAssignmentSumOrderByAggregateInput = { + id?: SortOrder + roleId?: SortOrder + subjectId?: SortOrder + createdBy?: SortOrder + modifiedBy?: SortOrder + subjectType?: SortOrder + } + + export type user_achievementCreateNestedManyWithoutAchievement_type_luInput = { + create?: XOR | user_achievementCreateWithoutAchievement_type_luInput[] | user_achievementUncheckedCreateWithoutAchievement_type_luInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutAchievement_type_luInput | user_achievementCreateOrConnectWithoutAchievement_type_luInput[] + createMany?: user_achievementCreateManyAchievement_type_luInputEnvelope + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + } + + export type user_achievementUncheckedCreateNestedManyWithoutAchievement_type_luInput = { + create?: XOR | user_achievementCreateWithoutAchievement_type_luInput[] | user_achievementUncheckedCreateWithoutAchievement_type_luInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutAchievement_type_luInput | user_achievementCreateOrConnectWithoutAchievement_type_luInput[] + createMany?: user_achievementCreateManyAchievement_type_luInputEnvelope + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + } + + export type DecimalFieldUpdateOperationsInput = { + set?: Decimal | DecimalJsLike | number | string + increment?: Decimal | DecimalJsLike | number | string + decrement?: Decimal | DecimalJsLike | number | string + multiply?: Decimal | DecimalJsLike | number | string + divide?: Decimal | DecimalJsLike | number | string + } + + export type StringFieldUpdateOperationsInput = { + set?: string + } + + export type user_achievementUpdateManyWithoutAchievement_type_luNestedInput = { + create?: XOR | user_achievementCreateWithoutAchievement_type_luInput[] | user_achievementUncheckedCreateWithoutAchievement_type_luInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutAchievement_type_luInput | user_achievementCreateOrConnectWithoutAchievement_type_luInput[] + upsert?: user_achievementUpsertWithWhereUniqueWithoutAchievement_type_luInput | user_achievementUpsertWithWhereUniqueWithoutAchievement_type_luInput[] + createMany?: user_achievementCreateManyAchievement_type_luInputEnvelope + set?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + disconnect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + delete?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + update?: user_achievementUpdateWithWhereUniqueWithoutAchievement_type_luInput | user_achievementUpdateWithWhereUniqueWithoutAchievement_type_luInput[] + updateMany?: user_achievementUpdateManyWithWhereWithoutAchievement_type_luInput | user_achievementUpdateManyWithWhereWithoutAchievement_type_luInput[] + deleteMany?: user_achievementScalarWhereInput | user_achievementScalarWhereInput[] + } + + export type user_achievementUncheckedUpdateManyWithoutAchievement_type_luNestedInput = { + create?: XOR | user_achievementCreateWithoutAchievement_type_luInput[] | user_achievementUncheckedCreateWithoutAchievement_type_luInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutAchievement_type_luInput | user_achievementCreateOrConnectWithoutAchievement_type_luInput[] + upsert?: user_achievementUpsertWithWhereUniqueWithoutAchievement_type_luInput | user_achievementUpsertWithWhereUniqueWithoutAchievement_type_luInput[] + createMany?: user_achievementCreateManyAchievement_type_luInputEnvelope + set?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + disconnect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + delete?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + update?: user_achievementUpdateWithWhereUniqueWithoutAchievement_type_luInput | user_achievementUpdateWithWhereUniqueWithoutAchievement_type_luInput[] + updateMany?: user_achievementUpdateManyWithWhereWithoutAchievement_type_luInput | user_achievementUpdateManyWithWhereWithoutAchievement_type_luInput[] + deleteMany?: user_achievementScalarWhereInput | user_achievementScalarWhereInput[] + } + + export type NullableDateTimeFieldUpdateOperationsInput = { + set?: Date | string | null + } + + export type NullableDecimalFieldUpdateOperationsInput = { + set?: Decimal | DecimalJsLike | number | string | null + increment?: Decimal | DecimalJsLike | number | string + decrement?: Decimal | DecimalJsLike | number | string + multiply?: Decimal | DecimalJsLike | number | string + divide?: Decimal | DecimalJsLike | number | string + } + + export type NullableStringFieldUpdateOperationsInput = { + set?: string | null + } + + export type userCreateNestedOneWithoutDice_connectionInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutDice_connectionInput + connect?: userWhereUniqueInput + } + + export type BoolFieldUpdateOperationsInput = { + set?: boolean + } + + export type DateTimeFieldUpdateOperationsInput = { + set?: Date | string + } + + export type userUpdateOneRequiredWithoutDice_connectionNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutDice_connectionInput + upsert?: userUpsertWithoutDice_connectionInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutDice_connectionInput> + } + + export type IntFieldUpdateOperationsInput = { + set?: number + increment?: number + decrement?: number + multiply?: number + divide?: number + } + + export type email_status_luCreateNestedOneWithoutEmailInput = { + create?: XOR + connectOrCreate?: email_status_luCreateOrConnectWithoutEmailInput + connect?: email_status_luWhereUniqueInput + } + + export type email_type_luCreateNestedOneWithoutEmailInput = { + create?: XOR + connectOrCreate?: email_type_luCreateOrConnectWithoutEmailInput + connect?: email_type_luWhereUniqueInput + } + + export type user_email_xrefCreateNestedManyWithoutEmailInput = { + create?: XOR | user_email_xrefCreateWithoutEmailInput[] | user_email_xrefUncheckedCreateWithoutEmailInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmailInput | user_email_xrefCreateOrConnectWithoutEmailInput[] + createMany?: user_email_xrefCreateManyEmailInputEnvelope + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + } + + export type userCreateNestedOneWithoutEmailsInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutEmailsInput + connect?: userWhereUniqueInput + } + + export type user_email_xrefUncheckedCreateNestedManyWithoutEmailInput = { + create?: XOR | user_email_xrefCreateWithoutEmailInput[] | user_email_xrefUncheckedCreateWithoutEmailInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmailInput | user_email_xrefCreateOrConnectWithoutEmailInput[] + createMany?: user_email_xrefCreateManyEmailInputEnvelope + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + } + + export type email_status_luUpdateOneWithoutEmailNestedInput = { + create?: XOR + connectOrCreate?: email_status_luCreateOrConnectWithoutEmailInput + upsert?: email_status_luUpsertWithoutEmailInput + disconnect?: email_status_luWhereInput | boolean + delete?: email_status_luWhereInput | boolean + connect?: email_status_luWhereUniqueInput + update?: XOR, email_status_luUncheckedUpdateWithoutEmailInput> + } + + export type email_type_luUpdateOneWithoutEmailNestedInput = { + create?: XOR + connectOrCreate?: email_type_luCreateOrConnectWithoutEmailInput + upsert?: email_type_luUpsertWithoutEmailInput + disconnect?: email_type_luWhereInput | boolean + delete?: email_type_luWhereInput | boolean + connect?: email_type_luWhereUniqueInput + update?: XOR, email_type_luUncheckedUpdateWithoutEmailInput> + } + + export type user_email_xrefUpdateManyWithoutEmailNestedInput = { + create?: XOR | user_email_xrefCreateWithoutEmailInput[] | user_email_xrefUncheckedCreateWithoutEmailInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmailInput | user_email_xrefCreateOrConnectWithoutEmailInput[] + upsert?: user_email_xrefUpsertWithWhereUniqueWithoutEmailInput | user_email_xrefUpsertWithWhereUniqueWithoutEmailInput[] + createMany?: user_email_xrefCreateManyEmailInputEnvelope + set?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + disconnect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + delete?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + update?: user_email_xrefUpdateWithWhereUniqueWithoutEmailInput | user_email_xrefUpdateWithWhereUniqueWithoutEmailInput[] + updateMany?: user_email_xrefUpdateManyWithWhereWithoutEmailInput | user_email_xrefUpdateManyWithWhereWithoutEmailInput[] + deleteMany?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + } + + export type userUpdateOneWithoutEmailsNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutEmailsInput + upsert?: userUpsertWithoutEmailsInput + disconnect?: userWhereInput | boolean + delete?: userWhereInput | boolean + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutEmailsInput> + } + + export type user_email_xrefUncheckedUpdateManyWithoutEmailNestedInput = { + create?: XOR | user_email_xrefCreateWithoutEmailInput[] | user_email_xrefUncheckedCreateWithoutEmailInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmailInput | user_email_xrefCreateOrConnectWithoutEmailInput[] + upsert?: user_email_xrefUpsertWithWhereUniqueWithoutEmailInput | user_email_xrefUpsertWithWhereUniqueWithoutEmailInput[] + createMany?: user_email_xrefCreateManyEmailInputEnvelope + set?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + disconnect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + delete?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + update?: user_email_xrefUpdateWithWhereUniqueWithoutEmailInput | user_email_xrefUpdateWithWhereUniqueWithoutEmailInput[] + updateMany?: user_email_xrefUpdateManyWithWhereWithoutEmailInput | user_email_xrefUpdateManyWithWhereWithoutEmailInput[] + deleteMany?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + } + + export type emailCreateNestedManyWithoutEmail_status_luInput = { + create?: XOR | emailCreateWithoutEmail_status_luInput[] | emailUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_status_luInput | emailCreateOrConnectWithoutEmail_status_luInput[] + createMany?: emailCreateManyEmail_status_luInputEnvelope + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + } + + export type user_email_xrefCreateNestedManyWithoutEmail_status_luInput = { + create?: XOR | user_email_xrefCreateWithoutEmail_status_luInput[] | user_email_xrefUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmail_status_luInput | user_email_xrefCreateOrConnectWithoutEmail_status_luInput[] + createMany?: user_email_xrefCreateManyEmail_status_luInputEnvelope + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + } + + export type emailUncheckedCreateNestedManyWithoutEmail_status_luInput = { + create?: XOR | emailCreateWithoutEmail_status_luInput[] | emailUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_status_luInput | emailCreateOrConnectWithoutEmail_status_luInput[] + createMany?: emailCreateManyEmail_status_luInputEnvelope + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + } + + export type user_email_xrefUncheckedCreateNestedManyWithoutEmail_status_luInput = { + create?: XOR | user_email_xrefCreateWithoutEmail_status_luInput[] | user_email_xrefUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmail_status_luInput | user_email_xrefCreateOrConnectWithoutEmail_status_luInput[] + createMany?: user_email_xrefCreateManyEmail_status_luInputEnvelope + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + } + + export type emailUpdateManyWithoutEmail_status_luNestedInput = { + create?: XOR | emailCreateWithoutEmail_status_luInput[] | emailUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_status_luInput | emailCreateOrConnectWithoutEmail_status_luInput[] + upsert?: emailUpsertWithWhereUniqueWithoutEmail_status_luInput | emailUpsertWithWhereUniqueWithoutEmail_status_luInput[] + createMany?: emailCreateManyEmail_status_luInputEnvelope + set?: emailWhereUniqueInput | emailWhereUniqueInput[] + disconnect?: emailWhereUniqueInput | emailWhereUniqueInput[] + delete?: emailWhereUniqueInput | emailWhereUniqueInput[] + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + update?: emailUpdateWithWhereUniqueWithoutEmail_status_luInput | emailUpdateWithWhereUniqueWithoutEmail_status_luInput[] + updateMany?: emailUpdateManyWithWhereWithoutEmail_status_luInput | emailUpdateManyWithWhereWithoutEmail_status_luInput[] + deleteMany?: emailScalarWhereInput | emailScalarWhereInput[] + } + + export type user_email_xrefUpdateManyWithoutEmail_status_luNestedInput = { + create?: XOR | user_email_xrefCreateWithoutEmail_status_luInput[] | user_email_xrefUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmail_status_luInput | user_email_xrefCreateOrConnectWithoutEmail_status_luInput[] + upsert?: user_email_xrefUpsertWithWhereUniqueWithoutEmail_status_luInput | user_email_xrefUpsertWithWhereUniqueWithoutEmail_status_luInput[] + createMany?: user_email_xrefCreateManyEmail_status_luInputEnvelope + set?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + disconnect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + delete?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + update?: user_email_xrefUpdateWithWhereUniqueWithoutEmail_status_luInput | user_email_xrefUpdateWithWhereUniqueWithoutEmail_status_luInput[] + updateMany?: user_email_xrefUpdateManyWithWhereWithoutEmail_status_luInput | user_email_xrefUpdateManyWithWhereWithoutEmail_status_luInput[] + deleteMany?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + } + + export type emailUncheckedUpdateManyWithoutEmail_status_luNestedInput = { + create?: XOR | emailCreateWithoutEmail_status_luInput[] | emailUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_status_luInput | emailCreateOrConnectWithoutEmail_status_luInput[] + upsert?: emailUpsertWithWhereUniqueWithoutEmail_status_luInput | emailUpsertWithWhereUniqueWithoutEmail_status_luInput[] + createMany?: emailCreateManyEmail_status_luInputEnvelope + set?: emailWhereUniqueInput | emailWhereUniqueInput[] + disconnect?: emailWhereUniqueInput | emailWhereUniqueInput[] + delete?: emailWhereUniqueInput | emailWhereUniqueInput[] + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + update?: emailUpdateWithWhereUniqueWithoutEmail_status_luInput | emailUpdateWithWhereUniqueWithoutEmail_status_luInput[] + updateMany?: emailUpdateManyWithWhereWithoutEmail_status_luInput | emailUpdateManyWithWhereWithoutEmail_status_luInput[] + deleteMany?: emailScalarWhereInput | emailScalarWhereInput[] + } + + export type user_email_xrefUncheckedUpdateManyWithoutEmail_status_luNestedInput = { + create?: XOR | user_email_xrefCreateWithoutEmail_status_luInput[] | user_email_xrefUncheckedCreateWithoutEmail_status_luInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutEmail_status_luInput | user_email_xrefCreateOrConnectWithoutEmail_status_luInput[] + upsert?: user_email_xrefUpsertWithWhereUniqueWithoutEmail_status_luInput | user_email_xrefUpsertWithWhereUniqueWithoutEmail_status_luInput[] + createMany?: user_email_xrefCreateManyEmail_status_luInputEnvelope + set?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + disconnect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + delete?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + update?: user_email_xrefUpdateWithWhereUniqueWithoutEmail_status_luInput | user_email_xrefUpdateWithWhereUniqueWithoutEmail_status_luInput[] + updateMany?: user_email_xrefUpdateManyWithWhereWithoutEmail_status_luInput | user_email_xrefUpdateManyWithWhereWithoutEmail_status_luInput[] + deleteMany?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + } + + export type emailCreateNestedManyWithoutEmail_type_luInput = { + create?: XOR | emailCreateWithoutEmail_type_luInput[] | emailUncheckedCreateWithoutEmail_type_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_type_luInput | emailCreateOrConnectWithoutEmail_type_luInput[] + createMany?: emailCreateManyEmail_type_luInputEnvelope + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + } + + export type emailUncheckedCreateNestedManyWithoutEmail_type_luInput = { + create?: XOR | emailCreateWithoutEmail_type_luInput[] | emailUncheckedCreateWithoutEmail_type_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_type_luInput | emailCreateOrConnectWithoutEmail_type_luInput[] + createMany?: emailCreateManyEmail_type_luInputEnvelope + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + } + + export type emailUpdateManyWithoutEmail_type_luNestedInput = { + create?: XOR | emailCreateWithoutEmail_type_luInput[] | emailUncheckedCreateWithoutEmail_type_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_type_luInput | emailCreateOrConnectWithoutEmail_type_luInput[] + upsert?: emailUpsertWithWhereUniqueWithoutEmail_type_luInput | emailUpsertWithWhereUniqueWithoutEmail_type_luInput[] + createMany?: emailCreateManyEmail_type_luInputEnvelope + set?: emailWhereUniqueInput | emailWhereUniqueInput[] + disconnect?: emailWhereUniqueInput | emailWhereUniqueInput[] + delete?: emailWhereUniqueInput | emailWhereUniqueInput[] + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + update?: emailUpdateWithWhereUniqueWithoutEmail_type_luInput | emailUpdateWithWhereUniqueWithoutEmail_type_luInput[] + updateMany?: emailUpdateManyWithWhereWithoutEmail_type_luInput | emailUpdateManyWithWhereWithoutEmail_type_luInput[] + deleteMany?: emailScalarWhereInput | emailScalarWhereInput[] + } + + export type emailUncheckedUpdateManyWithoutEmail_type_luNestedInput = { + create?: XOR | emailCreateWithoutEmail_type_luInput[] | emailUncheckedCreateWithoutEmail_type_luInput[] + connectOrCreate?: emailCreateOrConnectWithoutEmail_type_luInput | emailCreateOrConnectWithoutEmail_type_luInput[] + upsert?: emailUpsertWithWhereUniqueWithoutEmail_type_luInput | emailUpsertWithWhereUniqueWithoutEmail_type_luInput[] + createMany?: emailCreateManyEmail_type_luInputEnvelope + set?: emailWhereUniqueInput | emailWhereUniqueInput[] + disconnect?: emailWhereUniqueInput | emailWhereUniqueInput[] + delete?: emailWhereUniqueInput | emailWhereUniqueInput[] + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + update?: emailUpdateWithWhereUniqueWithoutEmail_type_luInput | emailUpdateWithWhereUniqueWithoutEmail_type_luInput[] + updateMany?: emailUpdateManyWithWhereWithoutEmail_type_luInput | emailUpdateManyWithWhereWithoutEmail_type_luInput[] + deleteMany?: emailScalarWhereInput | emailScalarWhereInput[] + } + + export type user_group_xrefCreateNestedManyWithoutSecurity_groupsInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_groupsInput[] | user_group_xrefUncheckedCreateWithoutSecurity_groupsInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_groupsInput | user_group_xrefCreateOrConnectWithoutSecurity_groupsInput[] + createMany?: user_group_xrefCreateManySecurity_groupsInputEnvelope + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + } + + export type user_group_xrefUncheckedCreateNestedManyWithoutSecurity_groupsInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_groupsInput[] | user_group_xrefUncheckedCreateWithoutSecurity_groupsInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_groupsInput | user_group_xrefCreateOrConnectWithoutSecurity_groupsInput[] + createMany?: user_group_xrefCreateManySecurity_groupsInputEnvelope + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + } + + export type user_group_xrefUpdateManyWithoutSecurity_groupsNestedInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_groupsInput[] | user_group_xrefUncheckedCreateWithoutSecurity_groupsInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_groupsInput | user_group_xrefCreateOrConnectWithoutSecurity_groupsInput[] + upsert?: user_group_xrefUpsertWithWhereUniqueWithoutSecurity_groupsInput | user_group_xrefUpsertWithWhereUniqueWithoutSecurity_groupsInput[] + createMany?: user_group_xrefCreateManySecurity_groupsInputEnvelope + set?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + disconnect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + delete?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + update?: user_group_xrefUpdateWithWhereUniqueWithoutSecurity_groupsInput | user_group_xrefUpdateWithWhereUniqueWithoutSecurity_groupsInput[] + updateMany?: user_group_xrefUpdateManyWithWhereWithoutSecurity_groupsInput | user_group_xrefUpdateManyWithWhereWithoutSecurity_groupsInput[] + deleteMany?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + } + + export type user_group_xrefUncheckedUpdateManyWithoutSecurity_groupsNestedInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_groupsInput[] | user_group_xrefUncheckedCreateWithoutSecurity_groupsInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_groupsInput | user_group_xrefCreateOrConnectWithoutSecurity_groupsInput[] + upsert?: user_group_xrefUpsertWithWhereUniqueWithoutSecurity_groupsInput | user_group_xrefUpsertWithWhereUniqueWithoutSecurity_groupsInput[] + createMany?: user_group_xrefCreateManySecurity_groupsInputEnvelope + set?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + disconnect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + delete?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + update?: user_group_xrefUpdateWithWhereUniqueWithoutSecurity_groupsInput | user_group_xrefUpdateWithWhereUniqueWithoutSecurity_groupsInput[] + updateMany?: user_group_xrefUpdateManyWithWhereWithoutSecurity_groupsInput | user_group_xrefUpdateManyWithWhereWithoutSecurity_groupsInput[] + deleteMany?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + } + + export type user_group_xrefCreateNestedManyWithoutSecurity_status_luInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_status_luInput[] | user_group_xrefUncheckedCreateWithoutSecurity_status_luInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_status_luInput | user_group_xrefCreateOrConnectWithoutSecurity_status_luInput[] + createMany?: user_group_xrefCreateManySecurity_status_luInputEnvelope + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + } + + export type user_group_xrefUncheckedCreateNestedManyWithoutSecurity_status_luInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_status_luInput[] | user_group_xrefUncheckedCreateWithoutSecurity_status_luInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_status_luInput | user_group_xrefCreateOrConnectWithoutSecurity_status_luInput[] + createMany?: user_group_xrefCreateManySecurity_status_luInputEnvelope + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + } + + export type user_group_xrefUpdateManyWithoutSecurity_status_luNestedInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_status_luInput[] | user_group_xrefUncheckedCreateWithoutSecurity_status_luInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_status_luInput | user_group_xrefCreateOrConnectWithoutSecurity_status_luInput[] + upsert?: user_group_xrefUpsertWithWhereUniqueWithoutSecurity_status_luInput | user_group_xrefUpsertWithWhereUniqueWithoutSecurity_status_luInput[] + createMany?: user_group_xrefCreateManySecurity_status_luInputEnvelope + set?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + disconnect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + delete?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + update?: user_group_xrefUpdateWithWhereUniqueWithoutSecurity_status_luInput | user_group_xrefUpdateWithWhereUniqueWithoutSecurity_status_luInput[] + updateMany?: user_group_xrefUpdateManyWithWhereWithoutSecurity_status_luInput | user_group_xrefUpdateManyWithWhereWithoutSecurity_status_luInput[] + deleteMany?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + } + + export type user_group_xrefUncheckedUpdateManyWithoutSecurity_status_luNestedInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_status_luInput[] | user_group_xrefUncheckedCreateWithoutSecurity_status_luInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_status_luInput | user_group_xrefCreateOrConnectWithoutSecurity_status_luInput[] + upsert?: user_group_xrefUpsertWithWhereUniqueWithoutSecurity_status_luInput | user_group_xrefUpsertWithWhereUniqueWithoutSecurity_status_luInput[] + createMany?: user_group_xrefCreateManySecurity_status_luInputEnvelope + set?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + disconnect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + delete?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + update?: user_group_xrefUpdateWithWhereUniqueWithoutSecurity_status_luInput | user_group_xrefUpdateWithWhereUniqueWithoutSecurity_status_luInput[] + updateMany?: user_group_xrefUpdateManyWithWhereWithoutSecurity_status_luInput | user_group_xrefUpdateManyWithWhereWithoutSecurity_status_luInput[] + deleteMany?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + } + + export type user_group_xrefCreateNestedManyWithoutSecurity_userInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_userInput[] | user_group_xrefUncheckedCreateWithoutSecurity_userInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_userInput | user_group_xrefCreateOrConnectWithoutSecurity_userInput[] + createMany?: user_group_xrefCreateManySecurity_userInputEnvelope + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + } + + export type user_group_xrefUncheckedCreateNestedManyWithoutSecurity_userInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_userInput[] | user_group_xrefUncheckedCreateWithoutSecurity_userInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_userInput | user_group_xrefCreateOrConnectWithoutSecurity_userInput[] + createMany?: user_group_xrefCreateManySecurity_userInputEnvelope + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + } + + export type user_group_xrefUpdateManyWithoutSecurity_userNestedInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_userInput[] | user_group_xrefUncheckedCreateWithoutSecurity_userInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_userInput | user_group_xrefCreateOrConnectWithoutSecurity_userInput[] + upsert?: user_group_xrefUpsertWithWhereUniqueWithoutSecurity_userInput | user_group_xrefUpsertWithWhereUniqueWithoutSecurity_userInput[] + createMany?: user_group_xrefCreateManySecurity_userInputEnvelope + set?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + disconnect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + delete?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + update?: user_group_xrefUpdateWithWhereUniqueWithoutSecurity_userInput | user_group_xrefUpdateWithWhereUniqueWithoutSecurity_userInput[] + updateMany?: user_group_xrefUpdateManyWithWhereWithoutSecurity_userInput | user_group_xrefUpdateManyWithWhereWithoutSecurity_userInput[] + deleteMany?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + } + + export type user_group_xrefUncheckedUpdateManyWithoutSecurity_userNestedInput = { + create?: XOR | user_group_xrefCreateWithoutSecurity_userInput[] | user_group_xrefUncheckedCreateWithoutSecurity_userInput[] + connectOrCreate?: user_group_xrefCreateOrConnectWithoutSecurity_userInput | user_group_xrefCreateOrConnectWithoutSecurity_userInput[] + upsert?: user_group_xrefUpsertWithWhereUniqueWithoutSecurity_userInput | user_group_xrefUpsertWithWhereUniqueWithoutSecurity_userInput[] + createMany?: user_group_xrefCreateManySecurity_userInputEnvelope + set?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + disconnect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + delete?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + connect?: user_group_xrefWhereUniqueInput | user_group_xrefWhereUniqueInput[] + update?: user_group_xrefUpdateWithWhereUniqueWithoutSecurity_userInput | user_group_xrefUpdateWithWhereUniqueWithoutSecurity_userInput[] + updateMany?: user_group_xrefUpdateManyWithWhereWithoutSecurity_userInput | user_group_xrefUpdateManyWithWhereWithoutSecurity_userInput[] + deleteMany?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + } + + export type user_social_loginCreateNestedManyWithoutSocial_login_providerInput = { + create?: XOR | user_social_loginCreateWithoutSocial_login_providerInput[] | user_social_loginUncheckedCreateWithoutSocial_login_providerInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutSocial_login_providerInput | user_social_loginCreateOrConnectWithoutSocial_login_providerInput[] + createMany?: user_social_loginCreateManySocial_login_providerInputEnvelope + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + } + + export type user_social_loginUncheckedCreateNestedManyWithoutSocial_login_providerInput = { + create?: XOR | user_social_loginCreateWithoutSocial_login_providerInput[] | user_social_loginUncheckedCreateWithoutSocial_login_providerInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutSocial_login_providerInput | user_social_loginCreateOrConnectWithoutSocial_login_providerInput[] + createMany?: user_social_loginCreateManySocial_login_providerInputEnvelope + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + } + + export type user_social_loginUpdateManyWithoutSocial_login_providerNestedInput = { + create?: XOR | user_social_loginCreateWithoutSocial_login_providerInput[] | user_social_loginUncheckedCreateWithoutSocial_login_providerInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutSocial_login_providerInput | user_social_loginCreateOrConnectWithoutSocial_login_providerInput[] + upsert?: user_social_loginUpsertWithWhereUniqueWithoutSocial_login_providerInput | user_social_loginUpsertWithWhereUniqueWithoutSocial_login_providerInput[] + createMany?: user_social_loginCreateManySocial_login_providerInputEnvelope + set?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + disconnect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + delete?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + update?: user_social_loginUpdateWithWhereUniqueWithoutSocial_login_providerInput | user_social_loginUpdateWithWhereUniqueWithoutSocial_login_providerInput[] + updateMany?: user_social_loginUpdateManyWithWhereWithoutSocial_login_providerInput | user_social_loginUpdateManyWithWhereWithoutSocial_login_providerInput[] + deleteMany?: user_social_loginScalarWhereInput | user_social_loginScalarWhereInput[] + } + + export type user_social_loginUncheckedUpdateManyWithoutSocial_login_providerNestedInput = { + create?: XOR | user_social_loginCreateWithoutSocial_login_providerInput[] | user_social_loginUncheckedCreateWithoutSocial_login_providerInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutSocial_login_providerInput | user_social_loginCreateOrConnectWithoutSocial_login_providerInput[] + upsert?: user_social_loginUpsertWithWhereUniqueWithoutSocial_login_providerInput | user_social_loginUpsertWithWhereUniqueWithoutSocial_login_providerInput[] + createMany?: user_social_loginCreateManySocial_login_providerInputEnvelope + set?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + disconnect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + delete?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + update?: user_social_loginUpdateWithWhereUniqueWithoutSocial_login_providerInput | user_social_loginUpdateWithWhereUniqueWithoutSocial_login_providerInput[] + updateMany?: user_social_loginUpdateManyWithWhereWithoutSocial_login_providerInput | user_social_loginUpdateManyWithWhereWithoutSocial_login_providerInput[] + deleteMany?: user_social_loginScalarWhereInput | user_social_loginScalarWhereInput[] + } + + export type user_sso_loginCreateNestedManyWithoutSso_login_providerInput = { + create?: XOR | user_sso_loginCreateWithoutSso_login_providerInput[] | user_sso_loginUncheckedCreateWithoutSso_login_providerInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutSso_login_providerInput | user_sso_loginCreateOrConnectWithoutSso_login_providerInput[] + createMany?: user_sso_loginCreateManySso_login_providerInputEnvelope + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + } + + export type user_sso_loginUncheckedCreateNestedManyWithoutSso_login_providerInput = { + create?: XOR | user_sso_loginCreateWithoutSso_login_providerInput[] | user_sso_loginUncheckedCreateWithoutSso_login_providerInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutSso_login_providerInput | user_sso_loginCreateOrConnectWithoutSso_login_providerInput[] + createMany?: user_sso_loginCreateManySso_login_providerInputEnvelope + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + } + + export type user_sso_loginUpdateManyWithoutSso_login_providerNestedInput = { + create?: XOR | user_sso_loginCreateWithoutSso_login_providerInput[] | user_sso_loginUncheckedCreateWithoutSso_login_providerInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutSso_login_providerInput | user_sso_loginCreateOrConnectWithoutSso_login_providerInput[] + upsert?: user_sso_loginUpsertWithWhereUniqueWithoutSso_login_providerInput | user_sso_loginUpsertWithWhereUniqueWithoutSso_login_providerInput[] + createMany?: user_sso_loginCreateManySso_login_providerInputEnvelope + set?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + disconnect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + delete?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + update?: user_sso_loginUpdateWithWhereUniqueWithoutSso_login_providerInput | user_sso_loginUpdateWithWhereUniqueWithoutSso_login_providerInput[] + updateMany?: user_sso_loginUpdateManyWithWhereWithoutSso_login_providerInput | user_sso_loginUpdateManyWithWhereWithoutSso_login_providerInput[] + deleteMany?: user_sso_loginScalarWhereInput | user_sso_loginScalarWhereInput[] + } + + export type user_sso_loginUncheckedUpdateManyWithoutSso_login_providerNestedInput = { + create?: XOR | user_sso_loginCreateWithoutSso_login_providerInput[] | user_sso_loginUncheckedCreateWithoutSso_login_providerInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutSso_login_providerInput | user_sso_loginCreateOrConnectWithoutSso_login_providerInput[] + upsert?: user_sso_loginUpsertWithWhereUniqueWithoutSso_login_providerInput | user_sso_loginUpsertWithWhereUniqueWithoutSso_login_providerInput[] + createMany?: user_sso_loginCreateManySso_login_providerInputEnvelope + set?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + disconnect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + delete?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + update?: user_sso_loginUpdateWithWhereUniqueWithoutSso_login_providerInput | user_sso_loginUpdateWithWhereUniqueWithoutSso_login_providerInput[] + updateMany?: user_sso_loginUpdateManyWithWhereWithoutSso_login_providerInput | user_sso_loginUpdateManyWithWhereWithoutSso_login_providerInput[] + deleteMany?: user_sso_loginScalarWhereInput | user_sso_loginScalarWhereInput[] + } + + export type dice_connectionCreateNestedOneWithoutUserInput = { + create?: XOR + connectOrCreate?: dice_connectionCreateOrConnectWithoutUserInput + connect?: dice_connectionWhereUniqueInput + } + + export type user_2faCreateNestedOneWithoutUserInput = { + create?: XOR + connectOrCreate?: user_2faCreateOrConnectWithoutUserInput + connect?: user_2faWhereUniqueInput + } + + export type user_achievementCreateNestedManyWithoutUserInput = { + create?: XOR | user_achievementCreateWithoutUserInput[] | user_achievementUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutUserInput | user_achievementCreateOrConnectWithoutUserInput[] + createMany?: user_achievementCreateManyUserInputEnvelope + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + } + + export type user_otp_emailCreateNestedManyWithoutUserInput = { + create?: XOR | user_otp_emailCreateWithoutUserInput[] | user_otp_emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_otp_emailCreateOrConnectWithoutUserInput | user_otp_emailCreateOrConnectWithoutUserInput[] + createMany?: user_otp_emailCreateManyUserInputEnvelope + connect?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + } + + export type user_social_loginCreateNestedManyWithoutUserInput = { + create?: XOR | user_social_loginCreateWithoutUserInput[] | user_social_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutUserInput | user_social_loginCreateOrConnectWithoutUserInput[] + createMany?: user_social_loginCreateManyUserInputEnvelope + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + } + + export type user_sso_loginCreateNestedManyWithoutUserInput = { + create?: XOR | user_sso_loginCreateWithoutUserInput[] | user_sso_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutUserInput | user_sso_loginCreateOrConnectWithoutUserInput[] + createMany?: user_sso_loginCreateManyUserInputEnvelope + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + } + + export type user_statusCreateNestedManyWithoutUserInput = { + create?: XOR | user_statusCreateWithoutUserInput[] | user_statusUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUserInput | user_statusCreateOrConnectWithoutUserInput[] + createMany?: user_statusCreateManyUserInputEnvelope + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + } + + export type user_email_xrefCreateNestedManyWithoutUserInput = { + create?: XOR | user_email_xrefCreateWithoutUserInput[] | user_email_xrefUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutUserInput | user_email_xrefCreateOrConnectWithoutUserInput[] + createMany?: user_email_xrefCreateManyUserInputEnvelope + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + } + + export type emailCreateNestedManyWithoutUserInput = { + create?: XOR | emailCreateWithoutUserInput[] | emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: emailCreateOrConnectWithoutUserInput | emailCreateOrConnectWithoutUserInput[] + createMany?: emailCreateManyUserInputEnvelope + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + } + + export type dice_connectionUncheckedCreateNestedOneWithoutUserInput = { + create?: XOR + connectOrCreate?: dice_connectionCreateOrConnectWithoutUserInput + connect?: dice_connectionWhereUniqueInput + } + + export type user_2faUncheckedCreateNestedOneWithoutUserInput = { + create?: XOR + connectOrCreate?: user_2faCreateOrConnectWithoutUserInput + connect?: user_2faWhereUniqueInput + } + + export type user_achievementUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | user_achievementCreateWithoutUserInput[] | user_achievementUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutUserInput | user_achievementCreateOrConnectWithoutUserInput[] + createMany?: user_achievementCreateManyUserInputEnvelope + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + } + + export type user_otp_emailUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | user_otp_emailCreateWithoutUserInput[] | user_otp_emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_otp_emailCreateOrConnectWithoutUserInput | user_otp_emailCreateOrConnectWithoutUserInput[] + createMany?: user_otp_emailCreateManyUserInputEnvelope + connect?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + } + + export type user_social_loginUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | user_social_loginCreateWithoutUserInput[] | user_social_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutUserInput | user_social_loginCreateOrConnectWithoutUserInput[] + createMany?: user_social_loginCreateManyUserInputEnvelope + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + } + + export type user_sso_loginUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | user_sso_loginCreateWithoutUserInput[] | user_sso_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutUserInput | user_sso_loginCreateOrConnectWithoutUserInput[] + createMany?: user_sso_loginCreateManyUserInputEnvelope + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + } + + export type user_statusUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | user_statusCreateWithoutUserInput[] | user_statusUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUserInput | user_statusCreateOrConnectWithoutUserInput[] + createMany?: user_statusCreateManyUserInputEnvelope + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + } + + export type user_email_xrefUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | user_email_xrefCreateWithoutUserInput[] | user_email_xrefUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutUserInput | user_email_xrefCreateOrConnectWithoutUserInput[] + createMany?: user_email_xrefCreateManyUserInputEnvelope + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + } + + export type emailUncheckedCreateNestedManyWithoutUserInput = { + create?: XOR | emailCreateWithoutUserInput[] | emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: emailCreateOrConnectWithoutUserInput | emailCreateOrConnectWithoutUserInput[] + createMany?: emailCreateManyUserInputEnvelope + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + } + + export type dice_connectionUpdateOneWithoutUserNestedInput = { + create?: XOR + connectOrCreate?: dice_connectionCreateOrConnectWithoutUserInput + upsert?: dice_connectionUpsertWithoutUserInput + disconnect?: dice_connectionWhereInput | boolean + delete?: dice_connectionWhereInput | boolean + connect?: dice_connectionWhereUniqueInput + update?: XOR, dice_connectionUncheckedUpdateWithoutUserInput> + } + + export type user_2faUpdateOneWithoutUserNestedInput = { + create?: XOR + connectOrCreate?: user_2faCreateOrConnectWithoutUserInput + upsert?: user_2faUpsertWithoutUserInput + disconnect?: user_2faWhereInput | boolean + delete?: user_2faWhereInput | boolean + connect?: user_2faWhereUniqueInput + update?: XOR, user_2faUncheckedUpdateWithoutUserInput> + } + + export type user_achievementUpdateManyWithoutUserNestedInput = { + create?: XOR | user_achievementCreateWithoutUserInput[] | user_achievementUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutUserInput | user_achievementCreateOrConnectWithoutUserInput[] + upsert?: user_achievementUpsertWithWhereUniqueWithoutUserInput | user_achievementUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_achievementCreateManyUserInputEnvelope + set?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + disconnect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + delete?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + update?: user_achievementUpdateWithWhereUniqueWithoutUserInput | user_achievementUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_achievementUpdateManyWithWhereWithoutUserInput | user_achievementUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_achievementScalarWhereInput | user_achievementScalarWhereInput[] + } + + export type user_otp_emailUpdateManyWithoutUserNestedInput = { + create?: XOR | user_otp_emailCreateWithoutUserInput[] | user_otp_emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_otp_emailCreateOrConnectWithoutUserInput | user_otp_emailCreateOrConnectWithoutUserInput[] + upsert?: user_otp_emailUpsertWithWhereUniqueWithoutUserInput | user_otp_emailUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_otp_emailCreateManyUserInputEnvelope + set?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + disconnect?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + delete?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + connect?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + update?: user_otp_emailUpdateWithWhereUniqueWithoutUserInput | user_otp_emailUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_otp_emailUpdateManyWithWhereWithoutUserInput | user_otp_emailUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_otp_emailScalarWhereInput | user_otp_emailScalarWhereInput[] + } + + export type user_social_loginUpdateManyWithoutUserNestedInput = { + create?: XOR | user_social_loginCreateWithoutUserInput[] | user_social_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutUserInput | user_social_loginCreateOrConnectWithoutUserInput[] + upsert?: user_social_loginUpsertWithWhereUniqueWithoutUserInput | user_social_loginUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_social_loginCreateManyUserInputEnvelope + set?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + disconnect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + delete?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + update?: user_social_loginUpdateWithWhereUniqueWithoutUserInput | user_social_loginUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_social_loginUpdateManyWithWhereWithoutUserInput | user_social_loginUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_social_loginScalarWhereInput | user_social_loginScalarWhereInput[] + } + + export type user_sso_loginUpdateManyWithoutUserNestedInput = { + create?: XOR | user_sso_loginCreateWithoutUserInput[] | user_sso_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutUserInput | user_sso_loginCreateOrConnectWithoutUserInput[] + upsert?: user_sso_loginUpsertWithWhereUniqueWithoutUserInput | user_sso_loginUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_sso_loginCreateManyUserInputEnvelope + set?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + disconnect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + delete?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + update?: user_sso_loginUpdateWithWhereUniqueWithoutUserInput | user_sso_loginUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_sso_loginUpdateManyWithWhereWithoutUserInput | user_sso_loginUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_sso_loginScalarWhereInput | user_sso_loginScalarWhereInput[] + } + + export type user_statusUpdateManyWithoutUserNestedInput = { + create?: XOR | user_statusCreateWithoutUserInput[] | user_statusUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUserInput | user_statusCreateOrConnectWithoutUserInput[] + upsert?: user_statusUpsertWithWhereUniqueWithoutUserInput | user_statusUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_statusCreateManyUserInputEnvelope + set?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + disconnect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + delete?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + update?: user_statusUpdateWithWhereUniqueWithoutUserInput | user_statusUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_statusUpdateManyWithWhereWithoutUserInput | user_statusUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + } + + export type user_email_xrefUpdateManyWithoutUserNestedInput = { + create?: XOR | user_email_xrefCreateWithoutUserInput[] | user_email_xrefUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutUserInput | user_email_xrefCreateOrConnectWithoutUserInput[] + upsert?: user_email_xrefUpsertWithWhereUniqueWithoutUserInput | user_email_xrefUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_email_xrefCreateManyUserInputEnvelope + set?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + disconnect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + delete?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + update?: user_email_xrefUpdateWithWhereUniqueWithoutUserInput | user_email_xrefUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_email_xrefUpdateManyWithWhereWithoutUserInput | user_email_xrefUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + } + + export type emailUpdateManyWithoutUserNestedInput = { + create?: XOR | emailCreateWithoutUserInput[] | emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: emailCreateOrConnectWithoutUserInput | emailCreateOrConnectWithoutUserInput[] + upsert?: emailUpsertWithWhereUniqueWithoutUserInput | emailUpsertWithWhereUniqueWithoutUserInput[] + createMany?: emailCreateManyUserInputEnvelope + set?: emailWhereUniqueInput | emailWhereUniqueInput[] + disconnect?: emailWhereUniqueInput | emailWhereUniqueInput[] + delete?: emailWhereUniqueInput | emailWhereUniqueInput[] + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + update?: emailUpdateWithWhereUniqueWithoutUserInput | emailUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: emailUpdateManyWithWhereWithoutUserInput | emailUpdateManyWithWhereWithoutUserInput[] + deleteMany?: emailScalarWhereInput | emailScalarWhereInput[] + } + + export type dice_connectionUncheckedUpdateOneWithoutUserNestedInput = { + create?: XOR + connectOrCreate?: dice_connectionCreateOrConnectWithoutUserInput + upsert?: dice_connectionUpsertWithoutUserInput + disconnect?: dice_connectionWhereInput | boolean + delete?: dice_connectionWhereInput | boolean + connect?: dice_connectionWhereUniqueInput + update?: XOR, dice_connectionUncheckedUpdateWithoutUserInput> + } + + export type user_2faUncheckedUpdateOneWithoutUserNestedInput = { + create?: XOR + connectOrCreate?: user_2faCreateOrConnectWithoutUserInput + upsert?: user_2faUpsertWithoutUserInput + disconnect?: user_2faWhereInput | boolean + delete?: user_2faWhereInput | boolean + connect?: user_2faWhereUniqueInput + update?: XOR, user_2faUncheckedUpdateWithoutUserInput> + } + + export type user_achievementUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | user_achievementCreateWithoutUserInput[] | user_achievementUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_achievementCreateOrConnectWithoutUserInput | user_achievementCreateOrConnectWithoutUserInput[] + upsert?: user_achievementUpsertWithWhereUniqueWithoutUserInput | user_achievementUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_achievementCreateManyUserInputEnvelope + set?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + disconnect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + delete?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + connect?: user_achievementWhereUniqueInput | user_achievementWhereUniqueInput[] + update?: user_achievementUpdateWithWhereUniqueWithoutUserInput | user_achievementUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_achievementUpdateManyWithWhereWithoutUserInput | user_achievementUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_achievementScalarWhereInput | user_achievementScalarWhereInput[] + } + + export type user_otp_emailUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | user_otp_emailCreateWithoutUserInput[] | user_otp_emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_otp_emailCreateOrConnectWithoutUserInput | user_otp_emailCreateOrConnectWithoutUserInput[] + upsert?: user_otp_emailUpsertWithWhereUniqueWithoutUserInput | user_otp_emailUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_otp_emailCreateManyUserInputEnvelope + set?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + disconnect?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + delete?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + connect?: user_otp_emailWhereUniqueInput | user_otp_emailWhereUniqueInput[] + update?: user_otp_emailUpdateWithWhereUniqueWithoutUserInput | user_otp_emailUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_otp_emailUpdateManyWithWhereWithoutUserInput | user_otp_emailUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_otp_emailScalarWhereInput | user_otp_emailScalarWhereInput[] + } + + export type user_social_loginUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | user_social_loginCreateWithoutUserInput[] | user_social_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_social_loginCreateOrConnectWithoutUserInput | user_social_loginCreateOrConnectWithoutUserInput[] + upsert?: user_social_loginUpsertWithWhereUniqueWithoutUserInput | user_social_loginUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_social_loginCreateManyUserInputEnvelope + set?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + disconnect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + delete?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + connect?: user_social_loginWhereUniqueInput | user_social_loginWhereUniqueInput[] + update?: user_social_loginUpdateWithWhereUniqueWithoutUserInput | user_social_loginUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_social_loginUpdateManyWithWhereWithoutUserInput | user_social_loginUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_social_loginScalarWhereInput | user_social_loginScalarWhereInput[] + } + + export type user_sso_loginUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | user_sso_loginCreateWithoutUserInput[] | user_sso_loginUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_sso_loginCreateOrConnectWithoutUserInput | user_sso_loginCreateOrConnectWithoutUserInput[] + upsert?: user_sso_loginUpsertWithWhereUniqueWithoutUserInput | user_sso_loginUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_sso_loginCreateManyUserInputEnvelope + set?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + disconnect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + delete?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + connect?: user_sso_loginWhereUniqueInput | user_sso_loginWhereUniqueInput[] + update?: user_sso_loginUpdateWithWhereUniqueWithoutUserInput | user_sso_loginUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_sso_loginUpdateManyWithWhereWithoutUserInput | user_sso_loginUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_sso_loginScalarWhereInput | user_sso_loginScalarWhereInput[] + } + + export type user_statusUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | user_statusCreateWithoutUserInput[] | user_statusUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUserInput | user_statusCreateOrConnectWithoutUserInput[] + upsert?: user_statusUpsertWithWhereUniqueWithoutUserInput | user_statusUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_statusCreateManyUserInputEnvelope + set?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + disconnect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + delete?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + update?: user_statusUpdateWithWhereUniqueWithoutUserInput | user_statusUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_statusUpdateManyWithWhereWithoutUserInput | user_statusUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + } + + export type user_email_xrefUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | user_email_xrefCreateWithoutUserInput[] | user_email_xrefUncheckedCreateWithoutUserInput[] + connectOrCreate?: user_email_xrefCreateOrConnectWithoutUserInput | user_email_xrefCreateOrConnectWithoutUserInput[] + upsert?: user_email_xrefUpsertWithWhereUniqueWithoutUserInput | user_email_xrefUpsertWithWhereUniqueWithoutUserInput[] + createMany?: user_email_xrefCreateManyUserInputEnvelope + set?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + disconnect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + delete?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + connect?: user_email_xrefWhereUniqueInput | user_email_xrefWhereUniqueInput[] + update?: user_email_xrefUpdateWithWhereUniqueWithoutUserInput | user_email_xrefUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: user_email_xrefUpdateManyWithWhereWithoutUserInput | user_email_xrefUpdateManyWithWhereWithoutUserInput[] + deleteMany?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + } + + export type emailUncheckedUpdateManyWithoutUserNestedInput = { + create?: XOR | emailCreateWithoutUserInput[] | emailUncheckedCreateWithoutUserInput[] + connectOrCreate?: emailCreateOrConnectWithoutUserInput | emailCreateOrConnectWithoutUserInput[] + upsert?: emailUpsertWithWhereUniqueWithoutUserInput | emailUpsertWithWhereUniqueWithoutUserInput[] + createMany?: emailCreateManyUserInputEnvelope + set?: emailWhereUniqueInput | emailWhereUniqueInput[] + disconnect?: emailWhereUniqueInput | emailWhereUniqueInput[] + delete?: emailWhereUniqueInput | emailWhereUniqueInput[] + connect?: emailWhereUniqueInput | emailWhereUniqueInput[] + update?: emailUpdateWithWhereUniqueWithoutUserInput | emailUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: emailUpdateManyWithWhereWithoutUserInput | emailUpdateManyWithWhereWithoutUserInput[] + deleteMany?: emailScalarWhereInput | emailScalarWhereInput[] + } + + export type userCreateNestedOneWithoutUser_2faInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_2faInput + connect?: userWhereUniqueInput + } + + export type userUpdateOneRequiredWithoutUser_2faNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_2faInput + upsert?: userUpsertWithoutUser_2faInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_2faInput> + } + + export type achievement_type_luCreateNestedOneWithoutUser_achievementInput = { + create?: XOR + connectOrCreate?: achievement_type_luCreateOrConnectWithoutUser_achievementInput + connect?: achievement_type_luWhereUniqueInput + } + + export type userCreateNestedOneWithoutUser_achievementInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_achievementInput + connect?: userWhereUniqueInput + } + + export type achievement_type_luUpdateOneRequiredWithoutUser_achievementNestedInput = { + create?: XOR + connectOrCreate?: achievement_type_luCreateOrConnectWithoutUser_achievementInput + upsert?: achievement_type_luUpsertWithoutUser_achievementInput + connect?: achievement_type_luWhereUniqueInput + update?: XOR, achievement_type_luUncheckedUpdateWithoutUser_achievementInput> + } + + export type userUpdateOneRequiredWithoutUser_achievementNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_achievementInput + upsert?: userUpsertWithoutUser_achievementInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_achievementInput> + } + + export type security_userCreateNestedOneWithoutUser_group_xrefInput = { + create?: XOR + connectOrCreate?: security_userCreateOrConnectWithoutUser_group_xrefInput + connect?: security_userWhereUniqueInput + } + + export type security_groupsCreateNestedOneWithoutUser_group_xrefInput = { + create?: XOR + connectOrCreate?: security_groupsCreateOrConnectWithoutUser_group_xrefInput + connect?: security_groupsWhereUniqueInput + } + + export type security_status_luCreateNestedOneWithoutUser_group_xrefInput = { + create?: XOR + connectOrCreate?: security_status_luCreateOrConnectWithoutUser_group_xrefInput + connect?: security_status_luWhereUniqueInput + } + + export type security_userUpdateOneWithoutUser_group_xrefNestedInput = { + create?: XOR + connectOrCreate?: security_userCreateOrConnectWithoutUser_group_xrefInput + upsert?: security_userUpsertWithoutUser_group_xrefInput + disconnect?: security_userWhereInput | boolean + delete?: security_userWhereInput | boolean + connect?: security_userWhereUniqueInput + update?: XOR, security_userUncheckedUpdateWithoutUser_group_xrefInput> + } + + export type security_groupsUpdateOneWithoutUser_group_xrefNestedInput = { + create?: XOR + connectOrCreate?: security_groupsCreateOrConnectWithoutUser_group_xrefInput + upsert?: security_groupsUpsertWithoutUser_group_xrefInput + disconnect?: security_groupsWhereInput | boolean + delete?: security_groupsWhereInput | boolean + connect?: security_groupsWhereUniqueInput + update?: XOR, security_groupsUncheckedUpdateWithoutUser_group_xrefInput> + } + + export type security_status_luUpdateOneWithoutUser_group_xrefNestedInput = { + create?: XOR + connectOrCreate?: security_status_luCreateOrConnectWithoutUser_group_xrefInput + upsert?: security_status_luUpsertWithoutUser_group_xrefInput + disconnect?: security_status_luWhereInput | boolean + delete?: security_status_luWhereInput | boolean + connect?: security_status_luWhereUniqueInput + update?: XOR, security_status_luUncheckedUpdateWithoutUser_group_xrefInput> + } + + export type userCreateNestedOneWithoutUser_otp_emailInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_otp_emailInput + connect?: userWhereUniqueInput + } + + export type userUpdateOneRequiredWithoutUser_otp_emailNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_otp_emailInput + upsert?: userUpsertWithoutUser_otp_emailInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_otp_emailInput> + } + + export type social_login_providerCreateNestedOneWithoutUser_social_loginInput = { + create?: XOR + connectOrCreate?: social_login_providerCreateOrConnectWithoutUser_social_loginInput + connect?: social_login_providerWhereUniqueInput + } + + export type userCreateNestedOneWithoutUser_social_loginInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_social_loginInput + connect?: userWhereUniqueInput + } + + export type NullableBoolFieldUpdateOperationsInput = { + set?: boolean | null + } + + export type social_login_providerUpdateOneRequiredWithoutUser_social_loginNestedInput = { + create?: XOR + connectOrCreate?: social_login_providerCreateOrConnectWithoutUser_social_loginInput + upsert?: social_login_providerUpsertWithoutUser_social_loginInput + connect?: social_login_providerWhereUniqueInput + update?: XOR, social_login_providerUncheckedUpdateWithoutUser_social_loginInput> + } + + export type userUpdateOneRequiredWithoutUser_social_loginNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_social_loginInput + upsert?: userUpsertWithoutUser_social_loginInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_social_loginInput> + } + + export type sso_login_providerCreateNestedOneWithoutUser_sso_loginInput = { + create?: XOR + connectOrCreate?: sso_login_providerCreateOrConnectWithoutUser_sso_loginInput + connect?: sso_login_providerWhereUniqueInput + } + + export type userCreateNestedOneWithoutUser_sso_loginInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_sso_loginInput + connect?: userWhereUniqueInput + } + + export type sso_login_providerUpdateOneRequiredWithoutUser_sso_loginNestedInput = { + create?: XOR + connectOrCreate?: sso_login_providerCreateOrConnectWithoutUser_sso_loginInput + upsert?: sso_login_providerUpsertWithoutUser_sso_loginInput + connect?: sso_login_providerWhereUniqueInput + update?: XOR, sso_login_providerUncheckedUpdateWithoutUser_sso_loginInput> + } + + export type userUpdateOneRequiredWithoutUser_sso_loginNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_sso_loginInput + upsert?: userUpsertWithoutUser_sso_loginInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_sso_loginInput> + } + + export type userCreateNestedOneWithoutUser_statusInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_statusInput + connect?: userWhereUniqueInput + } + + export type user_status_luCreateNestedOneWithoutUser_statusInput = { + create?: XOR + connectOrCreate?: user_status_luCreateOrConnectWithoutUser_statusInput + connect?: user_status_luWhereUniqueInput + } + + export type user_status_type_luCreateNestedOneWithoutUser_statusInput = { + create?: XOR + connectOrCreate?: user_status_type_luCreateOrConnectWithoutUser_statusInput + connect?: user_status_type_luWhereUniqueInput + } + + export type userUpdateOneRequiredWithoutUser_statusNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_statusInput + upsert?: userUpsertWithoutUser_statusInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_statusInput> + } + + export type user_status_luUpdateOneWithoutUser_statusNestedInput = { + create?: XOR + connectOrCreate?: user_status_luCreateOrConnectWithoutUser_statusInput + upsert?: user_status_luUpsertWithoutUser_statusInput + disconnect?: user_status_luWhereInput | boolean + delete?: user_status_luWhereInput | boolean + connect?: user_status_luWhereUniqueInput + update?: XOR, user_status_luUncheckedUpdateWithoutUser_statusInput> + } + + export type user_status_type_luUpdateOneRequiredWithoutUser_statusNestedInput = { + create?: XOR + connectOrCreate?: user_status_type_luCreateOrConnectWithoutUser_statusInput + upsert?: user_status_type_luUpsertWithoutUser_statusInput + connect?: user_status_type_luWhereUniqueInput + update?: XOR, user_status_type_luUncheckedUpdateWithoutUser_statusInput> + } + + export type user_statusCreateNestedManyWithoutUser_status_luInput = { + create?: XOR | user_statusCreateWithoutUser_status_luInput[] | user_statusUncheckedCreateWithoutUser_status_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_luInput | user_statusCreateOrConnectWithoutUser_status_luInput[] + createMany?: user_statusCreateManyUser_status_luInputEnvelope + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + } + + export type user_statusUncheckedCreateNestedManyWithoutUser_status_luInput = { + create?: XOR | user_statusCreateWithoutUser_status_luInput[] | user_statusUncheckedCreateWithoutUser_status_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_luInput | user_statusCreateOrConnectWithoutUser_status_luInput[] + createMany?: user_statusCreateManyUser_status_luInputEnvelope + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + } + + export type user_statusUpdateManyWithoutUser_status_luNestedInput = { + create?: XOR | user_statusCreateWithoutUser_status_luInput[] | user_statusUncheckedCreateWithoutUser_status_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_luInput | user_statusCreateOrConnectWithoutUser_status_luInput[] + upsert?: user_statusUpsertWithWhereUniqueWithoutUser_status_luInput | user_statusUpsertWithWhereUniqueWithoutUser_status_luInput[] + createMany?: user_statusCreateManyUser_status_luInputEnvelope + set?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + disconnect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + delete?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + update?: user_statusUpdateWithWhereUniqueWithoutUser_status_luInput | user_statusUpdateWithWhereUniqueWithoutUser_status_luInput[] + updateMany?: user_statusUpdateManyWithWhereWithoutUser_status_luInput | user_statusUpdateManyWithWhereWithoutUser_status_luInput[] + deleteMany?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + } + + export type user_statusUncheckedUpdateManyWithoutUser_status_luNestedInput = { + create?: XOR | user_statusCreateWithoutUser_status_luInput[] | user_statusUncheckedCreateWithoutUser_status_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_luInput | user_statusCreateOrConnectWithoutUser_status_luInput[] + upsert?: user_statusUpsertWithWhereUniqueWithoutUser_status_luInput | user_statusUpsertWithWhereUniqueWithoutUser_status_luInput[] + createMany?: user_statusCreateManyUser_status_luInputEnvelope + set?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + disconnect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + delete?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + update?: user_statusUpdateWithWhereUniqueWithoutUser_status_luInput | user_statusUpdateWithWhereUniqueWithoutUser_status_luInput[] + updateMany?: user_statusUpdateManyWithWhereWithoutUser_status_luInput | user_statusUpdateManyWithWhereWithoutUser_status_luInput[] + deleteMany?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + } + + export type user_statusCreateNestedManyWithoutUser_status_type_luInput = { + create?: XOR | user_statusCreateWithoutUser_status_type_luInput[] | user_statusUncheckedCreateWithoutUser_status_type_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_type_luInput | user_statusCreateOrConnectWithoutUser_status_type_luInput[] + createMany?: user_statusCreateManyUser_status_type_luInputEnvelope + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + } + + export type user_statusUncheckedCreateNestedManyWithoutUser_status_type_luInput = { + create?: XOR | user_statusCreateWithoutUser_status_type_luInput[] | user_statusUncheckedCreateWithoutUser_status_type_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_type_luInput | user_statusCreateOrConnectWithoutUser_status_type_luInput[] + createMany?: user_statusCreateManyUser_status_type_luInputEnvelope + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + } + + export type user_statusUpdateManyWithoutUser_status_type_luNestedInput = { + create?: XOR | user_statusCreateWithoutUser_status_type_luInput[] | user_statusUncheckedCreateWithoutUser_status_type_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_type_luInput | user_statusCreateOrConnectWithoutUser_status_type_luInput[] + upsert?: user_statusUpsertWithWhereUniqueWithoutUser_status_type_luInput | user_statusUpsertWithWhereUniqueWithoutUser_status_type_luInput[] + createMany?: user_statusCreateManyUser_status_type_luInputEnvelope + set?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + disconnect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + delete?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + update?: user_statusUpdateWithWhereUniqueWithoutUser_status_type_luInput | user_statusUpdateWithWhereUniqueWithoutUser_status_type_luInput[] + updateMany?: user_statusUpdateManyWithWhereWithoutUser_status_type_luInput | user_statusUpdateManyWithWhereWithoutUser_status_type_luInput[] + deleteMany?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + } + + export type user_statusUncheckedUpdateManyWithoutUser_status_type_luNestedInput = { + create?: XOR | user_statusCreateWithoutUser_status_type_luInput[] | user_statusUncheckedCreateWithoutUser_status_type_luInput[] + connectOrCreate?: user_statusCreateOrConnectWithoutUser_status_type_luInput | user_statusCreateOrConnectWithoutUser_status_type_luInput[] + upsert?: user_statusUpsertWithWhereUniqueWithoutUser_status_type_luInput | user_statusUpsertWithWhereUniqueWithoutUser_status_type_luInput[] + createMany?: user_statusCreateManyUser_status_type_luInputEnvelope + set?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + disconnect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + delete?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + connect?: user_statusWhereUniqueInput | user_statusWhereUniqueInput[] + update?: user_statusUpdateWithWhereUniqueWithoutUser_status_type_luInput | user_statusUpdateWithWhereUniqueWithoutUser_status_type_luInput[] + updateMany?: user_statusUpdateManyWithWhereWithoutUser_status_type_luInput | user_statusUpdateManyWithWhereWithoutUser_status_type_luInput[] + deleteMany?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + } + + export type userCreateNestedOneWithoutUser_email_xrefInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_email_xrefInput + connect?: userWhereUniqueInput + } + + export type emailCreateNestedOneWithoutUser_email_xrefInput = { + create?: XOR + connectOrCreate?: emailCreateOrConnectWithoutUser_email_xrefInput + connect?: emailWhereUniqueInput + } + + export type email_status_luCreateNestedOneWithoutUser_email_xrefInput = { + create?: XOR + connectOrCreate?: email_status_luCreateOrConnectWithoutUser_email_xrefInput + connect?: email_status_luWhereUniqueInput + } + + export type userUpdateOneRequiredWithoutUser_email_xrefNestedInput = { + create?: XOR + connectOrCreate?: userCreateOrConnectWithoutUser_email_xrefInput + upsert?: userUpsertWithoutUser_email_xrefInput + connect?: userWhereUniqueInput + update?: XOR, userUncheckedUpdateWithoutUser_email_xrefInput> + } + + export type emailUpdateOneRequiredWithoutUser_email_xrefNestedInput = { + create?: XOR + connectOrCreate?: emailCreateOrConnectWithoutUser_email_xrefInput + upsert?: emailUpsertWithoutUser_email_xrefInput + connect?: emailWhereUniqueInput + update?: XOR, emailUncheckedUpdateWithoutUser_email_xrefInput> + } + + export type email_status_luUpdateOneWithoutUser_email_xrefNestedInput = { + create?: XOR + connectOrCreate?: email_status_luCreateOrConnectWithoutUser_email_xrefInput + upsert?: email_status_luUpsertWithoutUser_email_xrefInput + disconnect?: email_status_luWhereInput | boolean + delete?: email_status_luWhereInput | boolean + connect?: email_status_luWhereUniqueInput + update?: XOR, email_status_luUncheckedUpdateWithoutUser_email_xrefInput> + } + + export type NullableIntFieldUpdateOperationsInput = { + set?: number | null + increment?: number + decrement?: number + multiply?: number + divide?: number + } + + export type RoleAssignmentCreateNestedManyWithoutRoleInput = { + create?: XOR | RoleAssignmentCreateWithoutRoleInput[] | RoleAssignmentUncheckedCreateWithoutRoleInput[] + connectOrCreate?: RoleAssignmentCreateOrConnectWithoutRoleInput | RoleAssignmentCreateOrConnectWithoutRoleInput[] + createMany?: RoleAssignmentCreateManyRoleInputEnvelope + connect?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + } + + export type RoleAssignmentUncheckedCreateNestedManyWithoutRoleInput = { + create?: XOR | RoleAssignmentCreateWithoutRoleInput[] | RoleAssignmentUncheckedCreateWithoutRoleInput[] + connectOrCreate?: RoleAssignmentCreateOrConnectWithoutRoleInput | RoleAssignmentCreateOrConnectWithoutRoleInput[] + createMany?: RoleAssignmentCreateManyRoleInputEnvelope + connect?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + } + + export type RoleAssignmentUpdateManyWithoutRoleNestedInput = { + create?: XOR | RoleAssignmentCreateWithoutRoleInput[] | RoleAssignmentUncheckedCreateWithoutRoleInput[] + connectOrCreate?: RoleAssignmentCreateOrConnectWithoutRoleInput | RoleAssignmentCreateOrConnectWithoutRoleInput[] + upsert?: RoleAssignmentUpsertWithWhereUniqueWithoutRoleInput | RoleAssignmentUpsertWithWhereUniqueWithoutRoleInput[] + createMany?: RoleAssignmentCreateManyRoleInputEnvelope + set?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + disconnect?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + delete?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + connect?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + update?: RoleAssignmentUpdateWithWhereUniqueWithoutRoleInput | RoleAssignmentUpdateWithWhereUniqueWithoutRoleInput[] + updateMany?: RoleAssignmentUpdateManyWithWhereWithoutRoleInput | RoleAssignmentUpdateManyWithWhereWithoutRoleInput[] + deleteMany?: RoleAssignmentScalarWhereInput | RoleAssignmentScalarWhereInput[] + } + + export type RoleAssignmentUncheckedUpdateManyWithoutRoleNestedInput = { + create?: XOR | RoleAssignmentCreateWithoutRoleInput[] | RoleAssignmentUncheckedCreateWithoutRoleInput[] + connectOrCreate?: RoleAssignmentCreateOrConnectWithoutRoleInput | RoleAssignmentCreateOrConnectWithoutRoleInput[] + upsert?: RoleAssignmentUpsertWithWhereUniqueWithoutRoleInput | RoleAssignmentUpsertWithWhereUniqueWithoutRoleInput[] + createMany?: RoleAssignmentCreateManyRoleInputEnvelope + set?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + disconnect?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + delete?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + connect?: RoleAssignmentWhereUniqueInput | RoleAssignmentWhereUniqueInput[] + update?: RoleAssignmentUpdateWithWhereUniqueWithoutRoleInput | RoleAssignmentUpdateWithWhereUniqueWithoutRoleInput[] + updateMany?: RoleAssignmentUpdateManyWithWhereWithoutRoleInput | RoleAssignmentUpdateManyWithWhereWithoutRoleInput[] + deleteMany?: RoleAssignmentScalarWhereInput | RoleAssignmentScalarWhereInput[] + } + + export type RoleCreateNestedOneWithoutRoleAssignmentsInput = { + create?: XOR + connectOrCreate?: RoleCreateOrConnectWithoutRoleAssignmentsInput + connect?: RoleWhereUniqueInput + } + + export type RoleUpdateOneRequiredWithoutRoleAssignmentsNestedInput = { + create?: XOR + connectOrCreate?: RoleCreateOrConnectWithoutRoleAssignmentsInput + upsert?: RoleUpsertWithoutRoleAssignmentsInput + connect?: RoleWhereUniqueInput + update?: XOR, RoleUncheckedUpdateWithoutRoleAssignmentsInput> + } + + export type NestedDecimalFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string + } + + export type NestedStringFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] | ListStringFieldRefInput<$PrismaModel> + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + not?: NestedStringFilter<$PrismaModel> | string + } + + export type NestedDecimalWithAggregatesFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalWithAggregatesFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string + _count?: NestedIntFilter<$PrismaModel> + _avg?: NestedDecimalFilter<$PrismaModel> + _sum?: NestedDecimalFilter<$PrismaModel> + _min?: NestedDecimalFilter<$PrismaModel> + _max?: NestedDecimalFilter<$PrismaModel> + } + + export type NestedIntFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> + in?: number[] | ListIntFieldRefInput<$PrismaModel> + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntFilter<$PrismaModel> | number + } + + export type NestedStringWithAggregatesFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> + in?: string[] | ListStringFieldRefInput<$PrismaModel> + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + not?: NestedStringWithAggregatesFilter<$PrismaModel> | string + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedStringFilter<$PrismaModel> + _max?: NestedStringFilter<$PrismaModel> + } + + export type NestedDateTimeNullableFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | null + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | 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 NestedDecimalNullableFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> | null + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalNullableFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string | null + } + + export type NestedStringNullableFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | ListStringFieldRefInput<$PrismaModel> | null + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | null + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + not?: NestedStringNullableFilter<$PrismaModel> | string | null + } + + export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> | null + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | null + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> | 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 NestedIntNullableFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | ListIntFieldRefInput<$PrismaModel> | null + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> | null + lt?: number | IntFieldRefInput<$PrismaModel> + lte?: number | IntFieldRefInput<$PrismaModel> + gt?: number | IntFieldRefInput<$PrismaModel> + gte?: number | IntFieldRefInput<$PrismaModel> + not?: NestedIntNullableFilter<$PrismaModel> | number | null + } + + export type NestedDecimalNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> | null + in?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + notIn?: Decimal[] | DecimalJsLike[] | number[] | string[] | ListDecimalFieldRefInput<$PrismaModel> | null + lt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + lte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gt?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + gte?: Decimal | DecimalJsLike | number | string | DecimalFieldRefInput<$PrismaModel> + not?: NestedDecimalNullableWithAggregatesFilter<$PrismaModel> | Decimal | DecimalJsLike | number | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _avg?: NestedDecimalNullableFilter<$PrismaModel> + _sum?: NestedDecimalNullableFilter<$PrismaModel> + _min?: NestedDecimalNullableFilter<$PrismaModel> + _max?: NestedDecimalNullableFilter<$PrismaModel> + } + + export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: string | StringFieldRefInput<$PrismaModel> | null + in?: string[] | ListStringFieldRefInput<$PrismaModel> | null + notIn?: string[] | ListStringFieldRefInput<$PrismaModel> | null + lt?: string | StringFieldRefInput<$PrismaModel> + lte?: string | StringFieldRefInput<$PrismaModel> + gt?: string | StringFieldRefInput<$PrismaModel> + gte?: string | StringFieldRefInput<$PrismaModel> + contains?: string | StringFieldRefInput<$PrismaModel> + startsWith?: string | StringFieldRefInput<$PrismaModel> + endsWith?: string | StringFieldRefInput<$PrismaModel> + not?: NestedStringNullableWithAggregatesFilter<$PrismaModel> | string | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedStringNullableFilter<$PrismaModel> + _max?: NestedStringNullableFilter<$PrismaModel> + } + + export type NestedBoolFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolFilter<$PrismaModel> | boolean + } + + export type NestedDateTimeFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + 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[] | ListIntFieldRefInput<$PrismaModel> + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> + 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[] | ListFloatFieldRefInput<$PrismaModel> + notIn?: number[] | ListFloatFieldRefInput<$PrismaModel> + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatFilter<$PrismaModel> | number + } + + export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> + not?: NestedBoolWithAggregatesFilter<$PrismaModel> | boolean + _count?: NestedIntFilter<$PrismaModel> + _min?: NestedBoolFilter<$PrismaModel> + _max?: NestedBoolFilter<$PrismaModel> + } + + export type NestedDateTimeWithAggregatesFilter<$PrismaModel = never> = { + equals?: Date | string | DateTimeFieldRefInput<$PrismaModel> + in?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + notIn?: Date[] | string[] | ListDateTimeFieldRefInput<$PrismaModel> + 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 NestedBoolNullableFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null + not?: NestedBoolNullableFilter<$PrismaModel> | boolean | null + } + + export type NestedBoolNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: boolean | BooleanFieldRefInput<$PrismaModel> | null + not?: NestedBoolNullableWithAggregatesFilter<$PrismaModel> | boolean | null + _count?: NestedIntNullableFilter<$PrismaModel> + _min?: NestedBoolNullableFilter<$PrismaModel> + _max?: NestedBoolNullableFilter<$PrismaModel> + } + + export type NestedIntNullableWithAggregatesFilter<$PrismaModel = never> = { + equals?: number | IntFieldRefInput<$PrismaModel> | null + in?: number[] | ListIntFieldRefInput<$PrismaModel> | null + notIn?: number[] | ListIntFieldRefInput<$PrismaModel> | 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[] | ListFloatFieldRefInput<$PrismaModel> | null + notIn?: number[] | ListFloatFieldRefInput<$PrismaModel> | null + lt?: number | FloatFieldRefInput<$PrismaModel> + lte?: number | FloatFieldRefInput<$PrismaModel> + gt?: number | FloatFieldRefInput<$PrismaModel> + gte?: number | FloatFieldRefInput<$PrismaModel> + not?: NestedFloatNullableFilter<$PrismaModel> | number | null + } + + export type user_achievementCreateWithoutAchievement_type_luInput = { + achievement_date: Date | string + description?: string | null + create_date?: Date | string | null + user: userCreateNestedOneWithoutUser_achievementInput + } + + export type user_achievementUncheckedCreateWithoutAchievement_type_luInput = { + user_id: Decimal | DecimalJsLike | number | string + achievement_date: Date | string + description?: string | null + create_date?: Date | string | null + } + + export type user_achievementCreateOrConnectWithoutAchievement_type_luInput = { + where: user_achievementWhereUniqueInput + create: XOR + } + + export type user_achievementCreateManyAchievement_type_luInputEnvelope = { + data: user_achievementCreateManyAchievement_type_luInput | user_achievementCreateManyAchievement_type_luInput[] + skipDuplicates?: boolean + } + + export type user_achievementUpsertWithWhereUniqueWithoutAchievement_type_luInput = { + where: user_achievementWhereUniqueInput + update: XOR + create: XOR + } + + export type user_achievementUpdateWithWhereUniqueWithoutAchievement_type_luInput = { + where: user_achievementWhereUniqueInput + data: XOR + } + + export type user_achievementUpdateManyWithWhereWithoutAchievement_type_luInput = { + where: user_achievementScalarWhereInput + data: XOR + } + + export type user_achievementScalarWhereInput = { + AND?: user_achievementScalarWhereInput | user_achievementScalarWhereInput[] + OR?: user_achievementScalarWhereInput[] + NOT?: user_achievementScalarWhereInput | user_achievementScalarWhereInput[] + user_id?: DecimalFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFilter<"user_achievement"> | Date | string + achievement_type_id?: DecimalFilter<"user_achievement"> | Decimal | DecimalJsLike | number | string + description?: StringNullableFilter<"user_achievement"> | string | null + create_date?: DateTimeNullableFilter<"user_achievement"> | Date | string | null + } + + export type userCreateWithoutDice_connectionInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutDice_connectionInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutDice_connectionInput = { + where: userWhereUniqueInput + create: XOR + } + + export type userUpsertWithoutDice_connectionInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutDice_connectionInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutDice_connectionInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutDice_connectionInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type email_status_luCreateWithoutEmailInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + user_email_xref?: user_email_xrefCreateNestedManyWithoutEmail_status_luInput + } + + export type email_status_luUncheckedCreateWithoutEmailInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutEmail_status_luInput + } + + export type email_status_luCreateOrConnectWithoutEmailInput = { + where: email_status_luWhereUniqueInput + create: XOR + } + + export type email_type_luCreateWithoutEmailInput = { + email_type_id: Decimal | DecimalJsLike | number | string + email_type_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type email_type_luUncheckedCreateWithoutEmailInput = { + email_type_id: Decimal | DecimalJsLike | number | string + email_type_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type email_type_luCreateOrConnectWithoutEmailInput = { + where: email_type_luWhereUniqueInput + create: XOR + } + + export type user_email_xrefCreateWithoutEmailInput = { + is_primary: boolean + create_date?: Date | string | null + modify_date?: Date | string | null + user: userCreateNestedOneWithoutUser_email_xrefInput + email_status_lu?: email_status_luCreateNestedOneWithoutUser_email_xrefInput + } + + export type user_email_xrefUncheckedCreateWithoutEmailInput = { + user_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + status_id: Decimal | DecimalJsLike | number | string + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_email_xrefCreateOrConnectWithoutEmailInput = { + where: user_email_xrefWhereUniqueInput + create: XOR + } + + export type user_email_xrefCreateManyEmailInputEnvelope = { + data: user_email_xrefCreateManyEmailInput | user_email_xrefCreateManyEmailInput[] + skipDuplicates?: boolean + } + + export type userCreateWithoutEmailsInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutEmailsInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutEmailsInput = { + where: userWhereUniqueInput + create: XOR + } + + export type email_status_luUpsertWithoutEmailInput = { + update: XOR + create: XOR + where?: email_status_luWhereInput + } + + export type email_status_luUpdateToOneWithWhereWithoutEmailInput = { + where?: email_status_luWhereInput + data: XOR + } + + export type email_status_luUpdateWithoutEmailInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user_email_xref?: user_email_xrefUpdateManyWithoutEmail_status_luNestedInput + } + + export type email_status_luUncheckedUpdateWithoutEmailInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutEmail_status_luNestedInput + } + + export type email_type_luUpsertWithoutEmailInput = { + update: XOR + create: XOR + where?: email_type_luWhereInput + } + + export type email_type_luUpdateToOneWithWhereWithoutEmailInput = { + where?: email_type_luWhereInput + data: XOR + } + + export type email_type_luUpdateWithoutEmailInput = { + email_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type email_type_luUncheckedUpdateWithoutEmailInput = { + email_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefUpsertWithWhereUniqueWithoutEmailInput = { + where: user_email_xrefWhereUniqueInput + update: XOR + create: XOR + } + + export type user_email_xrefUpdateWithWhereUniqueWithoutEmailInput = { + where: user_email_xrefWhereUniqueInput + data: XOR + } + + export type user_email_xrefUpdateManyWithWhereWithoutEmailInput = { + where: user_email_xrefScalarWhereInput + data: XOR + } + + export type user_email_xrefScalarWhereInput = { + AND?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + OR?: user_email_xrefScalarWhereInput[] + NOT?: user_email_xrefScalarWhereInput | user_email_xrefScalarWhereInput[] + user_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + email_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + is_primary?: BoolFilter<"user_email_xref"> | boolean + status_id?: DecimalFilter<"user_email_xref"> | Decimal | DecimalJsLike | number | string + create_date?: DateTimeNullableFilter<"user_email_xref"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user_email_xref"> | Date | string | null + } + + export type userUpsertWithoutEmailsInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutEmailsInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutEmailsInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutEmailsInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + } + + export type emailCreateWithoutEmail_status_luInput = { + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + email_type_lu?: email_type_luCreateNestedOneWithoutEmailInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutEmailInput + user?: userCreateNestedOneWithoutEmailsInput + } + + export type emailUncheckedCreateWithoutEmail_status_luInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutEmailInput + } + + export type emailCreateOrConnectWithoutEmail_status_luInput = { + where: emailWhereUniqueInput + create: XOR + } + + export type emailCreateManyEmail_status_luInputEnvelope = { + data: emailCreateManyEmail_status_luInput | emailCreateManyEmail_status_luInput[] + skipDuplicates?: boolean + } + + export type user_email_xrefCreateWithoutEmail_status_luInput = { + is_primary: boolean + create_date?: Date | string | null + modify_date?: Date | string | null + user: userCreateNestedOneWithoutUser_email_xrefInput + email: emailCreateNestedOneWithoutUser_email_xrefInput + } + + export type user_email_xrefUncheckedCreateWithoutEmail_status_luInput = { + user_id: Decimal | DecimalJsLike | number | string + email_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_email_xrefCreateOrConnectWithoutEmail_status_luInput = { + where: user_email_xrefWhereUniqueInput + create: XOR + } + + export type user_email_xrefCreateManyEmail_status_luInputEnvelope = { + data: user_email_xrefCreateManyEmail_status_luInput | user_email_xrefCreateManyEmail_status_luInput[] + skipDuplicates?: boolean + } + + export type emailUpsertWithWhereUniqueWithoutEmail_status_luInput = { + where: emailWhereUniqueInput + update: XOR + create: XOR + } + + export type emailUpdateWithWhereUniqueWithoutEmail_status_luInput = { + where: emailWhereUniqueInput + data: XOR + } + + export type emailUpdateManyWithWhereWithoutEmail_status_luInput = { + where: emailScalarWhereInput + data: XOR + } + + export type emailScalarWhereInput = { + AND?: emailScalarWhereInput | emailScalarWhereInput[] + OR?: emailScalarWhereInput[] + NOT?: emailScalarWhereInput | emailScalarWhereInput[] + user_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFilter<"email"> | Decimal | DecimalJsLike | number | string + email_type_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + address?: StringNullableFilter<"email"> | string | null + create_date?: DateTimeNullableFilter<"email"> | Date | string | null + modify_date?: DateTimeNullableFilter<"email"> | Date | string | null + primary_ind?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + status_id?: DecimalNullableFilter<"email"> | Decimal | DecimalJsLike | number | string | null + } + + export type user_email_xrefUpsertWithWhereUniqueWithoutEmail_status_luInput = { + where: user_email_xrefWhereUniqueInput + update: XOR + create: XOR + } + + export type user_email_xrefUpdateWithWhereUniqueWithoutEmail_status_luInput = { + where: user_email_xrefWhereUniqueInput + data: XOR + } + + export type user_email_xrefUpdateManyWithWhereWithoutEmail_status_luInput = { + where: user_email_xrefScalarWhereInput + data: XOR + } + + export type emailCreateWithoutEmail_type_luInput = { + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luCreateNestedOneWithoutEmailInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutEmailInput + user?: userCreateNestedOneWithoutEmailsInput + } + + export type emailUncheckedCreateWithoutEmail_type_luInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutEmailInput + } + + export type emailCreateOrConnectWithoutEmail_type_luInput = { + where: emailWhereUniqueInput + create: XOR + } + + export type emailCreateManyEmail_type_luInputEnvelope = { + data: emailCreateManyEmail_type_luInput | emailCreateManyEmail_type_luInput[] + skipDuplicates?: boolean + } + + export type emailUpsertWithWhereUniqueWithoutEmail_type_luInput = { + where: emailWhereUniqueInput + update: XOR + create: XOR + } + + export type emailUpdateWithWhereUniqueWithoutEmail_type_luInput = { + where: emailWhereUniqueInput + data: XOR + } + + export type emailUpdateManyWithWhereWithoutEmail_type_luInput = { + where: emailScalarWhereInput + data: XOR + } + + export type user_group_xrefCreateWithoutSecurity_groupsInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + create_user_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + security_user?: security_userCreateNestedOneWithoutUser_group_xrefInput + security_status_lu?: security_status_luCreateNestedOneWithoutUser_group_xrefInput + } + + export type user_group_xrefUncheckedCreateWithoutSecurity_groupsInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + login_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + security_status_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefCreateOrConnectWithoutSecurity_groupsInput = { + where: user_group_xrefWhereUniqueInput + create: XOR + } + + export type user_group_xrefCreateManySecurity_groupsInputEnvelope = { + data: user_group_xrefCreateManySecurity_groupsInput | user_group_xrefCreateManySecurity_groupsInput[] + skipDuplicates?: boolean + } + + export type user_group_xrefUpsertWithWhereUniqueWithoutSecurity_groupsInput = { + where: user_group_xrefWhereUniqueInput + update: XOR + create: XOR + } + + export type user_group_xrefUpdateWithWhereUniqueWithoutSecurity_groupsInput = { + where: user_group_xrefWhereUniqueInput + data: XOR + } + + export type user_group_xrefUpdateManyWithWhereWithoutSecurity_groupsInput = { + where: user_group_xrefScalarWhereInput + data: XOR + } + + export type user_group_xrefScalarWhereInput = { + AND?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + OR?: user_group_xrefScalarWhereInput[] + NOT?: user_group_xrefScalarWhereInput | user_group_xrefScalarWhereInput[] + user_group_id?: DecimalFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string + login_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + group_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_user_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + security_status_id?: DecimalNullableFilter<"user_group_xref"> | Decimal | DecimalJsLike | number | string | null + create_date?: DateTimeNullableFilter<"user_group_xref"> | Date | string | null + } + + export type user_group_xrefCreateWithoutSecurity_status_luInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + create_user_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + security_user?: security_userCreateNestedOneWithoutUser_group_xrefInput + security_groups?: security_groupsCreateNestedOneWithoutUser_group_xrefInput + } + + export type user_group_xrefUncheckedCreateWithoutSecurity_status_luInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + login_id?: Decimal | DecimalJsLike | number | string | null + group_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefCreateOrConnectWithoutSecurity_status_luInput = { + where: user_group_xrefWhereUniqueInput + create: XOR + } + + export type user_group_xrefCreateManySecurity_status_luInputEnvelope = { + data: user_group_xrefCreateManySecurity_status_luInput | user_group_xrefCreateManySecurity_status_luInput[] + skipDuplicates?: boolean + } + + export type user_group_xrefUpsertWithWhereUniqueWithoutSecurity_status_luInput = { + where: user_group_xrefWhereUniqueInput + update: XOR + create: XOR + } + + export type user_group_xrefUpdateWithWhereUniqueWithoutSecurity_status_luInput = { + where: user_group_xrefWhereUniqueInput + data: XOR + } + + export type user_group_xrefUpdateManyWithWhereWithoutSecurity_status_luInput = { + where: user_group_xrefScalarWhereInput + data: XOR + } + + export type user_group_xrefCreateWithoutSecurity_userInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + create_user_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + security_groups?: security_groupsCreateNestedOneWithoutUser_group_xrefInput + security_status_lu?: security_status_luCreateNestedOneWithoutUser_group_xrefInput + } + + export type user_group_xrefUncheckedCreateWithoutSecurity_userInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + group_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + security_status_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefCreateOrConnectWithoutSecurity_userInput = { + where: user_group_xrefWhereUniqueInput + create: XOR + } + + export type user_group_xrefCreateManySecurity_userInputEnvelope = { + data: user_group_xrefCreateManySecurity_userInput | user_group_xrefCreateManySecurity_userInput[] + skipDuplicates?: boolean + } + + export type user_group_xrefUpsertWithWhereUniqueWithoutSecurity_userInput = { + where: user_group_xrefWhereUniqueInput + update: XOR + create: XOR + } + + export type user_group_xrefUpdateWithWhereUniqueWithoutSecurity_userInput = { + where: user_group_xrefWhereUniqueInput + data: XOR + } + + export type user_group_xrefUpdateManyWithWhereWithoutSecurity_userInput = { + where: user_group_xrefScalarWhereInput + data: XOR + } + + export type user_social_loginCreateWithoutSocial_login_providerInput = { + social_user_id?: string | null + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + user: userCreateNestedOneWithoutUser_social_loginInput + } + + export type user_social_loginUncheckedCreateWithoutSocial_login_providerInput = { + social_user_id?: string | null + user_id: Decimal | DecimalJsLike | number | string + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_social_loginCreateOrConnectWithoutSocial_login_providerInput = { + where: user_social_loginWhereUniqueInput + create: XOR + } + + export type user_social_loginCreateManySocial_login_providerInputEnvelope = { + data: user_social_loginCreateManySocial_login_providerInput | user_social_loginCreateManySocial_login_providerInput[] + skipDuplicates?: boolean + } + + export type user_social_loginUpsertWithWhereUniqueWithoutSocial_login_providerInput = { + where: user_social_loginWhereUniqueInput + update: XOR + create: XOR + } + + export type user_social_loginUpdateWithWhereUniqueWithoutSocial_login_providerInput = { + where: user_social_loginWhereUniqueInput + data: XOR + } + + export type user_social_loginUpdateManyWithWhereWithoutSocial_login_providerInput = { + where: user_social_loginScalarWhereInput + data: XOR + } + + export type user_social_loginScalarWhereInput = { + AND?: user_social_loginScalarWhereInput | user_social_loginScalarWhereInput[] + OR?: user_social_loginScalarWhereInput[] + NOT?: user_social_loginScalarWhereInput | user_social_loginScalarWhereInput[] + social_user_id?: StringNullableFilter<"user_social_login"> | string | null + user_id?: DecimalFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_login_provider_id?: DecimalFilter<"user_social_login"> | Decimal | DecimalJsLike | number | string + social_user_name?: StringFilter<"user_social_login"> | string + social_email?: StringNullableFilter<"user_social_login"> | string | null + social_email_verified?: BoolNullableFilter<"user_social_login"> | boolean | null + create_date?: DateTimeNullableFilter<"user_social_login"> | Date | string | null + modify_date?: DateTimeNullableFilter<"user_social_login"> | Date | string | null + } + + export type user_sso_loginCreateWithoutSso_login_providerInput = { + sso_user_id: string + sso_user_name?: string | null + email?: string | null + user: userCreateNestedOneWithoutUser_sso_loginInput + } + + export type user_sso_loginUncheckedCreateWithoutSso_login_providerInput = { + user_id: Decimal | DecimalJsLike | number | string + sso_user_id: string + sso_user_name?: string | null + email?: string | null + } + + export type user_sso_loginCreateOrConnectWithoutSso_login_providerInput = { + where: user_sso_loginWhereUniqueInput + create: XOR + } + + export type user_sso_loginCreateManySso_login_providerInputEnvelope = { + data: user_sso_loginCreateManySso_login_providerInput | user_sso_loginCreateManySso_login_providerInput[] + skipDuplicates?: boolean + } + + export type user_sso_loginUpsertWithWhereUniqueWithoutSso_login_providerInput = { + where: user_sso_loginWhereUniqueInput + update: XOR + create: XOR + } + + export type user_sso_loginUpdateWithWhereUniqueWithoutSso_login_providerInput = { + where: user_sso_loginWhereUniqueInput + data: XOR + } + + export type user_sso_loginUpdateManyWithWhereWithoutSso_login_providerInput = { + where: user_sso_loginScalarWhereInput + data: XOR + } + + export type user_sso_loginScalarWhereInput = { + AND?: user_sso_loginScalarWhereInput | user_sso_loginScalarWhereInput[] + OR?: user_sso_loginScalarWhereInput[] + NOT?: user_sso_loginScalarWhereInput | user_sso_loginScalarWhereInput[] + user_id?: DecimalFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFilter<"user_sso_login"> | string + sso_user_name?: StringNullableFilter<"user_sso_login"> | string | null + provider_id?: DecimalFilter<"user_sso_login"> | Decimal | DecimalJsLike | number | string + email?: StringNullableFilter<"user_sso_login"> | string | null + } + + export type dice_connectionCreateWithoutUserInput = { + connection?: string | null + accepted?: boolean + created_at?: Date | string + short_url?: string | null + con_created_at?: Date | string | null + } + + export type dice_connectionUncheckedCreateWithoutUserInput = { + id?: number + connection?: string | null + accepted?: boolean + created_at?: Date | string + short_url?: string | null + con_created_at?: Date | string | null + } + + export type dice_connectionCreateOrConnectWithoutUserInput = { + where: dice_connectionWhereUniqueInput + create: XOR + } + + export type user_2faCreateWithoutUserInput = { + mfa_enabled?: boolean + dice_enabled?: boolean + created_by: Decimal | DecimalJsLike | number | string + created_at?: Date | string + modified_by: Decimal | DecimalJsLike | number | string + modified_at?: Date | string + } + + export type user_2faUncheckedCreateWithoutUserInput = { + id?: number + mfa_enabled?: boolean + dice_enabled?: boolean + created_by: Decimal | DecimalJsLike | number | string + created_at?: Date | string + modified_by: Decimal | DecimalJsLike | number | string + modified_at?: Date | string + } + + export type user_2faCreateOrConnectWithoutUserInput = { + where: user_2faWhereUniqueInput + create: XOR + } + + export type user_achievementCreateWithoutUserInput = { + achievement_date: Date | string + description?: string | null + create_date?: Date | string | null + achievement_type_lu: achievement_type_luCreateNestedOneWithoutUser_achievementInput + } + + export type user_achievementUncheckedCreateWithoutUserInput = { + achievement_date: Date | string + achievement_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + create_date?: Date | string | null + } + + export type user_achievementCreateOrConnectWithoutUserInput = { + where: user_achievementWhereUniqueInput + create: XOR + } + + export type user_achievementCreateManyUserInputEnvelope = { + data: user_achievementCreateManyUserInput | user_achievementCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type user_otp_emailCreateWithoutUserInput = { + mode: number + otp: string + expire_at: Date | string + resend?: boolean + fail_count?: number + } + + export type user_otp_emailUncheckedCreateWithoutUserInput = { + id?: number + mode: number + otp: string + expire_at: Date | string + resend?: boolean + fail_count?: number + } + + export type user_otp_emailCreateOrConnectWithoutUserInput = { + where: user_otp_emailWhereUniqueInput + create: XOR + } + + export type user_otp_emailCreateManyUserInputEnvelope = { + data: user_otp_emailCreateManyUserInput | user_otp_emailCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type user_social_loginCreateWithoutUserInput = { + social_user_id?: string | null + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + social_login_provider: social_login_providerCreateNestedOneWithoutUser_social_loginInput + } + + export type user_social_loginUncheckedCreateWithoutUserInput = { + social_user_id?: string | null + social_login_provider_id: Decimal | DecimalJsLike | number | string + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_social_loginCreateOrConnectWithoutUserInput = { + where: user_social_loginWhereUniqueInput + create: XOR + } + + export type user_social_loginCreateManyUserInputEnvelope = { + data: user_social_loginCreateManyUserInput | user_social_loginCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type user_sso_loginCreateWithoutUserInput = { + sso_user_id: string + sso_user_name?: string | null + email?: string | null + sso_login_provider: sso_login_providerCreateNestedOneWithoutUser_sso_loginInput + } + + export type user_sso_loginUncheckedCreateWithoutUserInput = { + sso_user_id: string + sso_user_name?: string | null + provider_id: Decimal | DecimalJsLike | number | string + email?: string | null + } + + export type user_sso_loginCreateOrConnectWithoutUserInput = { + where: user_sso_loginWhereUniqueInput + create: XOR + } + + export type user_sso_loginCreateManyUserInputEnvelope = { + data: user_sso_loginCreateManyUserInput | user_sso_loginCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type user_statusCreateWithoutUserInput = { + user_status_lu?: user_status_luCreateNestedOneWithoutUser_statusInput + user_status_type_lu: user_status_type_luCreateNestedOneWithoutUser_statusInput + } + + export type user_statusUncheckedCreateWithoutUserInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + user_status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_statusCreateOrConnectWithoutUserInput = { + where: user_statusWhereUniqueInput + create: XOR + } + + export type user_statusCreateManyUserInputEnvelope = { + data: user_statusCreateManyUserInput | user_statusCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type user_email_xrefCreateWithoutUserInput = { + is_primary: boolean + create_date?: Date | string | null + modify_date?: Date | string | null + email: emailCreateNestedOneWithoutUser_email_xrefInput + email_status_lu?: email_status_luCreateNestedOneWithoutUser_email_xrefInput + } + + export type user_email_xrefUncheckedCreateWithoutUserInput = { + email_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + status_id: Decimal | DecimalJsLike | number | string + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_email_xrefCreateOrConnectWithoutUserInput = { + where: user_email_xrefWhereUniqueInput + create: XOR + } + + export type user_email_xrefCreateManyUserInputEnvelope = { + data: user_email_xrefCreateManyUserInput | user_email_xrefCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type emailCreateWithoutUserInput = { + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luCreateNestedOneWithoutEmailInput + email_type_lu?: email_type_luCreateNestedOneWithoutEmailInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutEmailInput + } + + export type emailUncheckedCreateWithoutUserInput = { + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutEmailInput + } + + export type emailCreateOrConnectWithoutUserInput = { + where: emailWhereUniqueInput + create: XOR + } + + export type emailCreateManyUserInputEnvelope = { + data: emailCreateManyUserInput | emailCreateManyUserInput[] + skipDuplicates?: boolean + } + + export type dice_connectionUpsertWithoutUserInput = { + update: XOR + create: XOR + where?: dice_connectionWhereInput + } + + export type dice_connectionUpdateToOneWithWhereWithoutUserInput = { + where?: dice_connectionWhereInput + data: XOR + } + + export type dice_connectionUpdateWithoutUserInput = { + connection?: NullableStringFieldUpdateOperationsInput | string | null + accepted?: BoolFieldUpdateOperationsInput | boolean + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + short_url?: NullableStringFieldUpdateOperationsInput | string | null + con_created_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type dice_connectionUncheckedUpdateWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + connection?: NullableStringFieldUpdateOperationsInput | string | null + accepted?: BoolFieldUpdateOperationsInput | boolean + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + short_url?: NullableStringFieldUpdateOperationsInput | string | null + con_created_at?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_2faUpsertWithoutUserInput = { + update: XOR + create: XOR + where?: user_2faWhereInput + } + + export type user_2faUpdateToOneWithWhereWithoutUserInput = { + where?: user_2faWhereInput + data: XOR + } + + export type user_2faUpdateWithoutUserInput = { + mfa_enabled?: BoolFieldUpdateOperationsInput | boolean + dice_enabled?: BoolFieldUpdateOperationsInput | boolean + created_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + modified_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFieldUpdateOperationsInput | Date | string + } + + export type user_2faUncheckedUpdateWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + mfa_enabled?: BoolFieldUpdateOperationsInput | boolean + dice_enabled?: BoolFieldUpdateOperationsInput | boolean + created_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + created_at?: DateTimeFieldUpdateOperationsInput | Date | string + modified_by?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + modified_at?: DateTimeFieldUpdateOperationsInput | Date | string + } + + export type user_achievementUpsertWithWhereUniqueWithoutUserInput = { + where: user_achievementWhereUniqueInput + update: XOR + create: XOR + } + + export type user_achievementUpdateWithWhereUniqueWithoutUserInput = { + where: user_achievementWhereUniqueInput + data: XOR + } + + export type user_achievementUpdateManyWithWhereWithoutUserInput = { + where: user_achievementScalarWhereInput + data: XOR + } + + export type user_otp_emailUpsertWithWhereUniqueWithoutUserInput = { + where: user_otp_emailWhereUniqueInput + update: XOR + create: XOR + } + + export type user_otp_emailUpdateWithWhereUniqueWithoutUserInput = { + where: user_otp_emailWhereUniqueInput + data: XOR + } + + export type user_otp_emailUpdateManyWithWhereWithoutUserInput = { + where: user_otp_emailScalarWhereInput + data: XOR + } + + export type user_otp_emailScalarWhereInput = { + AND?: user_otp_emailScalarWhereInput | user_otp_emailScalarWhereInput[] + OR?: user_otp_emailScalarWhereInput[] + NOT?: user_otp_emailScalarWhereInput | user_otp_emailScalarWhereInput[] + id?: IntFilter<"user_otp_email"> | number + user_id?: DecimalFilter<"user_otp_email"> | Decimal | DecimalJsLike | number | string + mode?: IntFilter<"user_otp_email"> | number + otp?: StringFilter<"user_otp_email"> | string + expire_at?: DateTimeFilter<"user_otp_email"> | Date | string + resend?: BoolFilter<"user_otp_email"> | boolean + fail_count?: IntFilter<"user_otp_email"> | number + } + + export type user_social_loginUpsertWithWhereUniqueWithoutUserInput = { + where: user_social_loginWhereUniqueInput + update: XOR + create: XOR + } + + export type user_social_loginUpdateWithWhereUniqueWithoutUserInput = { + where: user_social_loginWhereUniqueInput + data: XOR + } + + export type user_social_loginUpdateManyWithWhereWithoutUserInput = { + where: user_social_loginScalarWhereInput + data: XOR + } + + export type user_sso_loginUpsertWithWhereUniqueWithoutUserInput = { + where: user_sso_loginWhereUniqueInput + update: XOR + create: XOR + } + + export type user_sso_loginUpdateWithWhereUniqueWithoutUserInput = { + where: user_sso_loginWhereUniqueInput + data: XOR + } + + export type user_sso_loginUpdateManyWithWhereWithoutUserInput = { + where: user_sso_loginScalarWhereInput + data: XOR + } + + export type user_statusUpsertWithWhereUniqueWithoutUserInput = { + where: user_statusWhereUniqueInput + update: XOR + create: XOR + } + + export type user_statusUpdateWithWhereUniqueWithoutUserInput = { + where: user_statusWhereUniqueInput + data: XOR + } + + export type user_statusUpdateManyWithWhereWithoutUserInput = { + where: user_statusScalarWhereInput + data: XOR + } + + export type user_statusScalarWhereInput = { + AND?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + OR?: user_statusScalarWhereInput[] + NOT?: user_statusScalarWhereInput | user_statusScalarWhereInput[] + user_id?: DecimalFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFilter<"user_status"> | Decimal | DecimalJsLike | number | string + user_status_id?: DecimalNullableFilter<"user_status"> | Decimal | DecimalJsLike | number | string | null + } + + export type user_email_xrefUpsertWithWhereUniqueWithoutUserInput = { + where: user_email_xrefWhereUniqueInput + update: XOR + create: XOR + } + + export type user_email_xrefUpdateWithWhereUniqueWithoutUserInput = { + where: user_email_xrefWhereUniqueInput + data: XOR + } + + export type user_email_xrefUpdateManyWithWhereWithoutUserInput = { + where: user_email_xrefScalarWhereInput + data: XOR + } + + export type emailUpsertWithWhereUniqueWithoutUserInput = { + where: emailWhereUniqueInput + update: XOR + create: XOR + } + + export type emailUpdateWithWhereUniqueWithoutUserInput = { + where: emailWhereUniqueInput + data: XOR + } + + export type emailUpdateManyWithWhereWithoutUserInput = { + where: emailScalarWhereInput + data: XOR + } + + export type userCreateWithoutUser_2faInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_2faInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_2faInput = { + where: userWhereUniqueInput + create: XOR + } + + export type userUpsertWithoutUser_2faInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_2faInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_2faInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_2faInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type achievement_type_luCreateWithoutUser_achievementInput = { + achievement_type_id: Decimal | DecimalJsLike | number | string + achievement_type_desc: string + } + + export type achievement_type_luUncheckedCreateWithoutUser_achievementInput = { + achievement_type_id: Decimal | DecimalJsLike | number | string + achievement_type_desc: string + } + + export type achievement_type_luCreateOrConnectWithoutUser_achievementInput = { + where: achievement_type_luWhereUniqueInput + create: XOR + } + + export type userCreateWithoutUser_achievementInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_achievementInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_achievementInput = { + where: userWhereUniqueInput + create: XOR + } + + export type achievement_type_luUpsertWithoutUser_achievementInput = { + update: XOR + create: XOR + where?: achievement_type_luWhereInput + } + + export type achievement_type_luUpdateToOneWithWhereWithoutUser_achievementInput = { + where?: achievement_type_luWhereInput + data: XOR + } + + export type achievement_type_luUpdateWithoutUser_achievementInput = { + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFieldUpdateOperationsInput | string + } + + export type achievement_type_luUncheckedUpdateWithoutUser_achievementInput = { + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_type_desc?: StringFieldUpdateOperationsInput | string + } + + export type userUpsertWithoutUser_achievementInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_achievementInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_achievementInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_achievementInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type security_userCreateWithoutUser_group_xrefInput = { + login_id: Decimal | DecimalJsLike | number | string + user_id: string + password: string + create_user_id?: Decimal | DecimalJsLike | number | string | null + modify_date?: Date | string | null + } + + export type security_userUncheckedCreateWithoutUser_group_xrefInput = { + login_id: Decimal | DecimalJsLike | number | string + user_id: string + password: string + create_user_id?: Decimal | DecimalJsLike | number | string | null + modify_date?: Date | string | null + } + + export type security_userCreateOrConnectWithoutUser_group_xrefInput = { + where: security_userWhereUniqueInput + create: XOR + } + + export type security_groupsCreateWithoutUser_group_xrefInput = { + group_id: Decimal | DecimalJsLike | number | string + description: string + challenge_group_ind?: number + create_user_id?: Decimal | DecimalJsLike | number | string | null + } + + export type security_groupsUncheckedCreateWithoutUser_group_xrefInput = { + group_id: Decimal | DecimalJsLike | number | string + description: string + challenge_group_ind?: number + create_user_id?: Decimal | DecimalJsLike | number | string | null + } + + export type security_groupsCreateOrConnectWithoutUser_group_xrefInput = { + where: security_groupsWhereUniqueInput + create: XOR + } + + export type security_status_luCreateWithoutUser_group_xrefInput = { + security_status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + } + + export type security_status_luUncheckedCreateWithoutUser_group_xrefInput = { + security_status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + } + + export type security_status_luCreateOrConnectWithoutUser_group_xrefInput = { + where: security_status_luWhereUniqueInput + create: XOR + } + + export type security_userUpsertWithoutUser_group_xrefInput = { + update: XOR + create: XOR + where?: security_userWhereInput + } + + export type security_userUpdateToOneWithWhereWithoutUser_group_xrefInput = { + where?: security_userWhereInput + data: XOR + } + + export type security_userUpdateWithoutUser_group_xrefInput = { + login_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_id?: StringFieldUpdateOperationsInput | string + password?: StringFieldUpdateOperationsInput | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type security_userUncheckedUpdateWithoutUser_group_xrefInput = { + login_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_id?: StringFieldUpdateOperationsInput | string + password?: StringFieldUpdateOperationsInput | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type security_groupsUpsertWithoutUser_group_xrefInput = { + update: XOR + create: XOR + where?: security_groupsWhereInput + } + + export type security_groupsUpdateToOneWithWhereWithoutUser_group_xrefInput = { + where?: security_groupsWhereInput + data: XOR + } + + export type security_groupsUpdateWithoutUser_group_xrefInput = { + group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: StringFieldUpdateOperationsInput | string + challenge_group_ind?: IntFieldUpdateOperationsInput | number + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type security_groupsUncheckedUpdateWithoutUser_group_xrefInput = { + group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: StringFieldUpdateOperationsInput | string + challenge_group_ind?: IntFieldUpdateOperationsInput | number + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type security_status_luUpsertWithoutUser_group_xrefInput = { + update: XOR + create: XOR + where?: security_status_luWhereInput + } + + export type security_status_luUpdateToOneWithWhereWithoutUser_group_xrefInput = { + where?: security_status_luWhereInput + data: XOR + } + + export type security_status_luUpdateWithoutUser_group_xrefInput = { + security_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type security_status_luUncheckedUpdateWithoutUser_group_xrefInput = { + security_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type userCreateWithoutUser_otp_emailInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_otp_emailInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_otp_emailInput = { + where: userWhereUniqueInput + create: XOR + } + + export type userUpsertWithoutUser_otp_emailInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_otp_emailInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_otp_emailInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_otp_emailInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type social_login_providerCreateWithoutUser_social_loginInput = { + social_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + } + + export type social_login_providerUncheckedCreateWithoutUser_social_loginInput = { + social_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + } + + export type social_login_providerCreateOrConnectWithoutUser_social_loginInput = { + where: social_login_providerWhereUniqueInput + create: XOR + } + + export type userCreateWithoutUser_social_loginInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_social_loginInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_social_loginInput = { + where: userWhereUniqueInput + create: XOR + } + + export type social_login_providerUpsertWithoutUser_social_loginInput = { + update: XOR + create: XOR + where?: social_login_providerWhereInput + } + + export type social_login_providerUpdateToOneWithWhereWithoutUser_social_loginInput = { + where?: social_login_providerWhereInput + data: XOR + } + + export type social_login_providerUpdateWithoutUser_social_loginInput = { + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type social_login_providerUncheckedUpdateWithoutUser_social_loginInput = { + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type userUpsertWithoutUser_social_loginInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_social_loginInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_social_loginInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_social_loginInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type sso_login_providerCreateWithoutUser_sso_loginInput = { + sso_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + type: string + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + } + + export type sso_login_providerUncheckedCreateWithoutUser_sso_loginInput = { + sso_login_provider_id: Decimal | DecimalJsLike | number | string + name?: string | null + type: string + identify_email_enabled?: boolean + identify_handle_enabled?: boolean + } + + export type sso_login_providerCreateOrConnectWithoutUser_sso_loginInput = { + where: sso_login_providerWhereUniqueInput + create: XOR + } + + export type userCreateWithoutUser_sso_loginInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_sso_loginInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_sso_loginInput = { + where: userWhereUniqueInput + create: XOR + } + + export type sso_login_providerUpsertWithoutUser_sso_loginInput = { + update: XOR + create: XOR + where?: sso_login_providerWhereInput + } + + export type sso_login_providerUpdateToOneWithWhereWithoutUser_sso_loginInput = { + where?: sso_login_providerWhereInput + data: XOR + } + + export type sso_login_providerUpdateWithoutUser_sso_loginInput = { + sso_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + type?: StringFieldUpdateOperationsInput | string + identify_email_enabled?: BoolFieldUpdateOperationsInput | boolean + identify_handle_enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type sso_login_providerUncheckedUpdateWithoutUser_sso_loginInput = { + sso_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + name?: NullableStringFieldUpdateOperationsInput | string | null + type?: StringFieldUpdateOperationsInput | string + identify_email_enabled?: BoolFieldUpdateOperationsInput | boolean + identify_handle_enabled?: BoolFieldUpdateOperationsInput | boolean + } + + export type userUpsertWithoutUser_sso_loginInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_sso_loginInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_sso_loginInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_sso_loginInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type userCreateWithoutUser_statusInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_statusInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_email_xref?: user_email_xrefUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_statusInput = { + where: userWhereUniqueInput + create: XOR + } + + export type user_status_luCreateWithoutUser_statusInput = { + user_status_id: Decimal | DecimalJsLike | number | string + description?: string | null + } + + export type user_status_luUncheckedCreateWithoutUser_statusInput = { + user_status_id: Decimal | DecimalJsLike | number | string + description?: string | null + } + + export type user_status_luCreateOrConnectWithoutUser_statusInput = { + where: user_status_luWhereUniqueInput + create: XOR + } + + export type user_status_type_luCreateWithoutUser_statusInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + } + + export type user_status_type_luUncheckedCreateWithoutUser_statusInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + } + + export type user_status_type_luCreateOrConnectWithoutUser_statusInput = { + where: user_status_type_luWhereUniqueInput + create: XOR + } + + export type userUpsertWithoutUser_statusInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_statusInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_statusInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_statusInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type user_status_luUpsertWithoutUser_statusInput = { + update: XOR + create: XOR + where?: user_status_luWhereInput + } + + export type user_status_luUpdateToOneWithWhereWithoutUser_statusInput = { + where?: user_status_luWhereInput + data: XOR + } + + export type user_status_luUpdateWithoutUser_statusInput = { + user_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_status_luUncheckedUpdateWithoutUser_statusInput = { + user_status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_status_type_luUpsertWithoutUser_statusInput = { + update: XOR + create: XOR + where?: user_status_type_luWhereInput + } + + export type user_status_type_luUpdateToOneWithWhereWithoutUser_statusInput = { + where?: user_status_type_luWhereInput + data: XOR + } + + export type user_status_type_luUpdateWithoutUser_statusInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_status_type_luUncheckedUpdateWithoutUser_statusInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_statusCreateWithoutUser_status_luInput = { + user: userCreateNestedOneWithoutUser_statusInput + user_status_type_lu: user_status_type_luCreateNestedOneWithoutUser_statusInput + } + + export type user_statusUncheckedCreateWithoutUser_status_luInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_type_id: Decimal | DecimalJsLike | number | string + } + + export type user_statusCreateOrConnectWithoutUser_status_luInput = { + where: user_statusWhereUniqueInput + create: XOR + } + + export type user_statusCreateManyUser_status_luInputEnvelope = { + data: user_statusCreateManyUser_status_luInput | user_statusCreateManyUser_status_luInput[] + skipDuplicates?: boolean + } + + export type user_statusUpsertWithWhereUniqueWithoutUser_status_luInput = { + where: user_statusWhereUniqueInput + update: XOR + create: XOR + } + + export type user_statusUpdateWithWhereUniqueWithoutUser_status_luInput = { + where: user_statusWhereUniqueInput + data: XOR + } + + export type user_statusUpdateManyWithWhereWithoutUser_status_luInput = { + where: user_statusScalarWhereInput + data: XOR + } + + export type user_statusCreateWithoutUser_status_type_luInput = { + user: userCreateNestedOneWithoutUser_statusInput + user_status_lu?: user_status_luCreateNestedOneWithoutUser_statusInput + } + + export type user_statusUncheckedCreateWithoutUser_status_type_luInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_statusCreateOrConnectWithoutUser_status_type_luInput = { + where: user_statusWhereUniqueInput + create: XOR + } + + export type user_statusCreateManyUser_status_type_luInputEnvelope = { + data: user_statusCreateManyUser_status_type_luInput | user_statusCreateManyUser_status_type_luInput[] + skipDuplicates?: boolean + } + + export type user_statusUpsertWithWhereUniqueWithoutUser_status_type_luInput = { + where: user_statusWhereUniqueInput + update: XOR + create: XOR + } + + export type user_statusUpdateWithWhereUniqueWithoutUser_status_type_luInput = { + where: user_statusWhereUniqueInput + data: XOR + } + + export type user_statusUpdateManyWithWhereWithoutUser_status_type_luInput = { + where: user_statusScalarWhereInput + data: XOR + } + + export type userCreateWithoutUser_email_xrefInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionCreateNestedOneWithoutUserInput + user_2fa?: user_2faCreateNestedOneWithoutUserInput + user_achievement?: user_achievementCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginCreateNestedManyWithoutUserInput + user_status?: user_statusCreateNestedManyWithoutUserInput + emails?: emailCreateNestedManyWithoutUserInput + } + + export type userUncheckedCreateWithoutUser_email_xrefInput = { + user_id?: Decimal | DecimalJsLike | number | string + first_name?: string | null + last_name?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + handle: string + last_login?: Date | string | null + status: string + activation_code?: string | null + middle_name?: string | null + handle_lower?: string | null + timezone_id?: Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: Date | string | null + name_in_another_language?: string | null + password?: string | null + open_id?: string | null + reg_source?: string | null + utm_source?: string | null + utm_medium?: string | null + utm_campaign?: string | null + dice_connection?: dice_connectionUncheckedCreateNestedOneWithoutUserInput + user_2fa?: user_2faUncheckedCreateNestedOneWithoutUserInput + user_achievement?: user_achievementUncheckedCreateNestedManyWithoutUserInput + user_otp_email?: user_otp_emailUncheckedCreateNestedManyWithoutUserInput + user_social_login?: user_social_loginUncheckedCreateNestedManyWithoutUserInput + user_sso_login?: user_sso_loginUncheckedCreateNestedManyWithoutUserInput + user_status?: user_statusUncheckedCreateNestedManyWithoutUserInput + emails?: emailUncheckedCreateNestedManyWithoutUserInput + } + + export type userCreateOrConnectWithoutUser_email_xrefInput = { + where: userWhereUniqueInput + create: XOR + } + + export type emailCreateWithoutUser_email_xrefInput = { + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luCreateNestedOneWithoutEmailInput + email_type_lu?: email_type_luCreateNestedOneWithoutEmailInput + user?: userCreateNestedOneWithoutEmailsInput + } + + export type emailUncheckedCreateWithoutUser_email_xrefInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type emailCreateOrConnectWithoutUser_email_xrefInput = { + where: emailWhereUniqueInput + create: XOR + } + + export type email_status_luCreateWithoutUser_email_xrefInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + email?: emailCreateNestedManyWithoutEmail_status_luInput + } + + export type email_status_luUncheckedCreateWithoutUser_email_xrefInput = { + status_id: Decimal | DecimalJsLike | number | string + status_desc?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + email?: emailUncheckedCreateNestedManyWithoutEmail_status_luInput + } + + export type email_status_luCreateOrConnectWithoutUser_email_xrefInput = { + where: email_status_luWhereUniqueInput + create: XOR + } + + export type userUpsertWithoutUser_email_xrefInput = { + update: XOR + create: XOR + where?: userWhereInput + } + + export type userUpdateToOneWithWhereWithoutUser_email_xrefInput = { + where?: userWhereInput + data: XOR + } + + export type userUpdateWithoutUser_email_xrefInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUpdateManyWithoutUserNestedInput + user_status?: user_statusUpdateManyWithoutUserNestedInput + emails?: emailUpdateManyWithoutUserNestedInput + } + + export type userUncheckedUpdateWithoutUser_email_xrefInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + first_name?: NullableStringFieldUpdateOperationsInput | string | null + last_name?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + handle?: StringFieldUpdateOperationsInput | string + last_login?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: StringFieldUpdateOperationsInput | string + activation_code?: NullableStringFieldUpdateOperationsInput | string | null + middle_name?: NullableStringFieldUpdateOperationsInput | string | null + handle_lower?: NullableStringFieldUpdateOperationsInput | string | null + timezone_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + last_site_hit_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + name_in_another_language?: NullableStringFieldUpdateOperationsInput | string | null + password?: NullableStringFieldUpdateOperationsInput | string | null + open_id?: NullableStringFieldUpdateOperationsInput | string | null + reg_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_source?: NullableStringFieldUpdateOperationsInput | string | null + utm_medium?: NullableStringFieldUpdateOperationsInput | string | null + utm_campaign?: NullableStringFieldUpdateOperationsInput | string | null + dice_connection?: dice_connectionUncheckedUpdateOneWithoutUserNestedInput + user_2fa?: user_2faUncheckedUpdateOneWithoutUserNestedInput + user_achievement?: user_achievementUncheckedUpdateManyWithoutUserNestedInput + user_otp_email?: user_otp_emailUncheckedUpdateManyWithoutUserNestedInput + user_social_login?: user_social_loginUncheckedUpdateManyWithoutUserNestedInput + user_sso_login?: user_sso_loginUncheckedUpdateManyWithoutUserNestedInput + user_status?: user_statusUncheckedUpdateManyWithoutUserNestedInput + emails?: emailUncheckedUpdateManyWithoutUserNestedInput + } + + export type emailUpsertWithoutUser_email_xrefInput = { + update: XOR + create: XOR + where?: emailWhereInput + } + + export type emailUpdateToOneWithWhereWithoutUser_email_xrefInput = { + where?: emailWhereInput + data: XOR + } + + export type emailUpdateWithoutUser_email_xrefInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luUpdateOneWithoutEmailNestedInput + email_type_lu?: email_type_luUpdateOneWithoutEmailNestedInput + user?: userUpdateOneWithoutEmailsNestedInput + } + + export type emailUncheckedUpdateWithoutUser_email_xrefInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type email_status_luUpsertWithoutUser_email_xrefInput = { + update: XOR + create: XOR + where?: email_status_luWhereInput + } + + export type email_status_luUpdateToOneWithWhereWithoutUser_email_xrefInput = { + where?: email_status_luWhereInput + data: XOR + } + + export type email_status_luUpdateWithoutUser_email_xrefInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUpdateManyWithoutEmail_status_luNestedInput + } + + export type email_status_luUncheckedUpdateWithoutUser_email_xrefInput = { + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + status_desc?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUncheckedUpdateManyWithoutEmail_status_luNestedInput + } + + export type RoleAssignmentCreateWithoutRoleInput = { + subjectId: number + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + subjectType?: number + } + + export type RoleAssignmentUncheckedCreateWithoutRoleInput = { + id?: number + subjectId: number + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + subjectType?: number + } + + export type RoleAssignmentCreateOrConnectWithoutRoleInput = { + where: RoleAssignmentWhereUniqueInput + create: XOR + } + + export type RoleAssignmentCreateManyRoleInputEnvelope = { + data: RoleAssignmentCreateManyRoleInput | RoleAssignmentCreateManyRoleInput[] + skipDuplicates?: boolean + } + + export type RoleAssignmentUpsertWithWhereUniqueWithoutRoleInput = { + where: RoleAssignmentWhereUniqueInput + update: XOR + create: XOR + } + + export type RoleAssignmentUpdateWithWhereUniqueWithoutRoleInput = { + where: RoleAssignmentWhereUniqueInput + data: XOR + } + + export type RoleAssignmentUpdateManyWithWhereWithoutRoleInput = { + where: RoleAssignmentScalarWhereInput + data: XOR + } + + export type RoleAssignmentScalarWhereInput = { + AND?: RoleAssignmentScalarWhereInput | RoleAssignmentScalarWhereInput[] + OR?: RoleAssignmentScalarWhereInput[] + NOT?: RoleAssignmentScalarWhereInput | RoleAssignmentScalarWhereInput[] + id?: IntFilter<"RoleAssignment"> | number + roleId?: IntFilter<"RoleAssignment"> | number + subjectId?: IntFilter<"RoleAssignment"> | number + createdBy?: IntNullableFilter<"RoleAssignment"> | number | null + createdAt?: DateTimeNullableFilter<"RoleAssignment"> | Date | string | null + modifiedBy?: IntNullableFilter<"RoleAssignment"> | number | null + modifiedAt?: DateTimeNullableFilter<"RoleAssignment"> | Date | string | null + subjectType?: IntFilter<"RoleAssignment"> | number + } + + export type RoleCreateWithoutRoleAssignmentsInput = { + name: string + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + } + + export type RoleUncheckedCreateWithoutRoleAssignmentsInput = { + id?: number + name: string + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + } + + export type RoleCreateOrConnectWithoutRoleAssignmentsInput = { + where: RoleWhereUniqueInput + create: XOR + } + + export type RoleUpsertWithoutRoleAssignmentsInput = { + update: XOR + create: XOR + where?: RoleWhereInput + } + + export type RoleUpdateToOneWithWhereWithoutRoleAssignmentsInput = { + where?: RoleWhereInput + data: XOR + } + + export type RoleUpdateWithoutRoleAssignmentsInput = { + name?: StringFieldUpdateOperationsInput | string + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type RoleUncheckedUpdateWithoutRoleAssignmentsInput = { + id?: IntFieldUpdateOperationsInput | number + name?: StringFieldUpdateOperationsInput | string + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_achievementCreateManyAchievement_type_luInput = { + user_id: Decimal | DecimalJsLike | number | string + achievement_date: Date | string + description?: string | null + create_date?: Date | string | null + } + + export type user_achievementUpdateWithoutAchievement_type_luInput = { + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user?: userUpdateOneRequiredWithoutUser_achievementNestedInput + } + + export type user_achievementUncheckedUpdateWithoutAchievement_type_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_achievementUncheckedUpdateManyWithoutAchievement_type_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefCreateManyEmailInput = { + user_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + status_id: Decimal | DecimalJsLike | number | string + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_email_xrefUpdateWithoutEmailInput = { + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user?: userUpdateOneRequiredWithoutUser_email_xrefNestedInput + email_status_lu?: email_status_luUpdateOneWithoutUser_email_xrefNestedInput + } + + export type user_email_xrefUncheckedUpdateWithoutEmailInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefUncheckedUpdateManyWithoutEmailInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type emailCreateManyEmail_status_luInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + } + + export type user_email_xrefCreateManyEmail_status_luInput = { + user_id: Decimal | DecimalJsLike | number | string + email_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type emailUpdateWithoutEmail_status_luInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_type_lu?: email_type_luUpdateOneWithoutEmailNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutEmailNestedInput + user?: userUpdateOneWithoutEmailsNestedInput + } + + export type emailUncheckedUpdateWithoutEmail_status_luInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutEmailNestedInput + } + + export type emailUncheckedUpdateManyWithoutEmail_status_luInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_email_xrefUpdateWithoutEmail_status_luInput = { + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user?: userUpdateOneRequiredWithoutUser_email_xrefNestedInput + email?: emailUpdateOneRequiredWithoutUser_email_xrefNestedInput + } + + export type user_email_xrefUncheckedUpdateWithoutEmail_status_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefUncheckedUpdateManyWithoutEmail_status_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type emailCreateManyEmail_type_luInput = { + user_id?: Decimal | DecimalJsLike | number | string | null + email_id?: Decimal | DecimalJsLike | number | string + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type emailUpdateWithoutEmail_type_luInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luUpdateOneWithoutEmailNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutEmailNestedInput + user?: userUpdateOneWithoutEmailsNestedInput + } + + export type emailUncheckedUpdateWithoutEmail_type_luInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutEmailNestedInput + } + + export type emailUncheckedUpdateManyWithoutEmail_type_luInput = { + user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_group_xrefCreateManySecurity_groupsInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + login_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + security_status_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefUpdateWithoutSecurity_groupsInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + security_user?: security_userUpdateOneWithoutUser_group_xrefNestedInput + security_status_lu?: security_status_luUpdateOneWithoutUser_group_xrefNestedInput + } + + export type user_group_xrefUncheckedUpdateWithoutSecurity_groupsInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + login_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + security_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefUncheckedUpdateManyWithoutSecurity_groupsInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + login_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + security_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefCreateManySecurity_status_luInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + login_id?: Decimal | DecimalJsLike | number | string | null + group_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefUpdateWithoutSecurity_status_luInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + security_user?: security_userUpdateOneWithoutUser_group_xrefNestedInput + security_groups?: security_groupsUpdateOneWithoutUser_group_xrefNestedInput + } + + export type user_group_xrefUncheckedUpdateWithoutSecurity_status_luInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + login_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + group_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefUncheckedUpdateManyWithoutSecurity_status_luInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + login_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + group_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefCreateManySecurity_userInput = { + user_group_id?: Decimal | DecimalJsLike | number | string + group_id?: Decimal | DecimalJsLike | number | string | null + create_user_id?: Decimal | DecimalJsLike | number | string | null + security_status_id?: Decimal | DecimalJsLike | number | string | null + create_date?: Date | string | null + } + + export type user_group_xrefUpdateWithoutSecurity_userInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + security_groups?: security_groupsUpdateOneWithoutUser_group_xrefNestedInput + security_status_lu?: security_status_luUpdateOneWithoutUser_group_xrefNestedInput + } + + export type user_group_xrefUncheckedUpdateWithoutSecurity_userInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + group_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + security_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_group_xrefUncheckedUpdateManyWithoutSecurity_userInput = { + user_group_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + group_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_user_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + security_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_social_loginCreateManySocial_login_providerInput = { + social_user_id?: string | null + user_id: Decimal | DecimalJsLike | number | string + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_social_loginUpdateWithoutSocial_login_providerInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + user?: userUpdateOneRequiredWithoutUser_social_loginNestedInput + } + + export type user_social_loginUncheckedUpdateWithoutSocial_login_providerInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_social_loginUncheckedUpdateManyWithoutSocial_login_providerInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_sso_loginCreateManySso_login_providerInput = { + user_id: Decimal | DecimalJsLike | number | string + sso_user_id: string + sso_user_name?: string | null + email?: string | null + } + + export type user_sso_loginUpdateWithoutSso_login_providerInput = { + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + user?: userUpdateOneRequiredWithoutUser_sso_loginNestedInput + } + + export type user_sso_loginUncheckedUpdateWithoutSso_login_providerInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_sso_loginUncheckedUpdateManyWithoutSso_login_providerInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_achievementCreateManyUserInput = { + achievement_date: Date | string + achievement_type_id: Decimal | DecimalJsLike | number | string + description?: string | null + create_date?: Date | string | null + } + + export type user_otp_emailCreateManyUserInput = { + id?: number + mode: number + otp: string + expire_at: Date | string + resend?: boolean + fail_count?: number + } + + export type user_social_loginCreateManyUserInput = { + social_user_id?: string | null + social_login_provider_id: Decimal | DecimalJsLike | number | string + social_user_name: string + social_email?: string | null + social_email_verified?: boolean | null + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type user_sso_loginCreateManyUserInput = { + sso_user_id: string + sso_user_name?: string | null + provider_id: Decimal | DecimalJsLike | number | string + email?: string | null + } + + export type user_statusCreateManyUserInput = { + user_status_type_id: Decimal | DecimalJsLike | number | string + user_status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_email_xrefCreateManyUserInput = { + email_id: Decimal | DecimalJsLike | number | string + is_primary: boolean + status_id: Decimal | DecimalJsLike | number | string + create_date?: Date | string | null + modify_date?: Date | string | null + } + + export type emailCreateManyUserInput = { + email_id?: Decimal | DecimalJsLike | number | string + email_type_id?: Decimal | DecimalJsLike | number | string | null + address?: string | null + create_date?: Date | string | null + modify_date?: Date | string | null + primary_ind?: Decimal | DecimalJsLike | number | string | null + status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_achievementUpdateWithoutUserInput = { + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + achievement_type_lu?: achievement_type_luUpdateOneRequiredWithoutUser_achievementNestedInput + } + + export type user_achievementUncheckedUpdateWithoutUserInput = { + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_achievementUncheckedUpdateManyWithoutUserInput = { + achievement_date?: DateTimeFieldUpdateOperationsInput | Date | string + achievement_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + description?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_otp_emailUpdateWithoutUserInput = { + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + } + + export type user_otp_emailUncheckedUpdateWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + } + + export type user_otp_emailUncheckedUpdateManyWithoutUserInput = { + id?: IntFieldUpdateOperationsInput | number + mode?: IntFieldUpdateOperationsInput | number + otp?: StringFieldUpdateOperationsInput | string + expire_at?: DateTimeFieldUpdateOperationsInput | Date | string + resend?: BoolFieldUpdateOperationsInput | boolean + fail_count?: IntFieldUpdateOperationsInput | number + } + + export type user_social_loginUpdateWithoutUserInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + social_login_provider?: social_login_providerUpdateOneRequiredWithoutUser_social_loginNestedInput + } + + export type user_social_loginUncheckedUpdateWithoutUserInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_social_loginUncheckedUpdateManyWithoutUserInput = { + social_user_id?: NullableStringFieldUpdateOperationsInput | string | null + social_login_provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + social_user_name?: StringFieldUpdateOperationsInput | string + social_email?: NullableStringFieldUpdateOperationsInput | string | null + social_email_verified?: NullableBoolFieldUpdateOperationsInput | boolean | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_sso_loginUpdateWithoutUserInput = { + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + email?: NullableStringFieldUpdateOperationsInput | string | null + sso_login_provider?: sso_login_providerUpdateOneRequiredWithoutUser_sso_loginNestedInput + } + + export type user_sso_loginUncheckedUpdateWithoutUserInput = { + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_sso_loginUncheckedUpdateManyWithoutUserInput = { + sso_user_id?: StringFieldUpdateOperationsInput | string + sso_user_name?: NullableStringFieldUpdateOperationsInput | string | null + provider_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email?: NullableStringFieldUpdateOperationsInput | string | null + } + + export type user_statusUpdateWithoutUserInput = { + user_status_lu?: user_status_luUpdateOneWithoutUser_statusNestedInput + user_status_type_lu?: user_status_type_luUpdateOneRequiredWithoutUser_statusNestedInput + } + + export type user_statusUncheckedUpdateWithoutUserInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_statusUncheckedUpdateManyWithoutUserInput = { + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_email_xrefUpdateWithoutUserInput = { + is_primary?: BoolFieldUpdateOperationsInput | boolean + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + email?: emailUpdateOneRequiredWithoutUser_email_xrefNestedInput + email_status_lu?: email_status_luUpdateOneWithoutUser_email_xrefNestedInput + } + + export type user_email_xrefUncheckedUpdateWithoutUserInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type user_email_xrefUncheckedUpdateManyWithoutUserInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + is_primary?: BoolFieldUpdateOperationsInput | boolean + status_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + } + + export type emailUpdateWithoutUserInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + email_status_lu?: email_status_luUpdateOneWithoutEmailNestedInput + email_type_lu?: email_type_luUpdateOneWithoutEmailNestedInput + user_email_xref?: user_email_xrefUpdateManyWithoutEmailNestedInput + } + + export type emailUncheckedUpdateWithoutUserInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + user_email_xref?: user_email_xrefUncheckedUpdateManyWithoutEmailNestedInput + } + + export type emailUncheckedUpdateManyWithoutUserInput = { + email_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + email_type_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + address?: NullableStringFieldUpdateOperationsInput | string | null + create_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modify_date?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + primary_ind?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_statusCreateManyUser_status_luInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_type_id: Decimal | DecimalJsLike | number | string + } + + export type user_statusUpdateWithoutUser_status_luInput = { + user?: userUpdateOneRequiredWithoutUser_statusNestedInput + user_status_type_lu?: user_status_type_luUpdateOneRequiredWithoutUser_statusNestedInput + } + + export type user_statusUncheckedUpdateWithoutUser_status_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + } + + export type user_statusUncheckedUpdateManyWithoutUser_status_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_type_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + } + + export type user_statusCreateManyUser_status_type_luInput = { + user_id: Decimal | DecimalJsLike | number | string + user_status_id?: Decimal | DecimalJsLike | number | string | null + } + + export type user_statusUpdateWithoutUser_status_type_luInput = { + user?: userUpdateOneRequiredWithoutUser_statusNestedInput + user_status_lu?: user_status_luUpdateOneWithoutUser_statusNestedInput + } + + export type user_statusUncheckedUpdateWithoutUser_status_type_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type user_statusUncheckedUpdateManyWithoutUser_status_type_luInput = { + user_id?: DecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string + user_status_id?: NullableDecimalFieldUpdateOperationsInput | Decimal | DecimalJsLike | number | string | null + } + + export type RoleAssignmentCreateManyRoleInput = { + id?: number + subjectId: number + createdBy?: number | null + createdAt?: Date | string | null + modifiedBy?: number | null + modifiedAt?: Date | string | null + subjectType?: number + } + + export type RoleAssignmentUpdateWithoutRoleInput = { + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + } + + export type RoleAssignmentUncheckedUpdateWithoutRoleInput = { + id?: IntFieldUpdateOperationsInput | number + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + } + + export type RoleAssignmentUncheckedUpdateManyWithoutRoleInput = { + id?: IntFieldUpdateOperationsInput | number + subjectId?: IntFieldUpdateOperationsInput | number + createdBy?: NullableIntFieldUpdateOperationsInput | number | null + createdAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + modifiedBy?: NullableIntFieldUpdateOperationsInput | number | null + modifiedAt?: NullableDateTimeFieldUpdateOperationsInput | Date | string | null + subjectType?: IntFieldUpdateOperationsInput | number + } + + + + /** + * Batch Payload for updateMany & deleteMany & createMany + */ + + export type BatchPayload = { + count: number + } + + /** + * DMMF + */ + export const dmmf: runtime.BaseDMMF +} \ No newline at end of file diff --git a/packages/identity-prisma-client/index.js b/packages/identity-prisma-client/index.js new file mode 100644 index 0000000..8583f7f --- /dev/null +++ b/packages/identity-prisma-client/index.js @@ -0,0 +1,477 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file + +Object.defineProperty(exports, "__esModule", { value: true }); + +const { + PrismaClientKnownRequestError, + PrismaClientUnknownRequestError, + PrismaClientRustPanicError, + PrismaClientInitializationError, + PrismaClientValidationError, + getPrismaClient, + sqltag, + empty, + join, + raw, + skip, + Decimal, + Debug, + objectEnumValues, + makeStrictEnum, + Extensions, + warnOnce, + defineDmmfProperty, + Public, + getRuntime, + createParam, +} = require('./runtime/library.js') + + +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} + +/** + * Prisma Client JS version: 6.19.1 + * Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7 + */ +Prisma.prismaVersion = { + client: "6.19.1", + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} + +Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError; +Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError +Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError +Prisma.PrismaClientInitializationError = PrismaClientInitializationError +Prisma.PrismaClientValidationError = PrismaClientValidationError +Prisma.Decimal = Decimal + +/** + * Re-export of sql-template-tag + */ +Prisma.sql = sqltag +Prisma.empty = empty +Prisma.join = join +Prisma.raw = raw +Prisma.validator = Public.validator + +/** +* Extensions +*/ +Prisma.getExtensionContext = Extensions.getExtensionContext +Prisma.defineExtension = Extensions.defineExtension + +/** + * Shorthand utilities for JSON filtering + */ +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull + +Prisma.NullTypes = { + DbNull: objectEnumValues.classes.DbNull, + JsonNull: objectEnumValues.classes.JsonNull, + AnyNull: objectEnumValues.classes.AnyNull +} + + + + + const path = require('path') + +/** + * Enums + */ +exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' +}); + +exports.Prisma.Achievement_type_luScalarFieldEnum = { + achievement_type_id: 'achievement_type_id', + achievement_type_desc: 'achievement_type_desc' +}; + +exports.Prisma.CountryScalarFieldEnum = { + country_code: 'country_code', + country_name: 'country_name', + modify_date: 'modify_date', + participating: 'participating', + default_taxform_id: 'default_taxform_id', + longitude: 'longitude', + latitude: 'latitude', + region: 'region', + iso_name: 'iso_name', + iso_alpha2_code: 'iso_alpha2_code', + iso_alpha3_code: 'iso_alpha3_code' +}; + +exports.Prisma.Dice_connectionScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + connection: 'connection', + accepted: 'accepted', + created_at: 'created_at', + short_url: 'short_url', + con_created_at: 'con_created_at' +}; + +exports.Prisma.EmailScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + email_type_id: 'email_type_id', + address: 'address', + create_date: 'create_date', + modify_date: 'modify_date', + primary_ind: 'primary_ind', + status_id: 'status_id' +}; + +exports.Prisma.Email_status_luScalarFieldEnum = { + status_id: 'status_id', + status_desc: 'status_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Email_type_luScalarFieldEnum = { + email_type_id: 'email_type_id', + email_type_desc: 'email_type_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Id_sequencesScalarFieldEnum = { + name: 'name', + next_block_start: 'next_block_start', + block_size: 'block_size', + exhausted: 'exhausted' +}; + +exports.Prisma.Invalid_handlesScalarFieldEnum = { + invalid_handle_id: 'invalid_handle_id', + invalid_handle: 'invalid_handle' +}; + +exports.Prisma.Security_groupsScalarFieldEnum = { + group_id: 'group_id', + description: 'description', + challenge_group_ind: 'challenge_group_ind', + create_user_id: 'create_user_id' +}; + +exports.Prisma.Security_status_luScalarFieldEnum = { + security_status_id: 'security_status_id', + status_desc: 'status_desc' +}; + +exports.Prisma.Security_userScalarFieldEnum = { + login_id: 'login_id', + user_id: 'user_id', + password: 'password', + create_user_id: 'create_user_id', + modify_date: 'modify_date' +}; + +exports.Prisma.Social_login_providerScalarFieldEnum = { + social_login_provider_id: 'social_login_provider_id', + name: 'name' +}; + +exports.Prisma.Sso_login_providerScalarFieldEnum = { + sso_login_provider_id: 'sso_login_provider_id', + name: 'name', + type: 'type', + identify_email_enabled: 'identify_email_enabled', + identify_handle_enabled: 'identify_handle_enabled' +}; + +exports.Prisma.UserScalarFieldEnum = { + user_id: 'user_id', + first_name: 'first_name', + last_name: 'last_name', + create_date: 'create_date', + modify_date: 'modify_date', + handle: 'handle', + last_login: 'last_login', + status: 'status', + activation_code: 'activation_code', + middle_name: 'middle_name', + handle_lower: 'handle_lower', + timezone_id: 'timezone_id', + last_site_hit_date: 'last_site_hit_date', + name_in_another_language: 'name_in_another_language', + password: 'password', + open_id: 'open_id', + reg_source: 'reg_source', + utm_source: 'utm_source', + utm_medium: 'utm_medium', + utm_campaign: 'utm_campaign' +}; + +exports.Prisma.User_2faScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mfa_enabled: 'mfa_enabled', + dice_enabled: 'dice_enabled', + created_by: 'created_by', + created_at: 'created_at', + modified_by: 'modified_by', + modified_at: 'modified_at' +}; + +exports.Prisma.User_achievementScalarFieldEnum = { + user_id: 'user_id', + achievement_date: 'achievement_date', + achievement_type_id: 'achievement_type_id', + description: 'description', + create_date: 'create_date' +}; + +exports.Prisma.User_group_xrefScalarFieldEnum = { + user_group_id: 'user_group_id', + login_id: 'login_id', + group_id: 'group_id', + create_user_id: 'create_user_id', + security_status_id: 'security_status_id', + create_date: 'create_date' +}; + +exports.Prisma.User_otp_emailScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mode: 'mode', + otp: 'otp', + expire_at: 'expire_at', + resend: 'resend', + fail_count: 'fail_count' +}; + +exports.Prisma.User_social_loginScalarFieldEnum = { + social_user_id: 'social_user_id', + user_id: 'user_id', + social_login_provider_id: 'social_login_provider_id', + social_user_name: 'social_user_name', + social_email: 'social_email', + social_email_verified: 'social_email_verified', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.User_sso_loginScalarFieldEnum = { + user_id: 'user_id', + sso_user_id: 'sso_user_id', + sso_user_name: 'sso_user_name', + provider_id: 'provider_id', + email: 'email' +}; + +exports.Prisma.User_statusScalarFieldEnum = { + user_id: 'user_id', + user_status_type_id: 'user_status_type_id', + user_status_id: 'user_status_id' +}; + +exports.Prisma.User_status_luScalarFieldEnum = { + user_status_id: 'user_status_id', + description: 'description' +}; + +exports.Prisma.User_status_type_luScalarFieldEnum = { + user_status_type_id: 'user_status_type_id', + description: 'description' +}; + +exports.Prisma.User_email_xrefScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + is_primary: 'is_primary', + status_id: 'status_id', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.ClientScalarFieldEnum = { + id: 'id', + clientId: 'clientId', + name: 'name', + redirectUri: 'redirectUri', + secret: 'secret', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleScalarFieldEnum = { + id: 'id', + name: 'name', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleAssignmentScalarFieldEnum = { + id: 'id', + roleId: 'roleId', + subjectId: 'subjectId', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt', + subjectType: 'subjectType' +}; + +exports.Prisma.SortOrder = { + asc: 'asc', + desc: 'desc' +}; + +exports.Prisma.QueryMode = { + default: 'default', + insensitive: 'insensitive' +}; + +exports.Prisma.NullsOrder = { + first: 'first', + last: 'last' +}; + + +exports.Prisma.ModelName = { + achievement_type_lu: 'achievement_type_lu', + country: 'country', + dice_connection: 'dice_connection', + email: 'email', + email_status_lu: 'email_status_lu', + email_type_lu: 'email_type_lu', + id_sequences: 'id_sequences', + invalid_handles: 'invalid_handles', + security_groups: 'security_groups', + security_status_lu: 'security_status_lu', + security_user: 'security_user', + social_login_provider: 'social_login_provider', + sso_login_provider: 'sso_login_provider', + user: 'user', + user_2fa: 'user_2fa', + user_achievement: 'user_achievement', + user_group_xref: 'user_group_xref', + user_otp_email: 'user_otp_email', + user_social_login: 'user_social_login', + user_sso_login: 'user_sso_login', + user_status: 'user_status', + user_status_lu: 'user_status_lu', + user_status_type_lu: 'user_status_type_lu', + user_email_xref: 'user_email_xref', + Client: 'Client', + Role: 'Role', + RoleAssignment: 'RoleAssignment' +}; +/** + * Create the Client + */ +const config = { + "generator": { + "name": "externalClient", + "provider": { + "fromEnvVar": null, + "value": "prisma-client-js" + }, + "output": { + "value": "/Users/hentrymartin/development/identity-api-v6/packages/identity-prisma-client", + "fromEnvVar": null + }, + "config": { + "engineType": "library" + }, + "binaryTargets": [ + { + "fromEnvVar": null, + "value": "darwin-arm64", + "native": true + }, + { + "fromEnvVar": null, + "value": "debian-openssl-3.0.x" + } + ], + "previewFeatures": [], + "sourceFilePath": "/Users/hentrymartin/development/identity-api-v6/prisma/schema.prisma", + "isCustomOutput": true + }, + "relativeEnvPaths": { + "rootEnvPath": null + }, + "relativePath": "../../prisma", + "clientVersion": "6.19.1", + "engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", + "datasourceNames": [ + "db" + ], + "activeProvider": "postgresql", + "postinstall": false, + "inlineDatasources": { + "db": { + "url": { + "fromEnvVar": "IDENTITY_DB_URL", + "value": null + } + } + }, + "inlineSchema": "generator client {\n provider = \"prisma-client-js\"\n previewFeatures = [\"multiSchema\"]\n}\n\ngenerator externalClient {\n provider = \"prisma-client-js\"\n output = \"../packages/identity-prisma-client\"\n binaryTargets = [\"native\", \"debian-openssl-3.0.x\"]\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"IDENTITY_DB_URL\")\n schemas = [\"identity\"]\n}\n\n// IDENTITY SCHEMA MODELS\n// (Introspected from existing database)\n// -----------------------------------------\n\nmodel achievement_type_lu {\n achievement_type_id Decimal @id(map: \"achv_type_lu_pkey\") @db.Decimal(5, 0)\n achievement_type_desc String @db.VarChar(64)\n user_achievement user_achievement[]\n\n @@schema(\"identity\")\n}\n\nmodel country {\n country_code String @id @db.VarChar(3)\n country_name String @db.VarChar(40)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n participating Decimal? @db.Decimal(1, 0)\n default_taxform_id Decimal? @db.Decimal(10, 0)\n longitude Decimal? @db.Decimal(10, 7)\n latitude Decimal? @db.Decimal(10, 7)\n region String? @db.VarChar(64)\n iso_name String? @db.VarChar(128)\n iso_alpha2_code String? @db.VarChar(2)\n iso_alpha3_code String? @db.VarChar(3)\n\n @@schema(\"identity\")\n}\n\nmodel dice_connection {\n id Int @id(map: \"dice_connection_pk\") @default(autoincrement())\n user_id Decimal @unique @db.Decimal(10, 0)\n connection String? @db.VarChar(50)\n accepted Boolean @default(false)\n created_at DateTime @default(now()) @db.Timestamp(6)\n short_url String? @db.VarChar(100)\n con_created_at DateTime? @db.Timestamp(6)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@index([connection])\n @@schema(\"identity\")\n}\n\nmodel email {\n user_id Decimal? @db.Decimal(10, 0)\n email_id Decimal @id(map: \"u110_23\") @default(dbgenerated(\"nextval('sequence_email_seq'::regclass)\")) @db.Decimal(10, 0)\n email_type_id Decimal? @db.Decimal(5, 0)\n address String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n primary_ind Decimal? @db.Decimal(1, 0)\n status_id Decimal? @db.Decimal(3, 0)\n email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id], onDelete: NoAction, onUpdate: NoAction, map: \"email_emailstatuslu_fk\")\n email_type_lu email_type_lu? @relation(fields: [email_type_id], references: [email_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"email_emailtypelu_fk\")\n user_email_xref user_email_xref[]\n user user? @relation(\"UserToEmail\", fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@index([user_id, primary_ind], map: \"email_user_id_idx\")\n @@index([user_id, email_type_id, status_id])\n @@index([address, status_id])\n @@schema(\"identity\")\n}\n\nmodel email_status_lu {\n status_id Decimal @id(map: \"email_status_lu_pk\") @db.Decimal(3, 0)\n status_desc String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n email email[]\n user_email_xref user_email_xref[] // Added back-relation to user_email_xref\n\n @@schema(\"identity\")\n}\n\nmodel email_type_lu {\n email_type_id Decimal @id(map: \"email_type_lu_pk\") @db.Decimal(5, 0)\n email_type_desc String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n email email[]\n\n @@schema(\"identity\")\n}\n\nmodel id_sequences {\n name String @id @db.VarChar(254)\n next_block_start Decimal @db.Decimal(12, 0)\n block_size Decimal @db.Decimal(10, 0)\n exhausted Decimal @default(0) @db.Decimal(1, 0)\n\n @@schema(\"identity\")\n}\n\nmodel invalid_handles {\n invalid_handle_id Int @id(map: \"pk_invalid_hand556\")\n invalid_handle String @db.VarChar(20)\n\n @@schema(\"identity\")\n}\n\nmodel security_groups {\n group_id Decimal @id(map: \"pk_security_groups\") @db.Decimal(12, 0)\n description String @db.VarChar(254)\n challenge_group_ind Int @default(0) @db.SmallInt\n create_user_id Decimal? @db.Decimal(12, 0)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel security_status_lu {\n security_status_id Decimal @id(map: \"securitystatuslu_pkey\") @db.Decimal(3, 0)\n status_desc String? @db.VarChar(200)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel security_user {\n login_id Decimal @id(map: \"pk_security_user\") @db.Decimal(12, 0)\n user_id String @unique(map: \"security_user_i2\") @db.VarChar(50)\n password String @db.VarChar(300)\n create_user_id Decimal? @db.Decimal(12, 0)\n modify_date DateTime? @db.Timestamp(6)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel social_login_provider {\n social_login_provider_id Decimal @id(map: \"social_provider_prkey\") @db.Decimal(10, 0)\n name String? @db.VarChar(50)\n user_social_login user_social_login[]\n\n @@schema(\"identity\")\n}\n\nmodel sso_login_provider {\n sso_login_provider_id Decimal @id(map: \"sso_provider_prkey\") @db.Decimal(10, 0)\n name String? @db.VarChar(50)\n type String @db.VarChar(50)\n identify_email_enabled Boolean @default(true)\n identify_handle_enabled Boolean @default(true)\n user_sso_login user_sso_login[]\n\n @@schema(\"identity\")\n}\n\nmodel user {\n user_id Decimal @id(map: \"u175_45\") @default(dbgenerated(\"nextval('sequence_user_seq'::regclass)\")) @db.Decimal(10, 0)\n first_name String? @db.VarChar(64)\n last_name String? @db.VarChar(64)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n handle String @db.VarChar(50)\n last_login DateTime? @db.Timestamp(6)\n status String @db.VarChar(3)\n activation_code String? @db.VarChar(32)\n middle_name String? @db.VarChar(64)\n handle_lower String? @db.VarChar(50)\n timezone_id Decimal? @db.Decimal(5, 0)\n last_site_hit_date DateTime? @db.Timestamp(6)\n name_in_another_language String? @db.VarChar(64)\n password String? @db.VarChar(16)\n open_id String? @db.VarChar(200)\n reg_source String? @db.VarChar(20)\n utm_source String? @db.VarChar(50)\n utm_medium String? @db.VarChar(50)\n utm_campaign String? @db.VarChar(50)\n dice_connection dice_connection?\n user_2fa user_2fa?\n user_achievement user_achievement[]\n user_otp_email user_otp_email[]\n user_social_login user_social_login[]\n user_sso_login user_sso_login[]\n user_status user_status[]\n user_email_xref user_email_xref[]\n emails email[] @relation(\"UserToEmail\")\n\n @@index([activation_code], map: \"user_activ_code_idx\")\n @@index([handle])\n @@index([handle_lower], map: \"user_lower_handle_idx\")\n @@index([open_id])\n @@index([status, handle_lower])\n @@schema(\"identity\")\n}\n\nmodel user_2fa {\n id Int @id(map: \"user_2fa_pk\") @default(autoincrement())\n user_id Decimal @unique @db.Decimal(10, 0)\n mfa_enabled Boolean @default(false)\n dice_enabled Boolean @default(false)\n created_by Decimal @db.Decimal(10, 0)\n created_at DateTime @default(now()) @db.Timestamp(6)\n modified_by Decimal @db.Decimal(10, 0)\n modified_at DateTime @default(now()) @db.Timestamp(6)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@schema(\"identity\")\n}\n\n/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.\nmodel user_achievement {\n user_id Decimal @db.Decimal(10, 0) // Made non-nullable for PK\n achievement_date DateTime @db.Date\n achievement_type_id Decimal @db.Decimal(5, 0)\n description String? @db.VarChar(255)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n achievement_type_lu achievement_type_lu @relation(fields: [achievement_type_id], references: [achievement_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"achv_type_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"achv_user_fk\") // Made user relation non-nullable as user_id is non-nullable\n\n // Define composite primary key\n @@id([user_id, achievement_type_id], map: \"user_achievement_pkey\") // Added @@id\n // @@ignore // Removed @@ignore\n @@schema(\"identity\")\n}\n\nmodel user_group_xref {\n user_group_id Decimal @id(map: \"pk_user_group_xref\") @default(dbgenerated(\"nextval('sequence_user_group_seq'::regclass)\")) @db.Decimal(12, 0)\n login_id Decimal? @db.Decimal(12, 0)\n group_id Decimal? @db.Decimal(12, 0)\n create_user_id Decimal? @db.Decimal(12, 0)\n security_status_id Decimal? @db.Decimal(3, 0)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n security_user security_user? @relation(fields: [login_id], references: [login_id], onDelete: Cascade, onUpdate: NoAction, map: \"fk_user_grp_xref1\")\n security_groups security_groups? @relation(fields: [group_id], references: [group_id], onDelete: Cascade, onUpdate: NoAction, map: \"fk_user_grp_xref2\")\n security_status_lu security_status_lu? @relation(fields: [security_status_id], references: [security_status_id], onDelete: NoAction, onUpdate: NoAction, map: \"usergroupxref_status_fk\")\n\n @@unique([login_id, group_id], map: \"user_grp_xref_i2\")\n @@schema(\"identity\")\n}\n\nmodel user_otp_email {\n id Int @id(map: \"user_otp_email_pk\") @default(autoincrement())\n user_id Decimal @db.Decimal(10, 0)\n mode Int @db.SmallInt\n otp String @db.VarChar(6)\n expire_at DateTime @db.Timestamp(6)\n resend Boolean @default(false)\n fail_count Int @default(0) @db.SmallInt\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@unique([user_id, mode])\n @@schema(\"identity\")\n}\n\nmodel user_social_login {\n social_user_id String? @db.VarChar(254)\n user_id Decimal @db.Decimal(10, 0)\n social_login_provider_id Decimal @db.Decimal(10, 0)\n social_user_name String @db.VarChar(100)\n social_email String? @db.VarChar(100)\n social_email_verified Boolean?\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @db.Timestamp(6)\n social_login_provider social_login_provider @relation(fields: [social_login_provider_id], references: [social_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_social_provider_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_social_user_fk\")\n\n @@id([user_id, social_login_provider_id], map: \"user_social_prkey\")\n @@index([social_user_id, social_login_provider_id])\n @@schema(\"identity\")\n}\n\nmodel user_sso_login {\n user_id Decimal @db.Decimal(10, 0)\n sso_user_id String @db.VarChar(100)\n sso_user_name String? @db.VarChar(100)\n provider_id Decimal @db.Decimal(10, 0)\n email String? @db.VarChar(100)\n sso_login_provider sso_login_provider @relation(fields: [provider_id], references: [sso_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_sso_login_provider_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_sso_login_user_fk\")\n\n @@id([user_id, provider_id], map: \"user_sso_prkey\") // Primary key\n @@index([sso_user_id, provider_id], map: \"idx_user_social_login_sso_user_id_provider_id\") // Index only, NOT unique\n @@schema(\"identity\")\n}\n\nmodel user_status {\n user_id Decimal @db.Decimal(10, 0)\n user_status_type_id Decimal @db.Decimal(3, 0)\n user_status_id Decimal? @db.Decimal(5, 0)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_user_fk\")\n user_status_lu user_status_lu? @relation(fields: [user_status_id], references: [user_status_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_userstatuslu_fk\")\n user_status_type_lu user_status_type_lu @relation(fields: [user_status_type_id], references: [user_status_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_userstatustype_fk\")\n\n @@id([user_id, user_status_type_id], map: \"userstatus_pk\")\n @@schema(\"identity\")\n}\n\nmodel user_status_lu {\n user_status_id Decimal @id(map: \"u113_26\") @db.Decimal(5, 0)\n description String? @db.VarChar(100)\n user_status user_status[]\n\n @@schema(\"identity\")\n}\n\nmodel user_status_type_lu {\n user_status_type_id Decimal @id(map: \"userstatustypelu_pk\") @db.Decimal(3, 0)\n description String? @db.VarChar(100)\n user_status user_status[]\n\n @@schema(\"identity\")\n}\n\n// Explicit definition for the user-email join table\nmodel user_email_xref {\n user_id Decimal @db.Decimal(10, 0)\n email_id Decimal @db.Decimal(10, 0)\n is_primary Boolean // Assuming boolean based on name, adjust if Decimal(1,0)\n status_id Decimal @db.Decimal(3, 0) // Assuming relates to email_status_lu\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_email_xref_user_fk\") // Define relation\n email email @relation(fields: [email_id], references: [email_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_email_xref_email_fk\") // Define relation\n email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id]) // Optional relation to status lookup\n\n @@id([user_id, email_id], map: \"user_email_xref_pkey\") // Define composite primary key\n @@index([email_id], map: \"user_email_xref_email_idx\")\n @@index([user_id, status_id])\n @@schema(\"identity\")\n}\n\n// -----------------------------------------\n// (Migrated from MySQL DDL)\n// -----------------------------------------\n\nmodel Client {\n id Int @id @default(autoincrement()) @map(\"id\")\n clientId String @unique @map(\"client_id\")\n name String\n redirectUri String? @map(\"redirect_uri\") @db.VarChar(8192)\n secret String?\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0) // Use Timestamp(0) if you need second precision like MySQL datetime\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n\n @@map(\"client\") // Map model name to table name\n @@schema(\"identity\")\n}\n\nmodel Role {\n id Int @id @default(autoincrement()) @map(\"id\")\n name String @unique @db.VarChar(45)\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0)\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n\n roleAssignments RoleAssignment[] // Relation field\n\n @@map(\"role\") // Map model name to table name\n @@schema(\"identity\")\n}\n\nmodel RoleAssignment {\n id Int @id @default(autoincrement()) @map(\"id\")\n roleId Int @map(\"role_id\")\n subjectId Int @map(\"subject_id\")\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0)\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n subjectType Int @default(1) @map(\"subject_type\")\n\n role Role @relation(fields: [roleId], references: [id], map: \"role_id\") // Relation field\n\n @@unique([roleId, subjectId, subjectType], map: \"role_subject_id_subject_type\")\n @@index([subjectId], map: \"subject_id_idx\")\n @@index([roleId], map: \"role_id_idx\")\n @@index([subjectId, subjectType])\n @@map(\"role_assignment\")\n @@schema(\"identity\")\n}\n", + "inlineSchemaHash": "146549dc4277ba3db4608942c2cae9f5d81439e3f0cff4d805cba070b9eac179", + "copyEngine": true +} + +const fs = require('fs') + +config.dirname = __dirname +if (!fs.existsSync(path.join(__dirname, 'schema.prisma'))) { + const alternativePaths = [ + "packages/identity-prisma-client", + "identity-prisma-client", + ] + + const alternativePath = alternativePaths.find((altPath) => { + return fs.existsSync(path.join(process.cwd(), altPath, 'schema.prisma')) + }) ?? alternativePaths[0] + + config.dirname = path.join(process.cwd(), alternativePath) + config.isBundled = true +} + +config.runtimeDataModel = JSON.parse("{\"models\":{\"achievement_type_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"achievement_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_type_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_achievement\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_achievement\",\"nativeType\":null,\"relationName\":\"achievement_type_luTouser_achievement\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"country\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"country_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"3\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"country_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"40\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"participating\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"1\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"default_taxform_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"longitude\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"7\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"latitude\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"7\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"region\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"iso_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"128\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"iso_alpha2_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"2\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"iso_alpha3_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"3\"]],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"dice_connection\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"connection\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"accepted\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"created_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"short_url\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"con_created_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"dice_connectionTouser\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"email\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"default\":{\"name\":\"dbgenerated\",\"args\":[\"nextval('sequence_email_seq'::regclass)\"]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"address\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"primary_ind\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"1\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email_status_lu\",\"nativeType\":null,\"relationName\":\"emailToemail_status_lu\",\"relationFromFields\":[\"status_id\"],\"relationToFields\":[\"status_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_type_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email_type_lu\",\"nativeType\":null,\"relationName\":\"emailToemail_type_lu\",\"relationFromFields\":[\"email_type_id\"],\"relationToFields\":[\"email_type_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_email_xref\",\"nativeType\":null,\"relationName\":\"emailTouser_email_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"UserToEmail\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"email_status_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"emailToemail_status_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_email_xref\",\"nativeType\":null,\"relationName\":\"email_status_luTouser_email_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"email_type_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"email_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_type_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"emailToemail_type_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"id_sequences\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"254\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"next_block_start\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"block_size\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"exhausted\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"1\",\"0\"]],\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"invalid_handles\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"invalid_handle_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"invalid_handle\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"20\"]],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"security_groups\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"group_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"254\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"challenge_group_ind\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":[\"SmallInt\",[]],\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_group_xref\",\"nativeType\":null,\"relationName\":\"security_groupsTouser_group_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"security_status_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"security_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_desc\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"200\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_group_xref\",\"nativeType\":null,\"relationName\":\"security_status_luTouser_group_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"security_user\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"login_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"password\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"300\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_group_xref\",\"nativeType\":null,\"relationName\":\"security_userTouser_group_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"social_login_provider\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"social_login_provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_social_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_social_login\",\"nativeType\":null,\"relationName\":\"social_login_providerTouser_social_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"sso_login_provider\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"sso_login_provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"identify_email_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"identify_handle_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_sso_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_sso_login\",\"nativeType\":null,\"relationName\":\"sso_login_providerTouser_sso_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"default\":{\"name\":\"dbgenerated\",\"args\":[\"nextval('sequence_user_seq'::regclass)\"]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"first_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"last_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"handle\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"last_login\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"3\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"activation_code\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"32\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"middle_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"handle_lower\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"timezone_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"last_site_hit_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name_in_another_language\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"64\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"password\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"16\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"open_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"200\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"reg_source\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"20\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"utm_source\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"utm_medium\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"utm_campaign\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"50\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"dice_connection\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"dice_connection\",\"nativeType\":null,\"relationName\":\"dice_connectionTouser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_2fa\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_2fa\",\"nativeType\":null,\"relationName\":\"userTouser_2fa\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_achievement\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_achievement\",\"nativeType\":null,\"relationName\":\"userTouser_achievement\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_otp_email\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_otp_email\",\"nativeType\":null,\"relationName\":\"userTouser_otp_email\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_social_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_social_login\",\"nativeType\":null,\"relationName\":\"userTouser_social_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_sso_login\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_sso_login\",\"nativeType\":null,\"relationName\":\"userTouser_sso_login\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status\",\"nativeType\":null,\"relationName\":\"userTouser_status\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_email_xref\",\"nativeType\":null,\"relationName\":\"userTouser_email_xref\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"emails\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"UserToEmail\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_2fa\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"mfa_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"dice_enabled\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"created_by\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"created_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modified_by\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modified_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_2fa\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_achievement\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Date\",[]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"255\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"achievement_type_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"achievement_type_lu\",\"nativeType\":null,\"relationName\":\"achievement_type_luTouser_achievement\",\"relationFromFields\":[\"achievement_type_id\"],\"relationToFields\":[\"achievement_type_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_achievement\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"achievement_type_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false,\"documentation\":\"The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.\"},\"user_group_xref\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_group_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"default\":{\"name\":\"dbgenerated\",\"args\":[\"nextval('sequence_user_group_seq'::regclass)\"]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"login_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"group_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"12\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"security_user\",\"nativeType\":null,\"relationName\":\"security_userTouser_group_xref\",\"relationFromFields\":[\"login_id\"],\"relationToFields\":[\"login_id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_groups\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"security_groups\",\"nativeType\":null,\"relationName\":\"security_groupsTouser_group_xref\",\"relationFromFields\":[\"group_id\"],\"relationToFields\":[\"group_id\"],\"relationOnDelete\":\"Cascade\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"security_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"security_status_lu\",\"nativeType\":null,\"relationName\":\"security_status_luTouser_group_xref\",\"relationFromFields\":[\"security_status_id\"],\"relationToFields\":[\"security_status_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"login_id\",\"group_id\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"login_id\",\"group_id\"]}],\"isGenerated\":false},\"user_otp_email\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"mode\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":[\"SmallInt\",[]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"otp\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"expire_at\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"resend\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":false,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"fail_count\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":[\"SmallInt\",[]],\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_otp_email\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"user_id\",\"mode\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"user_id\",\"mode\"]}],\"isGenerated\":false},\"user_social_login\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"social_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"254\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_login_provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_user_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_email_verified\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Boolean\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"social_login_provider\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"social_login_provider\",\"nativeType\":null,\"relationName\":\"social_login_providerTouser_social_login\",\"relationFromFields\":[\"social_login_provider_id\"],\"relationToFields\":[\"social_login_provider_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_social_login\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"social_login_provider_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_sso_login\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sso_user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sso_user_name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sso_login_provider\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"sso_login_provider\",\"nativeType\":null,\"relationName\":\"sso_login_providerTouser_sso_login\",\"relationFromFields\":[\"provider_id\"],\"relationToFields\":[\"sso_login_provider_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_sso_login\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"provider_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_status\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_status\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status_lu\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_lu\",\"relationFromFields\":[\"user_status_id\"],\"relationToFields\":[\"user_status_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status_type_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status_type_lu\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_type_lu\",\"relationFromFields\":[\"user_status_type_id\"],\"relationToFields\":[\"user_status_type_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"user_status_type_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_status_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"5\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_status_type_lu\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_status_type_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"description\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"100\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user_status\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user_status\",\"nativeType\":null,\"relationName\":\"user_statusTouser_status_type_lu\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"user_email_xref\":{\"dbName\":null,\"schema\":\"identity\",\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"10\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"is_primary\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Boolean\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Decimal\",\"nativeType\":[\"Decimal\",[\"3\",\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"create_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"6\"]],\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"user\",\"nativeType\":null,\"relationName\":\"userTouser_email_xref\",\"relationFromFields\":[\"user_id\"],\"relationToFields\":[\"user_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email\",\"nativeType\":null,\"relationName\":\"emailTouser_email_xref\",\"relationFromFields\":[\"email_id\"],\"relationToFields\":[\"email_id\"],\"relationOnDelete\":\"NoAction\",\"relationOnUpdate\":\"NoAction\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email_status_lu\",\"kind\":\"object\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"email_status_lu\",\"nativeType\":null,\"relationName\":\"email_status_luTouser_email_xref\",\"relationFromFields\":[\"status_id\"],\"relationToFields\":[\"status_id\"],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":{\"name\":null,\"fields\":[\"user_id\",\"email_id\"]},\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Client\":{\"dbName\":\"client\",\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"dbName\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"clientId\",\"dbName\":\"client_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"redirectUri\",\"dbName\":\"redirect_uri\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"8192\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"secret\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Role\":{\"dbName\":\"role\",\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"dbName\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"name\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":[\"VarChar\",[\"45\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"roleAssignments\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"RoleAssignment\",\"nativeType\":null,\"relationName\":\"RoleToRoleAssignment\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"RoleAssignment\":{\"dbName\":\"role_assignment\",\"schema\":\"identity\",\"fields\":[{\"name\":\"id\",\"dbName\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"roleId\",\"dbName\":\"role_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"subjectId\",\"dbName\":\"subject_id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":[\"Timestamp\",[\"0\"]],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"subjectType\",\"dbName\":\"subject_type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":1,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"role\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Role\",\"nativeType\":null,\"relationName\":\"RoleToRoleAssignment\",\"relationFromFields\":[\"roleId\"],\"relationToFields\":[\"id\"],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"roleId\",\"subjectId\",\"subjectType\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"roleId\",\"subjectId\",\"subjectType\"]}],\"isGenerated\":false}},\"enums\":{},\"types\":{}}") +defineDmmfProperty(exports.Prisma, config.runtimeDataModel) +config.engineWasm = undefined +config.compilerWasm = undefined + + +const { warnEnvConflicts } = require('./runtime/library.js') + +warnEnvConflicts({ + rootEnvPath: config.relativeEnvPaths.rootEnvPath && path.resolve(config.dirname, config.relativeEnvPaths.rootEnvPath), + schemaEnvPath: config.relativeEnvPaths.schemaEnvPath && path.resolve(config.dirname, config.relativeEnvPaths.schemaEnvPath) +}) + +const PrismaClient = getPrismaClient(config) +exports.PrismaClient = PrismaClient +Object.assign(exports, Prisma) + +// file annotations for bundling tools to include these files +path.join(__dirname, "libquery_engine-darwin-arm64.dylib.node"); +path.join(process.cwd(), "packages/identity-prisma-client/libquery_engine-darwin-arm64.dylib.node") + +// file annotations for bundling tools to include these files +path.join(__dirname, "libquery_engine-debian-openssl-3.0.x.so.node"); +path.join(process.cwd(), "packages/identity-prisma-client/libquery_engine-debian-openssl-3.0.x.so.node") +// file annotations for bundling tools to include these files +path.join(__dirname, "schema.prisma"); +path.join(process.cwd(), "packages/identity-prisma-client/schema.prisma") diff --git a/packages/identity-prisma-client/libquery_engine-darwin-arm64.dylib.node b/packages/identity-prisma-client/libquery_engine-darwin-arm64.dylib.node new file mode 100755 index 0000000..d0fa4cb Binary files /dev/null and b/packages/identity-prisma-client/libquery_engine-darwin-arm64.dylib.node differ diff --git a/packages/identity-prisma-client/libquery_engine-debian-openssl-3.0.x.so.node b/packages/identity-prisma-client/libquery_engine-debian-openssl-3.0.x.so.node new file mode 100755 index 0000000..fd83c8e Binary files /dev/null and b/packages/identity-prisma-client/libquery_engine-debian-openssl-3.0.x.so.node differ diff --git a/packages/identity-prisma-client/package.json b/packages/identity-prisma-client/package.json new file mode 100644 index 0000000..dbb4b77 --- /dev/null +++ b/packages/identity-prisma-client/package.json @@ -0,0 +1,183 @@ +{ + "name": "prisma-client-ed11fc6843a77dd3656f1a6ad212d341b407adb62ba70105a8d9b3b98eadf03f", + "main": "index.js", + "types": "index.d.ts", + "browser": "default.js", + "exports": { + "./client": { + "require": { + "node": "./index.js", + "edge-light": "./wasm.js", + "workerd": "./wasm.js", + "worker": "./wasm.js", + "browser": "./index-browser.js", + "default": "./index.js" + }, + "import": { + "node": "./index.js", + "edge-light": "./wasm.js", + "workerd": "./wasm.js", + "worker": "./wasm.js", + "browser": "./index-browser.js", + "default": "./index.js" + }, + "default": "./index.js" + }, + "./package.json": "./package.json", + ".": { + "require": { + "node": "./index.js", + "edge-light": "./wasm.js", + "workerd": "./wasm.js", + "worker": "./wasm.js", + "browser": "./index-browser.js", + "default": "./index.js" + }, + "import": { + "node": "./index.js", + "edge-light": "./wasm.js", + "workerd": "./wasm.js", + "worker": "./wasm.js", + "browser": "./index-browser.js", + "default": "./index.js" + }, + "default": "./index.js" + }, + "./edge": { + "types": "./edge.d.ts", + "require": "./edge.js", + "import": "./edge.js", + "default": "./edge.js" + }, + "./react-native": { + "types": "./react-native.d.ts", + "require": "./react-native.js", + "import": "./react-native.js", + "default": "./react-native.js" + }, + "./extension": { + "types": "./extension.d.ts", + "require": "./extension.js", + "import": "./extension.js", + "default": "./extension.js" + }, + "./index-browser": { + "types": "./index.d.ts", + "require": "./index-browser.js", + "import": "./index-browser.js", + "default": "./index-browser.js" + }, + "./index": { + "types": "./index.d.ts", + "require": "./index.js", + "import": "./index.js", + "default": "./index.js" + }, + "./wasm": { + "types": "./wasm.d.ts", + "require": "./wasm.js", + "import": "./wasm.mjs", + "default": "./wasm.mjs" + }, + "./runtime/client": { + "types": "./runtime/client.d.ts", + "node": { + "require": "./runtime/client.js", + "default": "./runtime/client.js" + }, + "require": "./runtime/client.js", + "import": "./runtime/client.mjs", + "default": "./runtime/client.mjs" + }, + "./runtime/library": { + "types": "./runtime/library.d.ts", + "require": "./runtime/library.js", + "import": "./runtime/library.mjs", + "default": "./runtime/library.mjs" + }, + "./runtime/binary": { + "types": "./runtime/binary.d.ts", + "require": "./runtime/binary.js", + "import": "./runtime/binary.mjs", + "default": "./runtime/binary.mjs" + }, + "./runtime/wasm-engine-edge": { + "types": "./runtime/wasm-engine-edge.d.ts", + "require": "./runtime/wasm-engine-edge.js", + "import": "./runtime/wasm-engine-edge.mjs", + "default": "./runtime/wasm-engine-edge.mjs" + }, + "./runtime/wasm-compiler-edge": { + "types": "./runtime/wasm-compiler-edge.d.ts", + "require": "./runtime/wasm-compiler-edge.js", + "import": "./runtime/wasm-compiler-edge.mjs", + "default": "./runtime/wasm-compiler-edge.mjs" + }, + "./runtime/edge": { + "types": "./runtime/edge.d.ts", + "require": "./runtime/edge.js", + "import": "./runtime/edge-esm.js", + "default": "./runtime/edge-esm.js" + }, + "./runtime/react-native": { + "types": "./runtime/react-native.d.ts", + "require": "./runtime/react-native.js", + "import": "./runtime/react-native.js", + "default": "./runtime/react-native.js" + }, + "./runtime/index-browser": { + "types": "./runtime/index-browser.d.ts", + "require": "./runtime/index-browser.js", + "import": "./runtime/index-browser.mjs", + "default": "./runtime/index-browser.mjs" + }, + "./generator-build": { + "require": "./generator-build/index.js", + "import": "./generator-build/index.js", + "default": "./generator-build/index.js" + }, + "./sql": { + "require": { + "types": "./sql.d.ts", + "node": "./sql.js", + "default": "./sql.js" + }, + "import": { + "types": "./sql.d.ts", + "node": "./sql.mjs", + "default": "./sql.mjs" + }, + "default": "./sql.js" + }, + "./*": "./*" + }, + "version": "6.19.1", + "sideEffects": false, + "imports": { + "#wasm-engine-loader": { + "edge-light": "./wasm-edge-light-loader.mjs", + "workerd": "./wasm-worker-loader.mjs", + "worker": "./wasm-worker-loader.mjs", + "default": "./wasm-worker-loader.mjs" + }, + "#main-entry-point": { + "require": { + "node": "./index.js", + "edge-light": "./wasm.js", + "workerd": "./wasm.js", + "worker": "./wasm.js", + "browser": "./index-browser.js", + "default": "./index.js" + }, + "import": { + "node": "./index.js", + "edge-light": "./wasm.js", + "workerd": "./wasm.js", + "worker": "./wasm.js", + "browser": "./index-browser.js", + "default": "./index.js" + }, + "default": "./index.js" + } + } +} \ No newline at end of file diff --git a/packages/identity-prisma-client/query_engine_bg.js b/packages/identity-prisma-client/query_engine_bg.js new file mode 100644 index 0000000..5faf0a5 --- /dev/null +++ b/packages/identity-prisma-client/query_engine_bg.js @@ -0,0 +1,2 @@ +"use strict";var F=Object.defineProperty;var j=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var U=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var n in t)F(e,n,{get:t[n],enumerable:!0})},N=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of B(t))!U.call(e,o)&&o!==n&&F(e,o,{get:()=>t[o],enumerable:!(r=j(t,o))||r.enumerable});return e};var C=e=>N(F({},"__esModule",{value:!0}),e);var kt={};L(kt,{QueryEngine:()=>k,__wbg_Error_e83987f665cf5504:()=>J,__wbg_Number_bb48ca12f395cd08:()=>X,__wbg_String_8f0eb39a4a4c2f66:()=>Y,__wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd:()=>K,__wbg___wbindgen_boolean_get_6d5a1ee65bab5f68:()=>Z,__wbg___wbindgen_debug_string_df47ffb5e35e6763:()=>ee,__wbg___wbindgen_in_bb933bd9e1b3bc0f:()=>te,__wbg___wbindgen_is_bigint_cb320707dcd35f0b:()=>ne,__wbg___wbindgen_is_function_ee8a6c5833c90377:()=>re,__wbg___wbindgen_is_object_c818261d21f283a4:()=>_e,__wbg___wbindgen_is_string_fbb76cb2940daafd:()=>oe,__wbg___wbindgen_is_undefined_2d472862bd29a478:()=>ce,__wbg___wbindgen_jsval_eq_6b13ab83478b1c50:()=>ie,__wbg___wbindgen_jsval_loose_eq_b664b38a2f582147:()=>ue,__wbg___wbindgen_number_get_a20bf9b85341449d:()=>se,__wbg___wbindgen_string_get_e4f06c90489ad01b:()=>be,__wbg___wbindgen_throw_b855445ff6a94295:()=>fe,__wbg__wbg_cb_unref_2454a539ea5790d9:()=>ae,__wbg_call_525440f72fbfc0ea:()=>ge,__wbg_call_e762c39fa8ea36bf:()=>le,__wbg_crypto_805be4ce92f1e370:()=>de,__wbg_done_2042aa2670fb1db1:()=>we,__wbg_entries_e171b586f8f6bdbf:()=>pe,__wbg_exec_fdeec61d47617356:()=>xe,__wbg_getRandomValues_f6a868620c8bab49:()=>ye,__wbg_getTime_14776bfb48a1bff9:()=>me,__wbg_get_7bed016f185add81:()=>he,__wbg_get_ece95cf6585650d9:()=>Te,__wbg_get_efcb449f58ec27c2:()=>Ae,__wbg_get_with_ref_key_1dc361bd10053bfe:()=>Se,__wbg_has_787fafc980c3ccdb:()=>Fe,__wbg_instanceof_ArrayBuffer_70beb1189ca63b38:()=>Ie,__wbg_instanceof_Map_8579b5e2ab5437c7:()=>qe,__wbg_instanceof_Promise_001fdd42afa1b7ef:()=>Ee,__wbg_instanceof_Uint8Array_20c8e73002f7af98:()=>ke,__wbg_isArray_96e0af9891d0945d:()=>Oe,__wbg_isSafeInteger_d216eda7911dde36:()=>Me,__wbg_iterator_e5822695327a3c39:()=>ve,__wbg_keys_b4d27b02ad14f4be:()=>De,__wbg_length_69bca3cb64fc8748:()=>Re,__wbg_length_cdd215e10d9dd507:()=>je,__wbg_msCrypto_2ac4d17c4748234a:()=>Be,__wbg_new_0_f9740686d739025c:()=>Ue,__wbg_new_1acc0b6eea89d040:()=>Le,__wbg_new_23fa8b12a239f036:()=>Ne,__wbg_new_3c3d849046688a66:()=>Ce,__wbg_new_5a79be3ab53b8aa5:()=>$e,__wbg_new_68651c719dcda04e:()=>Ve,__wbg_new_e17d9f43105b08be:()=>We,__wbg_new_from_slice_92f4d78ca282a2d2:()=>ze,__wbg_new_no_args_ee98eee5275000a4:()=>Pe,__wbg_new_with_length_01aa0dc35aa13543:()=>Ge,__wbg_next_020810e0ae8ebcb0:()=>Qe,__wbg_next_2c826fe5dfec6b6a:()=>He,__wbg_node_ecc8306b9857f33d:()=>Je,__wbg_now_793306c526e2e3b6:()=>Xe,__wbg_now_7fd00a794a07d388:()=>Ye,__wbg_now_b3f7572f6ef3d3a9:()=>Ke,__wbg_process_5cff2739921be718:()=>Ze,__wbg_prototypesetcall_2a6620b6922694b2:()=>et,__wbg_push_df81a39d04db858c:()=>tt,__wbg_queueMicrotask_5a8a9131f3f0b37b:()=>nt,__wbg_queueMicrotask_6d79674585219521:()=>rt,__wbg_randomFillSync_d3c85af7e31cf1f8:()=>_t,__wbg_require_0c566c6f2eef6c79:()=>ot,__wbg_resolve_caf97c30b83f7053:()=>ct,__wbg_setTimeout_5d6a1d4fc51ea450:()=>it,__wbg_set_3f1d0b984ed272ed:()=>ut,__wbg_set_907fb406c34a251d:()=>st,__wbg_set_c213c871859d6500:()=>bt,__wbg_set_c2abbebe8b9ebee1:()=>ft,__wbg_set_wasm:()=>$,__wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e:()=>at,__wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac:()=>gt,__wbg_static_accessor_SELF_6fdf4b64710cc91b:()=>lt,__wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2:()=>dt,__wbg_subarray_480600f3d6a9f26c:()=>wt,__wbg_then_4f46f6544e6b4a28:()=>pt,__wbg_then_70d05cf780a18d77:()=>xt,__wbg_valueOf_9eee4828c11458ca:()=>yt,__wbg_value_692627309814bb8c:()=>mt,__wbg_versions_a8e5a362e1f16442:()=>ht,__wbindgen_cast_2241b6af4c4b2941:()=>Tt,__wbindgen_cast_4625c577ab2ec9ee:()=>At,__wbindgen_cast_7bf296c42657ff30:()=>St,__wbindgen_cast_9ae0607507abb057:()=>Ft,__wbindgen_cast_cb9088102bce6b30:()=>It,__wbindgen_cast_d6cd19b81560fd6e:()=>qt,__wbindgen_init_externref_table:()=>Et,debug_panic:()=>G,getBuildTimeInfo:()=>P});module.exports=C(kt);var T=()=>{};T.prototype=T;let _;function $(e){_=e}let A=null;function y(){return(A===null||A.byteLength===0)&&(A=new Uint8Array(_.memory.buffer)),A}let S=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});S.decode();const V=2146435072;let I=0;function W(e,t){return I+=t,I>=V&&(S=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),S.decode(),I=t),S.decode(y().subarray(e,e+t))}function w(e,t){return e=e>>>0,W(e,t)}let s=0;const m=new TextEncoder;"encodeInto"in m||(m.encodeInto=function(e,t){const n=m.encode(e);return t.set(n),{read:e.length,written:n.length}});function b(e,t,n){if(n===void 0){const u=m.encode(e),f=t(u.length,1)>>>0;return y().subarray(f,f+u.length).set(u),s=u.length,f}let r=e.length,o=t(r,1)>>>0;const i=y();let c=0;for(;c127)break;i[o+c]=u}if(c!==r){c!==0&&(e=e.slice(c)),o=n(o,r,r=c+e.length*3,1)>>>0;const u=y().subarray(o+c,o+r),f=m.encodeInto(e,u);c+=f.written,o=n(o,r,c,1)>>>0}return s=c,o}let p=null;function l(){return(p===null||p.buffer.detached===!0||p.buffer.detached===void 0&&p.buffer!==_.memory.buffer)&&(p=new DataView(_.memory.buffer)),p}function a(e){return e==null}function q(e){const t=typeof e;if(t=="number"||t=="boolean"||e==null)return`${e}`;if(t=="string")return`"${e}"`;if(t=="symbol"){const o=e.description;return o==null?"Symbol":`Symbol(${o})`}if(t=="function"){const o=e.name;return typeof o=="string"&&o.length>0?`Function(${o})`:"Function"}if(Array.isArray(e)){const o=e.length;let i="[";o>0&&(i+=q(e[0]));for(let c=1;c1)r=n[1];else return toString.call(e);if(r=="Object")try{return"Object("+JSON.stringify(e)+")"}catch{return"Object"}return e instanceof Error?`${e.name}: ${e.message} +${e.stack}`:r}function x(e){const t=_.__externref_table_alloc();return _.__wbindgen_externrefs.set(t,e),t}function g(e,t){try{return e.apply(this,t)}catch(n){const r=x(n);_.__wbindgen_exn_store(r)}}function E(e,t){return e=e>>>0,y().subarray(e/1,e/1+t)}const O=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>e.dtor(e.a,e.b));function z(e,t,n,r){const o={a:e,b:t,cnt:1,dtor:n},i=(...c)=>{o.cnt++;const u=o.a;o.a=0;try{return r(u,o.b,...c)}finally{o.a=u,i._wbg_cb_unref()}};return i._wbg_cb_unref=()=>{--o.cnt===0&&(o.dtor(o.a,o.b),o.a=0,O.unregister(o))},O.register(i,o,o),i}function M(e){const t=_.__wbindgen_externrefs.get(e);return _.__externref_table_dealloc(e),t}function P(){return _.getBuildTimeInfo()}function G(e){var t=a(e)?0:b(e,_.__wbindgen_malloc,_.__wbindgen_realloc),n=s;const r=_.debug_panic(t,n);if(r[1])throw M(r[0])}function Q(e,t,n){_.wasm_bindgen__convert__closures_____invoke__ha235f3ea55a06a09(e,t,n)}function H(e,t,n,r){_.wasm_bindgen__convert__closures_____invoke__h1a2f20be69ab8911(e,t,n,r)}const v=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>_.__wbg_queryengine_free(e>>>0,1));class k{__destroy_into_raw(){const t=this.__wbg_ptr;return this.__wbg_ptr=0,v.unregister(this),t}free(){const t=this.__destroy_into_raw();_.__wbg_queryengine_free(t,0)}disconnect(t,n){const r=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),o=s,i=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),c=s;return _.queryengine_disconnect(this.__wbg_ptr,r,o,i,c)}startTransaction(t,n,r){const o=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),i=s,c=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),u=s,f=b(r,_.__wbindgen_malloc,_.__wbindgen_realloc),d=s;return _.queryengine_startTransaction(this.__wbg_ptr,o,i,c,u,f,d)}commitTransaction(t,n,r){const o=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),i=s,c=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),u=s,f=b(r,_.__wbindgen_malloc,_.__wbindgen_realloc),d=s;return _.queryengine_commitTransaction(this.__wbg_ptr,o,i,c,u,f,d)}rollbackTransaction(t,n,r){const o=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),i=s,c=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),u=s,f=b(r,_.__wbindgen_malloc,_.__wbindgen_realloc),d=s;return _.queryengine_rollbackTransaction(this.__wbg_ptr,o,i,c,u,f,d)}constructor(t,n,r){const o=_.queryengine_new(t,n,r);if(o[2])throw M(o[1]);return this.__wbg_ptr=o[0]>>>0,v.register(this,this.__wbg_ptr,this),this}query(t,n,r,o){const i=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),c=s,u=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),f=s;var d=a(r)?0:b(r,_.__wbindgen_malloc,_.__wbindgen_realloc),h=s;const D=b(o,_.__wbindgen_malloc,_.__wbindgen_realloc),R=s;return _.queryengine_query(this.__wbg_ptr,i,c,u,f,d,h,D,R)}trace(t){const n=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),r=s;return _.queryengine_trace(this.__wbg_ptr,n,r)}connect(t,n){const r=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),o=s,i=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),c=s;return _.queryengine_connect(this.__wbg_ptr,r,o,i,c)}metrics(t){const n=b(t,_.__wbindgen_malloc,_.__wbindgen_realloc),r=s;return _.queryengine_metrics(this.__wbg_ptr,n,r)}}Symbol.dispose&&(k.prototype[Symbol.dispose]=k.prototype.free);function J(e,t){return Error(w(e,t))}function X(e){return Number(e)}function Y(e,t){const n=String(t),r=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),o=s;l().setInt32(e+4*1,o,!0),l().setInt32(e+4*0,r,!0)}function K(e,t){const n=t,r=typeof n=="bigint"?n:void 0;l().setBigInt64(e+8*1,a(r)?BigInt(0):r,!0),l().setInt32(e+4*0,!a(r),!0)}function Z(e){const t=e,n=typeof t=="boolean"?t:void 0;return a(n)?16777215:n?1:0}function ee(e,t){const n=q(t),r=b(n,_.__wbindgen_malloc,_.__wbindgen_realloc),o=s;l().setInt32(e+4*1,o,!0),l().setInt32(e+4*0,r,!0)}function te(e,t){return e in t}function ne(e){return typeof e=="bigint"}function re(e){return typeof e=="function"}function _e(e){const t=e;return typeof t=="object"&&t!==null}function oe(e){return typeof e=="string"}function ce(e){return e===void 0}function ie(e,t){return e===t}function ue(e,t){return e==t}function se(e,t){const n=t,r=typeof n=="number"?n:void 0;l().setFloat64(e+8*1,a(r)?0:r,!0),l().setInt32(e+4*0,!a(r),!0)}function be(e,t){const n=t,r=typeof n=="string"?n:void 0;var o=a(r)?0:b(r,_.__wbindgen_malloc,_.__wbindgen_realloc),i=s;l().setInt32(e+4*1,i,!0),l().setInt32(e+4*0,o,!0)}function fe(e,t){throw new Error(w(e,t))}function ae(e){e._wbg_cb_unref()}function ge(){return g(function(e,t,n){return e.call(t,n)},arguments)}function le(){return g(function(e,t){return e.call(t)},arguments)}function de(e){return e.crypto}function we(e){return e.done}function pe(e){return Object.entries(e)}function xe(e,t,n){const r=e.exec(w(t,n));return a(r)?0:x(r)}function ye(){return g(function(e,t){e.getRandomValues(t)},arguments)}function me(e){return e.getTime()}function he(e,t){return e[t>>>0]}function Te(){return g(function(e,t){return e[t]},arguments)}function Ae(){return g(function(e,t){return Reflect.get(e,t)},arguments)}function Se(e,t){return e[t]}function Fe(){return g(function(e,t){return Reflect.has(e,t)},arguments)}function Ie(e){let t;try{t=e instanceof ArrayBuffer}catch{t=!1}return t}function qe(e){let t;try{t=e instanceof Map}catch{t=!1}return t}function Ee(e){let t;try{t=e instanceof Promise}catch{t=!1}return t}function ke(e){let t;try{t=e instanceof Uint8Array}catch{t=!1}return t}function Oe(e){return Array.isArray(e)}function Me(e){return Number.isSafeInteger(e)}function ve(){return Symbol.iterator}function De(e){return Object.keys(e)}function Re(e){return e.length}function je(e){return e.length}function Be(e){return e.msCrypto}function Ue(){return new Date}function Le(){return new Object}function Ne(e,t,n,r){return new RegExp(w(e,t),w(n,r))}function Ce(e,t){try{var n={a:e,b:t},r=(i,c)=>{const u=n.a;n.a=0;try{return H(u,n.b,i,c)}finally{n.a=u}};return new Promise(r)}finally{n.a=n.b=0}}function $e(e){return new Uint8Array(e)}function Ve(){return new Map}function We(){return new Array}function ze(e,t){return new Uint8Array(E(e,t))}function Pe(e,t){return new T(w(e,t))}function Ge(e){return new Uint8Array(e>>>0)}function Qe(){return g(function(e){return e.next()},arguments)}function He(e){return e.next}function Je(e){return e.node}function Xe(){return Date.now()}function Ye(e){return e.now()}function Ke(){return g(function(){return Date.now()},arguments)}function Ze(e){return e.process}function et(e,t,n){Uint8Array.prototype.set.call(E(e,t),n)}function tt(e,t){return e.push(t)}function nt(e){return e.queueMicrotask}function rt(e){queueMicrotask(e)}function _t(){return g(function(e,t){e.randomFillSync(t)},arguments)}function ot(){return g(function(){return module.require},arguments)}function ct(e){return Promise.resolve(e)}function it(e,t){return setTimeout(e,t>>>0)}function ut(e,t,n){e[t]=n}function st(e,t,n){return e.set(t,n)}function bt(e,t,n){e[t>>>0]=n}function ft(){return g(function(e,t,n){return Reflect.set(e,t,n)},arguments)}function at(){const e=typeof global>"u"?null:global;return a(e)?0:x(e)}function gt(){const e=typeof globalThis>"u"?null:globalThis;return a(e)?0:x(e)}function lt(){const e=typeof self>"u"?null:self;return a(e)?0:x(e)}function dt(){const e=typeof window>"u"?null:window;return a(e)?0:x(e)}function wt(e,t,n){return e.subarray(t>>>0,n>>>0)}function pt(e,t){return e.then(t)}function xt(e,t,n){return e.then(t,n)}function yt(e){return e.valueOf()}function mt(e){return e.value}function ht(e){return e.versions}function Tt(e,t){return w(e,t)}function At(e){return BigInt.asUintN(64,e)}function St(e,t){return z(e,t,_.wasm_bindgen__closure__destroy__hf9ae564cf31e91c2,Q)}function Ft(e){return e}function It(e,t){return E(e,t)}function qt(e){return e}function Et(){const e=_.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}0&&(module.exports={QueryEngine,__wbg_Error_e83987f665cf5504,__wbg_Number_bb48ca12f395cd08,__wbg_String_8f0eb39a4a4c2f66,__wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd,__wbg___wbindgen_boolean_get_6d5a1ee65bab5f68,__wbg___wbindgen_debug_string_df47ffb5e35e6763,__wbg___wbindgen_in_bb933bd9e1b3bc0f,__wbg___wbindgen_is_bigint_cb320707dcd35f0b,__wbg___wbindgen_is_function_ee8a6c5833c90377,__wbg___wbindgen_is_object_c818261d21f283a4,__wbg___wbindgen_is_string_fbb76cb2940daafd,__wbg___wbindgen_is_undefined_2d472862bd29a478,__wbg___wbindgen_jsval_eq_6b13ab83478b1c50,__wbg___wbindgen_jsval_loose_eq_b664b38a2f582147,__wbg___wbindgen_number_get_a20bf9b85341449d,__wbg___wbindgen_string_get_e4f06c90489ad01b,__wbg___wbindgen_throw_b855445ff6a94295,__wbg__wbg_cb_unref_2454a539ea5790d9,__wbg_call_525440f72fbfc0ea,__wbg_call_e762c39fa8ea36bf,__wbg_crypto_805be4ce92f1e370,__wbg_done_2042aa2670fb1db1,__wbg_entries_e171b586f8f6bdbf,__wbg_exec_fdeec61d47617356,__wbg_getRandomValues_f6a868620c8bab49,__wbg_getTime_14776bfb48a1bff9,__wbg_get_7bed016f185add81,__wbg_get_ece95cf6585650d9,__wbg_get_efcb449f58ec27c2,__wbg_get_with_ref_key_1dc361bd10053bfe,__wbg_has_787fafc980c3ccdb,__wbg_instanceof_ArrayBuffer_70beb1189ca63b38,__wbg_instanceof_Map_8579b5e2ab5437c7,__wbg_instanceof_Promise_001fdd42afa1b7ef,__wbg_instanceof_Uint8Array_20c8e73002f7af98,__wbg_isArray_96e0af9891d0945d,__wbg_isSafeInteger_d216eda7911dde36,__wbg_iterator_e5822695327a3c39,__wbg_keys_b4d27b02ad14f4be,__wbg_length_69bca3cb64fc8748,__wbg_length_cdd215e10d9dd507,__wbg_msCrypto_2ac4d17c4748234a,__wbg_new_0_f9740686d739025c,__wbg_new_1acc0b6eea89d040,__wbg_new_23fa8b12a239f036,__wbg_new_3c3d849046688a66,__wbg_new_5a79be3ab53b8aa5,__wbg_new_68651c719dcda04e,__wbg_new_e17d9f43105b08be,__wbg_new_from_slice_92f4d78ca282a2d2,__wbg_new_no_args_ee98eee5275000a4,__wbg_new_with_length_01aa0dc35aa13543,__wbg_next_020810e0ae8ebcb0,__wbg_next_2c826fe5dfec6b6a,__wbg_node_ecc8306b9857f33d,__wbg_now_793306c526e2e3b6,__wbg_now_7fd00a794a07d388,__wbg_now_b3f7572f6ef3d3a9,__wbg_process_5cff2739921be718,__wbg_prototypesetcall_2a6620b6922694b2,__wbg_push_df81a39d04db858c,__wbg_queueMicrotask_5a8a9131f3f0b37b,__wbg_queueMicrotask_6d79674585219521,__wbg_randomFillSync_d3c85af7e31cf1f8,__wbg_require_0c566c6f2eef6c79,__wbg_resolve_caf97c30b83f7053,__wbg_setTimeout_5d6a1d4fc51ea450,__wbg_set_3f1d0b984ed272ed,__wbg_set_907fb406c34a251d,__wbg_set_c213c871859d6500,__wbg_set_c2abbebe8b9ebee1,__wbg_set_wasm,__wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e,__wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac,__wbg_static_accessor_SELF_6fdf4b64710cc91b,__wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2,__wbg_subarray_480600f3d6a9f26c,__wbg_then_4f46f6544e6b4a28,__wbg_then_70d05cf780a18d77,__wbg_valueOf_9eee4828c11458ca,__wbg_value_692627309814bb8c,__wbg_versions_a8e5a362e1f16442,__wbindgen_cast_2241b6af4c4b2941,__wbindgen_cast_4625c577ab2ec9ee,__wbindgen_cast_7bf296c42657ff30,__wbindgen_cast_9ae0607507abb057,__wbindgen_cast_cb9088102bce6b30,__wbindgen_cast_d6cd19b81560fd6e,__wbindgen_init_externref_table,debug_panic,getBuildTimeInfo}); diff --git a/packages/identity-prisma-client/query_engine_bg.wasm b/packages/identity-prisma-client/query_engine_bg.wasm new file mode 100644 index 0000000..ae035bc Binary files /dev/null and b/packages/identity-prisma-client/query_engine_bg.wasm differ diff --git a/packages/identity-prisma-client/runtime/edge-esm.js b/packages/identity-prisma-client/runtime/edge-esm.js new file mode 100644 index 0000000..060644c --- /dev/null +++ b/packages/identity-prisma-client/runtime/edge-esm.js @@ -0,0 +1,35 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +var ca=Object.create;var rn=Object.defineProperty;var pa=Object.getOwnPropertyDescriptor;var ma=Object.getOwnPropertyNames;var fa=Object.getPrototypeOf,da=Object.prototype.hasOwnProperty;var fe=(e,t)=>()=>(e&&(t=e(e=0)),t);var Je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),or=(e,t)=>{for(var r in t)rn(e,r,{get:t[r],enumerable:!0})},ga=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ma(t))!da.call(e,i)&&i!==r&&rn(e,i,{get:()=>t[i],enumerable:!(n=pa(t,i))||n.enumerable});return e};var Qe=(e,t,r)=>(r=e!=null?ca(fa(e)):{},ga(t||!e||!e.__esModule?rn(r,"default",{value:e,enumerable:!0}):r,e));var y,b,u=fe(()=>{"use strict";y={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:b}=y});var x,c=fe(()=>{"use strict";x=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,p=fe(()=>{"use strict";E=()=>{};E.prototype=E});var m=fe(()=>{"use strict"});var Ti=Je(ze=>{"use strict";f();u();c();p();m();var ci=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ha=ci(e=>{"use strict";e.byteLength=l,e.toByteArray=g,e.fromByteArray=I;var t=[],r=[],n=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(o=0,s=i.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var M=S.indexOf("=");M===-1&&(M=C);var F=M===C?0:4-M%4;return[M,F]}function l(S){var C=a(S),M=C[0],F=C[1];return(M+F)*3/4-F}function d(S,C,M){return(C+M)*3/4-M}function g(S){var C,M=a(S),F=M[0],B=M[1],O=new n(d(S,F,B)),L=0,oe=B>0?F-4:F,J;for(J=0;J>16&255,O[L++]=C>>8&255,O[L++]=C&255;return B===2&&(C=r[S.charCodeAt(J)]<<2|r[S.charCodeAt(J+1)]>>4,O[L++]=C&255),B===1&&(C=r[S.charCodeAt(J)]<<10|r[S.charCodeAt(J+1)]<<4|r[S.charCodeAt(J+2)]>>2,O[L++]=C>>8&255,O[L++]=C&255),O}function h(S){return t[S>>18&63]+t[S>>12&63]+t[S>>6&63]+t[S&63]}function T(S,C,M){for(var F,B=[],O=C;Ooe?oe:L+O));return F===1?(C=S[M-1],B.push(t[C>>2]+t[C<<4&63]+"==")):F===2&&(C=(S[M-2]<<8)+S[M-1],B.push(t[C>>10]+t[C>>4&63]+t[C<<2&63]+"=")),B.join("")}}),ya=ci(e=>{e.read=function(t,r,n,i,o){var s,a,l=o*8-i-1,d=(1<>1,h=-7,T=n?o-1:0,I=n?-1:1,S=t[r+T];for(T+=I,s=S&(1<<-h)-1,S>>=-h,h+=l;h>0;s=s*256+t[r+T],T+=I,h-=8);for(a=s&(1<<-h)-1,s>>=-h,h+=i;h>0;a=a*256+t[r+T],T+=I,h-=8);if(s===0)s=1-g;else{if(s===d)return a?NaN:(S?-1:1)*(1/0);a=a+Math.pow(2,i),s=s-g}return(S?-1:1)*a*Math.pow(2,s-i)},e.write=function(t,r,n,i,o,s){var a,l,d,g=s*8-o-1,h=(1<>1,I=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,S=i?0:s-1,C=i?1:-1,M=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,a=h):(a=Math.floor(Math.log(r)/Math.LN2),r*(d=Math.pow(2,-a))<1&&(a--,d*=2),a+T>=1?r+=I/d:r+=I*Math.pow(2,1-T),r*d>=2&&(a++,d/=2),a+T>=h?(l=0,a=h):a+T>=1?(l=(r*d-1)*Math.pow(2,o),a=a+T):(l=r*Math.pow(2,T-1)*Math.pow(2,o),a=0));o>=8;t[n+S]=l&255,S+=C,l/=256,o-=8);for(a=a<0;t[n+S]=a&255,S+=C,a/=256,g-=8);t[n+S-C]|=M*128}}),nn=ha(),We=ya(),si=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ze.Buffer=A;ze.SlowBuffer=va;ze.INSPECT_MAX_BYTES=50;var sr=2147483647;ze.kMaxLength=sr;A.TYPED_ARRAY_SUPPORT=wa();!A.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function wa(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(A.prototype,"parent",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.buffer}});Object.defineProperty(A.prototype,"offset",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.byteOffset}});function xe(e){if(e>sr)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,A.prototype),t}function A(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return an(e)}return pi(e,t,r)}A.poolSize=8192;function pi(e,t,r){if(typeof e=="string")return ba(e,t);if(ArrayBuffer.isView(e))return xa(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(de(e,ArrayBuffer)||e&&de(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(de(e,SharedArrayBuffer)||e&&de(e.buffer,SharedArrayBuffer)))return fi(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return A.from(n,t,r);let i=Pa(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return A.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}A.from=function(e,t,r){return pi(e,t,r)};Object.setPrototypeOf(A.prototype,Uint8Array.prototype);Object.setPrototypeOf(A,Uint8Array);function mi(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function Ea(e,t,r){return mi(e),e<=0?xe(e):t!==void 0?typeof r=="string"?xe(e).fill(t,r):xe(e).fill(t):xe(e)}A.alloc=function(e,t,r){return Ea(e,t,r)};function an(e){return mi(e),xe(e<0?0:ln(e)|0)}A.allocUnsafe=function(e){return an(e)};A.allocUnsafeSlow=function(e){return an(e)};function ba(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!A.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=di(e,t)|0,n=xe(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function on(e){let t=e.length<0?0:ln(e.length)|0,r=xe(t);for(let n=0;n=sr)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+sr.toString(16)+" bytes");return e|0}function va(e){return+e!=e&&(e=0),A.alloc(+e)}A.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==A.prototype};A.compare=function(e,t){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),de(t,Uint8Array)&&(t=A.from(t,t.offset,t.byteLength)),!A.isBuffer(e)||!A.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let i=0,o=Math.min(r,n);in.length?(A.isBuffer(o)||(o=A.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(A.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function di(e,t){if(A.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||de(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return sn(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return vi(e).length;default:if(i)return n?-1:sn(e).length;t=(""+t).toLowerCase(),i=!0}}A.byteLength=di;function Ta(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return _a(this,t,r);case"utf8":case"utf-8":return hi(this,t,r);case"ascii":return Da(this,t,r);case"latin1":case"binary":return Ma(this,t,r);case"base64":return Oa(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Na(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}A.prototype._isBuffer=!0;function Le(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}A.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(e+=" ... "),""};si&&(A.prototype[si]=A.prototype.inspect);A.prototype.compare=function(e,t,r,n,i){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),!A.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;let o=i-n,s=r-t,a=Math.min(o,s),l=this.slice(n,i),d=e.slice(t,r);for(let g=0;g2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,cn(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=A.from(t,n)),A.isBuffer(t))return t.length===0?-1:ai(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):ai(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function ai(e,t,r,n,i){let o=1,s=e.length,a=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;o=2,s/=2,a/=2,r/=2}function l(g,h){return o===1?g[h]:g.readUInt16BE(h*o)}let d;if(i){let g=-1;for(d=r;ds&&(r=s-a),d=r;d>=0;d--){let g=!0;for(let h=0;hi&&(n=i)):n=i;let o=t.length;n>o/2&&(n=o/2);let s;for(s=0;s>>0,isFinite(r)?(r=r>>>0,n===void 0&&(n="utf8")):(n=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return Aa(this,e,t,r);case"utf8":case"utf-8":return Ra(this,e,t,r);case"ascii":case"latin1":case"binary":return Ca(this,e,t,r);case"base64":return Sa(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ia(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Oa(e,t,r){return t===0&&r===e.length?nn.fromByteArray(e):nn.fromByteArray(e.slice(t,r))}function hi(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:o>223?3:o>191?2:1;if(i+a<=r){let l,d,g,h;switch(a){case 1:o<128&&(s=o);break;case 2:l=e[i+1],(l&192)===128&&(h=(o&31)<<6|l&63,h>127&&(s=h));break;case 3:l=e[i+1],d=e[i+2],(l&192)===128&&(d&192)===128&&(h=(o&15)<<12|(l&63)<<6|d&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:l=e[i+1],d=e[i+2],g=e[i+3],(l&192)===128&&(d&192)===128&&(g&192)===128&&(h=(o&15)<<18|(l&63)<<12|(d&63)<<6|g&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return ka(n)}var li=4096;function ka(e){let t=e.length;if(t<=li)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let o=t;or&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),tr)throw new RangeError("Trying to access beyond buffer length")}A.prototype.readUintLE=A.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n};A.prototype.readUint8=A.prototype.readUInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]};A.prototype.readUint16LE=A.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]|this[e+1]<<8};A.prototype.readUint16BE=A.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]<<8|this[e+1]};A.prototype.readUint32LE=A.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};A.prototype.readUint32BE=A.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};A.prototype.readBigUInt64LE=Re(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(n)+(BigInt(i)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(n)<>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};A.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};A.prototype.readInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};A.prototype.readInt16LE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};A.prototype.readInt16BE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};A.prototype.readInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};A.prototype.readInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};A.prototype.readBigInt64LE=Re(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(n)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&xt(e,this.length-8);let n=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(n)<>>0,t||W(e,4,this.length),We.read(this,e,!0,23,4)};A.prototype.readFloatBE=function(e,t){return e=e>>>0,t||W(e,4,this.length),We.read(this,e,!1,23,4)};A.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!0,52,8)};A.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!1,52,8)};function re(e,t,r,n,i,o){if(!A.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}A.prototype.writeUintLE=A.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=1,o=0;for(this[t]=e&255;++o>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=r-1,o=1;for(this[t+i]=e&255;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r};A.prototype.writeUint8=A.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,255,0),this[t]=e&255,t+1};A.prototype.writeUint16LE=A.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeUint16BE=A.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeUint32LE=A.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};A.prototype.writeUint32BE=A.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function yi(e,t,r,n,i){Pi(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,r}function wi(e,t,r,n,i){Pi(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o=o>>8,e[r+6]=o,o=o>>8,e[r+5]=o,o=o>>8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s=s>>8,e[r+2]=s,s=s>>8,e[r+1]=s,s=s>>8,e[r]=s,r+8}A.prototype.writeBigUInt64LE=Re(function(e,t=0){return yi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeBigUInt64BE=Re(function(e,t=0){return wi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=0,o=1,s=0;for(this[t]=e&255;++i>0)-s&255;return t+r};A.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=r-1,o=1,s=0;for(this[t+i]=e&255;--i>=0&&(o*=256);)e<0&&s===0&&this[t+i+1]!==0&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r};A.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};A.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};A.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};A.prototype.writeBigInt64LE=Re(function(e,t=0){return yi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});A.prototype.writeBigInt64BE=Re(function(e,t=0){return wi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Ei(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function bi(e,t,r,n,i){return t=+t,r=r>>>0,i||Ei(e,t,r,4,34028234663852886e22,-34028234663852886e22),We.write(e,t,r,n,23,4),r+4}A.prototype.writeFloatLE=function(e,t,r){return bi(this,e,t,!0,r)};A.prototype.writeFloatBE=function(e,t,r){return bi(this,e,t,!1,r)};function xi(e,t,r,n,i){return t=+t,r=r>>>0,i||Ei(e,t,r,8,17976931348623157e292,-17976931348623157e292),We.write(e,t,r,n,52,8),r+8}A.prototype.writeDoubleLE=function(e,t,r){return xi(this,e,t,!0,r)};A.prototype.writeDoubleBE=function(e,t,r){return xi(this,e,t,!1,r)};A.prototype.copy=function(e,t,r,n){if(!A.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&n!==0&&(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e=="number")for(i=t;i2**32?i=ui(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=ui(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function ui(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function Fa(e,t,r){He(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&xt(t,e.length-(r+1))}function Pi(e,t,r,n,i,o){if(e>r||e3?t===0||t===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${t}${s} and <= ${r}${s}`,new Ke.ERR_OUT_OF_RANGE("value",a,e)}Fa(n,i,o)}function He(e,t){if(typeof e!="number")throw new Ke.ERR_INVALID_ARG_TYPE(t,"number",e)}function xt(e,t,r){throw Math.floor(e)!==e?(He(e,r),new Ke.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new Ke.ERR_BUFFER_OUT_OF_BOUNDS:new Ke.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var La=/[^+/0-9A-Za-z-_]/g;function Ua(e){if(e=e.split("=")[0],e=e.trim().replace(La,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function sn(e,t){t=t||1/0;let r,n=e.length,i=null,o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function Ba(e){let t=[];for(let r=0;r>8,i=r%256,o.push(i),o.push(n);return o}function vi(e){return nn.toByteArray(Ua(e))}function ar(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function de(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function cn(e){return e!==e}var Va=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function Re(e){return typeof BigInt>"u"?$a:e}function $a(){throw new Error("BigInt not supported")}});var w,f=fe(()=>{"use strict";w=Qe(Ti())});function Wa(){return!1}function fn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function Ha(){return fn()}function za(){return[]}function Ya(e){e(null,[])}function Za(){return""}function Xa(){return""}function el(){}function tl(){}function rl(){}function nl(){}function il(){}function ol(){}function sl(){}function al(){}function ll(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function ul(e,t){t(null,fn())}var cl,pl,ji,Gi=fe(()=>{"use strict";f();u();c();p();m();cl={},pl={existsSync:Wa,lstatSync:fn,stat:ul,statSync:Ha,readdirSync:za,readdir:Ya,readlinkSync:Za,realpathSync:Xa,chmodSync:el,renameSync:tl,mkdirSync:rl,rmdirSync:nl,rmSync:il,unlinkSync:ol,watchFile:sl,unwatchFile:al,watch:ll,promises:cl},ji=pl});var Ji=Je((mf,ml)=>{ml.exports={name:"@prisma/internals",version:"6.19.1",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function dl(...e){return e.join("/")}function gl(...e){return e.join("/")}function hl(e){let t=Qi(e),r=Ki(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function Qi(e){let t=e.split("/");return t[t.length-1]}function Ki(e){return e.split("/").slice(0,-1).join("/")}function wl(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var Wi,yl,El,bl,pr,Hi=fe(()=>{"use strict";f();u();c();p();m();Wi="/",yl=":";El={sep:Wi},bl={basename:Qi,delimiter:yl,dirname:Ki,join:gl,normalize:wl,parse:hl,posix:El,resolve:dl,sep:Wi},pr=bl});var gn=Je((kf,vl)=>{vl.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var zi=Je(mr=>{"use strict";f();u();c();p();m();Object.defineProperty(mr,"__esModule",{value:!0});mr.enginesVersion=void 0;mr.enginesVersion=gn().prisma.enginesVersion});var Xi=Je((Gf,Zi)=>{"use strict";f();u();c();p();m();Zi.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Sn=Je((jy,Eo)=>{"use strict";f();u();c();p();m();Eo.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";f();u();c();p();m()});var Ao=fe(()=>{"use strict";f();u();c();p();m()});var Vr,Qo=fe(()=>{"use strict";f();u();c();p();m();Vr=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});f();u();c();p();m();var Ci={};or(Ci,{defineExtension:()=>Ai,getExtensionContext:()=>Ri});f();u();c();p();m();f();u();c();p();m();function Ai(e){return typeof e=="function"?e:t=>t.$extends(e)}f();u();c();p();m();function Ri(e){return e}var Ii={};or(Ii,{validator:()=>Si});f();u();c();p();m();f();u();c();p();m();function Si(...e){return t=>t}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var pn,Oi,ki,Di,Mi=!0;typeof y<"u"&&({FORCE_COLOR:pn,NODE_DISABLE_COLORS:Oi,NO_COLOR:ki,TERM:Di}=y.env||{},Mi=y.stdout&&y.stdout.isTTY);var ja={enabled:!Oi&&ki==null&&Di!=="dumb"&&(pn!=null&&pn!=="0"||Mi)};function j(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!ja.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var bm=j(0,0),lr=j(1,22),ur=j(2,22),xm=j(3,23),_i=j(4,24),Pm=j(7,27),vm=j(8,28),Tm=j(9,29),Am=j(30,39),Ye=j(31,39),Ni=j(32,39),Fi=j(33,39),Li=j(34,39),Rm=j(35,39),Ui=j(36,39),Cm=j(37,39),Bi=j(90,39),Sm=j(90,39),Im=j(40,49),Om=j(41,49),km=j(42,49),Dm=j(43,49),Mm=j(44,49),_m=j(45,49),Nm=j(46,49),Fm=j(47,49);f();u();c();p();m();var Ga=100,qi=["green","yellow","blue","magenta","cyan","red"],cr=[],Vi=Date.now(),Ja=0,mn=typeof y<"u"?y.env:{};globalThis.DEBUG??=mn.DEBUG??"";globalThis.DEBUG_COLORS??=mn.DEBUG_COLORS?mn.DEBUG_COLORS==="true":!0;var Pt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function Qa(e){let t={color:qi[Ja++%qi.length],enabled:Pt.enabled(e),namespace:e,log:Pt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&cr.push([o,...n]),cr.length>Ga&&cr.shift(),Pt.enabled(o)||i){let l=n.map(g=>typeof g=="string"?g:Ka(g)),d=`+${Date.now()-Vi}ms`;Vi=Date.now(),a(o,...l,d)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var Z=new Proxy(Qa,{get:(e,t)=>Pt[t],set:(e,t,r)=>Pt[t]=r});function Ka(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function $i(){cr.length=0}f();u();c();p();m();f();u();c();p();m();var fl=Ji(),dn=fl.version;f();u();c();p();m();function Ze(e){let t=xl();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Pl())}function xl(){let e=y.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Pl(){return"library"}f();u();c();p();m();var Yi="prisma+postgres",fr=`${Yi}:`;function dr(e){return e?.toString().startsWith(`${fr}//`)??!1}function hn(e){if(!dr(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")||t.includes("[::1]")}var Tt={};or(Tt,{error:()=>Rl,info:()=>Al,log:()=>Tl,query:()=>Cl,should:()=>eo,tags:()=>vt,warn:()=>yn});f();u();c();p();m();var vt={error:Ye("prisma:error"),warn:Fi("prisma:warn"),info:Ui("prisma:info"),query:Li("prisma:query")},eo={warn:()=>!y.env.PRISMA_DISABLE_WARNINGS};function Tl(...e){console.log(...e)}function yn(e,...t){eo.warn()&&console.warn(`${vt.warn} ${e}`,...t)}function Al(e,...t){console.info(`${vt.info} ${e}`,...t)}function Rl(e,...t){console.error(`${vt.error} ${e}`,...t)}function Cl(e,...t){console.log(`${vt.query} ${e}`,...t)}f();u();c();p();m();function Ue(e,t){throw new Error(t)}f();u();c();p();m();f();u();c();p();m();function wn({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Sl=wn();function En(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Sl,"")}f();u();c();p();m();function bn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}f();u();c();p();m();function gr(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}f();u();c();p();m();function xn(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{to.has(e)||(to.add(e),yn(t,...r))};var Q=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};N(Q,"PrismaClientInitializationError");f();u();c();p();m();var se=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};N(se,"PrismaClientKnownRequestError");f();u();c();p();m();var Ce=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};N(Ce,"PrismaClientRustPanicError");f();u();c();p();m();var ae=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};N(ae,"PrismaClientUnknownRequestError");f();u();c();p();m();var ee=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};N(ee,"PrismaClientValidationError");f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var ge=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};f();u();c();p();m();function Se(e){return e.substring(0,1).toLowerCase()+e.substring(1)}f();u();c();p();m();function no(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}f();u();c();p();m();function At(e){let t;return{get(){return t||(t={value:e()}),t.value}}}f();u();c();p();m();function Il(e){return{models:Pn(e.models),enums:Pn(e.enums),types:Pn(e.types)}}function Pn(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}f();u();c();p();m();function Xe(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function yr(e){return e.toString()!=="Invalid Date"}f();u();c();p();m();f();u();c();p();m();var et=9e15,De=1e9,vn="0123456789abcdef",br="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",xr="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Tn={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-et,maxE:et,crypto:!1},ao,Pe,_=!0,vr="[DecimalError] ",ke=vr+"Invalid argument: ",lo=vr+"Precision limit exceeded",uo=vr+"crypto unavailable",co="[object Decimal]",X=Math.floor,K=Math.pow,Ol=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,kl=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Dl=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,po=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,pe=1e7,D=7,Ml=9007199254740991,_l=br.length-1,An=xr.length-1,R={toStringTag:co};R.absoluteValue=R.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),k(e)};R.ceil=function(){return k(new this.constructor(this),this.e+1,2)};R.clampedTo=R.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(ke+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};R.comparedTo=R.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,d=e.s;if(!s||!a)return!l||!d?NaN:l!==d?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-d:0;if(l!==d)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,t=0,r=na[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};R.cosine=R.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Nl(n,yo(n,r)),n.precision=e,n.rounding=t,k(Pe==2||Pe==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};R.cubeRoot=R.cbrt=function(){var e,t,r,n,i,o,s,a,l,d,g=this,h=g.constructor;if(!g.isFinite()||g.isZero())return new h(g);for(_=!1,o=g.s*K(g.s*g,1/3),!o||Math.abs(o)==1/0?(r=z(g.d),e=g.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=K(r,1/3),e=X((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new h(r),n.s=g.s):n=new h(o.toString()),s=(e=h.precision)+3;;)if(a=n,l=a.times(a).times(a),d=l.plus(g),n=V(d.plus(g).times(a),d.plus(l),s+2,1),z(a.d).slice(0,s)===(r=z(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(k(a,e+1,0),a.times(a).times(a).eq(g))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(k(n,e+1,1),t=!n.times(n).times(n).eq(g));break}return _=!0,k(n,e,h.rounding,t)};R.decimalPlaces=R.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-X(this.e/D))*D,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};R.dividedBy=R.div=function(e){return V(this,new this.constructor(e))};R.dividedToIntegerBy=R.divToInt=function(e){var t=this,r=t.constructor;return k(V(t,new r(e),0,1,1),r.precision,r.rounding)};R.equals=R.eq=function(e){return this.cmp(e)===0};R.floor=function(){return k(new this.constructor(this),this.e+1,3)};R.greaterThan=R.gt=function(e){return this.cmp(e)>0};R.greaterThanOrEqualTo=R.gte=function(e){var t=this.cmp(e);return t==1||t===0};R.hyperbolicCosine=R.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Ar(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=tt(s,1,o.times(t),new s(1),!0);for(var l,d=e,g=new s(8);d--;)l=o.times(o),o=a.minus(l.times(g.minus(l.times(g))));return k(o,s.precision=r,s.rounding=n,!0)};R.hyperbolicSine=R.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=tt(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Ar(5,e)),i=tt(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),d=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(d))))}return o.precision=t,o.rounding=r,k(i,t,r,!0)};R.hyperbolicTangent=R.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,V(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};R.inverseCosine=R.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?he(t,n,i):new t(0):new t(NaN):e.isZero()?he(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};R.inverseHyperbolicCosine=R.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,_=!1,r=r.times(r).minus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};R.inverseHyperbolicSine=R.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,_=!1,r=r.times(r).plus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln())};R.inverseHyperbolicTangent=R.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?k(new o(i),e,t,!0):(o.precision=r=n-i.e,i=V(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};R.inverseSine=R.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=he(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};R.inverseTangent=R.atan=function(){var e,t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding;if(d.isFinite()){if(d.isZero())return new g(d);if(d.abs().eq(1)&&h+4<=An)return s=he(g,h+4,T).times(.25),s.s=d.s,s}else{if(!d.s)return new g(NaN);if(h+4<=An)return s=he(g,h+4,T).times(.5),s.s=d.s,s}for(g.precision=a=h+10,g.rounding=1,r=Math.min(28,a/D+2|0),e=r;e;--e)d=d.div(d.times(d).plus(1).sqrt().plus(1));for(_=!1,t=Math.ceil(a/D),n=1,l=d.times(d),s=new g(d),i=d;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<this.d.length-2};R.isNaN=function(){return!this.s};R.isNegative=R.isNeg=function(){return this.s<0};R.isPositive=R.isPos=function(){return this.s>0};R.isZero=function(){return!!this.d&&this.d[0]===0};R.lessThan=R.lt=function(e){return this.cmp(e)<0};R.lessThanOrEqualTo=R.lte=function(e){return this.cmp(e)<1};R.logarithm=R.log=function(e){var t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding,I=5;if(e==null)e=new g(10),t=!0;else{if(e=new g(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new g(NaN);t=e.eq(10)}if(r=d.d,d.s<0||!r||!r[0]||d.eq(1))return new g(r&&!r[0]?-1/0:d.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(_=!1,a=h+I,s=Oe(d,a),n=t?Pr(g,a+10):Oe(e,a),l=V(s,n,a,1),Rt(l.d,i=h,T))do if(a+=10,s=Oe(d,a),n=t?Pr(g,a+10):Oe(e,a),l=V(s,n,a,1),!o){+z(l.d).slice(i+1,i+15)+1==1e14&&(l=k(l,h+1,0));break}while(Rt(l.d,i+=10,T));return _=!0,k(l,h,T)};R.minus=R.sub=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.constructor;if(e=new S(e),!I.d||!e.d)return!I.s||!e.s?e=new S(NaN):I.d?e.s=-e.s:e=new S(e.d||I.s!==e.s?I:NaN),e;if(I.s!=e.s)return e.s=-e.s,I.plus(e);if(d=I.d,T=e.d,a=S.precision,l=S.rounding,!d[0]||!T[0]){if(T[0])e.s=-e.s;else if(d[0])e=new S(I);else return new S(l===3?-0:0);return _?k(e,a,l):e}if(r=X(e.e/D),g=X(I.e/D),d=d.slice(),o=g-r,o){for(h=o<0,h?(t=d,o=-o,s=T.length):(t=T,r=g,s=d.length),n=Math.max(Math.ceil(a/D),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=d.length,s=T.length,h=n0;--n)d[s++]=0;for(n=T.length;n>o;){if(d[--n]s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=d.length,i=g.length,s-i<0&&(i=s,r=g,g=d,d=r),t=0;i;)t=(d[--i]=d[i]+g[i]+t)/pe|0,d[i]%=pe;for(t&&(d.unshift(t),++n),s=d.length;d[--s]==0;)d.pop();return e.d=d,e.e=Tr(d,n),_?k(e,a,l):e};R.precision=R.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(ke+e);return r.d?(t=mo(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};R.round=function(){var e=this,t=e.constructor;return k(new t(e),e.e+1,t.rounding)};R.sine=R.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Ll(n,yo(n,r)),n.precision=e,n.rounding=t,k(Pe>2?r.neg():r,e,t,!0)):new n(NaN)};R.squareRoot=R.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,l=s.e,d=s.s,g=s.constructor;if(d!==1||!a||!a[0])return new g(!d||d<0&&(!a||a[0])?NaN:a?s:1/0);for(_=!1,d=Math.sqrt(+s),d==0||d==1/0?(t=z(a),(t.length+l)%2==0&&(t+="0"),d=Math.sqrt(t),l=X((l+1)/2)-(l<0||l%2),d==1/0?t="5e"+l:(t=d.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new g(t)):n=new g(d.toString()),r=(l=g.precision)+3;;)if(o=n,n=o.plus(V(s,o,r+2,1)).times(.5),z(o.d).slice(0,r)===(t=z(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(k(o,l+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(k(n,l+1,1),e=!n.times(n).eq(s));break}return _=!0,k(n,l,g.rounding,e)};R.tangent=R.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=V(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,k(Pe==2||Pe==4?r.neg():r,e,t,!0)):new n(NaN)};R.times=R.mul=function(e){var t,r,n,i,o,s,a,l,d,g=this,h=g.constructor,T=g.d,I=(e=new h(e)).d;if(e.s*=g.s,!T||!T[0]||!I||!I[0])return new h(!e.s||T&&!T[0]&&!I||I&&!I[0]&&!T?NaN:!T||!I?e.s/0:e.s*0);for(r=X(g.e/D)+X(e.e/D),l=T.length,d=I.length,l=0;){for(t=0,i=l+n;i>n;)a=o[i]+I[n]*T[i-n-1]+t,o[i--]=a%pe|0,t=a/pe|0;o[i]=(o[i]+t)%pe|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=Tr(o,r),_?k(e,h.precision,h.rounding):e};R.toBinary=function(e,t){return Cn(this,2,e,t)};R.toDecimalPlaces=R.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(ne(e,0,De),t===void 0?t=n.rounding:ne(t,0,8),k(r,e+r.e+1,t))};R.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,!0):(ne(e,0,De),t===void 0?t=i.rounding:ne(t,0,8),n=k(new i(n),e+1,t),r=ye(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ye(i):(ne(e,0,De),t===void 0?t=o.rounding:ne(t,0,8),n=k(new o(i),e+i.e+1,t),r=ye(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};R.toFraction=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.d,C=I.constructor;if(!S)return new C(I);if(d=r=new C(1),n=l=new C(0),t=new C(n),o=t.e=mo(S)-I.e-1,s=o%D,t.d[0]=K(10,s<0?D+s:s),e==null)e=o>0?t:d;else{if(a=new C(e),!a.isInt()||a.lt(d))throw Error(ke+a);e=a.gt(t)?o>0?t:d:a}for(_=!1,a=new C(z(S)),g=C.precision,C.precision=o=S.length*D*2;h=V(a,t,0,1,1),i=r.plus(h.times(n)),i.cmp(e)!=1;)r=n,n=i,i=d,d=l.plus(h.times(i)),l=i,i=t,t=a.minus(h.times(i)),a=i;return i=V(e.minus(r),n,0,1,1),l=l.plus(i.times(d)),r=r.plus(i.times(n)),l.s=d.s=I.s,T=V(d,n,o,1).minus(I).abs().cmp(V(l,r,o,1).minus(I).abs())<1?[d,n]:[l,r],C.precision=g,_=!0,T};R.toHexadecimal=R.toHex=function(e,t){return Cn(this,16,e,t)};R.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:ne(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(_=!1,r=V(r,e,0,t,1).times(e),_=!0,k(r)):(e.s=r.s,r=e),r};R.toNumber=function(){return+this};R.toOctal=function(e,t){return Cn(this,8,e,t)};R.toPower=R.pow=function(e){var t,r,n,i,o,s,a=this,l=a.constructor,d=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(K(+a,d));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return k(a,n,o);if(t=X(e.e/D),t>=e.d.length-1&&(r=d<0?-d:d)<=Ml)return i=fo(l,a,r,n),e.s<0?new l(1).div(i):k(i,n,o);if(s=a.s,s<0){if(tl.maxE+1||t0?s/0:0):(_=!1,l.rounding=a.s=1,r=Math.min(12,(t+"").length),i=Rn(e.times(Oe(a,n+r)),n),i.d&&(i=k(i,n+5,1),Rt(i.d,n,o)&&(t=n+10,i=k(Rn(e.times(Oe(a,t+r)),t),t+5,1),+z(i.d).slice(n+1,n+15)+1==1e14&&(i=k(i,n+1,0)))),i.s=s,_=!0,l.rounding=o,k(i,n,o))};R.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ne(e,1,De),t===void 0?t=i.rounding:ne(t,0,8),n=k(new i(n),e,t),r=ye(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toSignificantDigits=R.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(ne(e,1,De),t===void 0?t=n.rounding:ne(t,0,8)),k(new n(r),e,t)};R.toString=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};R.truncated=R.trunc=function(){return k(new this.constructor(this),this.e+1,1)};R.valueOf=R.toJSON=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function z(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;tr)throw Error(ke+e)}function Rt(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=D,i=0):(i=Math.ceil((t+1)/D),t%=D),o=K(10,D-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==K(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==K(10,t-3)-1,s}function wr(e,t,r){for(var n,i=[0],o,s=0,a=e.length;sr-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function Nl(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Ar(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=tt(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var V=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var d,g,h,T,I,S,C,M,F,B,O,L,oe,J,Xr,rr,bt,en,ce,nr,ir=n.constructor,tn=n.s==i.s?1:-1,Y=n.d,$=i.d;if(!Y||!Y[0]||!$||!$[0])return new ir(!n.s||!i.s||(Y?$&&Y[0]==$[0]:!$)?NaN:Y&&Y[0]==0||!$?tn*0:tn/0);for(l?(I=1,g=n.e-i.e):(l=pe,I=D,g=X(n.e/I)-X(i.e/I)),ce=$.length,bt=Y.length,F=new ir(tn),B=F.d=[],h=0;$[h]==(Y[h]||0);h++);if($[h]>(Y[h]||0)&&g--,o==null?(J=o=ir.precision,s=ir.rounding):a?J=o+(n.e-i.e)+1:J=o,J<0)B.push(1),S=!0;else{if(J=J/I+2|0,h=0,ce==1){for(T=0,$=$[0],J++;(h1&&($=e($,T,l),Y=e(Y,T,l),ce=$.length,bt=Y.length),rr=ce,O=Y.slice(0,ce),L=O.length;L=l/2&&++en;do T=0,d=t($,O,ce,L),d<0?(oe=O[0],ce!=L&&(oe=oe*l+(O[1]||0)),T=oe/en|0,T>1?(T>=l&&(T=l-1),C=e($,T,l),M=C.length,L=O.length,d=t(C,O,M,L),d==1&&(T--,r(C,ce=10;T/=10)h++;F.e=h+g*I-1,k(F,a?o+F.e+1:o,s,S)}return F}}();function k(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor;e:if(t!=null){if(h=e.d,!h)return e;for(i=1,a=h[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=D,s=t,g=h[T=0],l=g/K(10,i-s-1)%10|0;else if(T=Math.ceil((o+1)/D),a=h.length,T>=a)if(n){for(;a++<=T;)h.push(0);g=l=0,i=1,o%=D,s=o-D+1}else break e;else{for(g=a=h[T],i=1;a>=10;a/=10)i++;o%=D,s=o-D+i,l=s<0?0:g/K(10,i-s-1)%10|0}if(n=n||t<0||h[T+1]!==void 0||(s<0?g:g%K(10,i-s-1)),d=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(o>0?s>0?g/K(10,i-s):0:h[T-1])%10&1||r==(e.s<0?8:7)),t<1||!h[0])return h.length=0,d?(t-=e.e+1,h[0]=K(10,(D-t%D)%D),e.e=-t||0):h[0]=e.e=0,e;if(o==0?(h.length=T,a=1,T--):(h.length=T+1,a=K(10,D-o),h[T]=s>0?(g/K(10,i-s)%K(10,s)|0)*a:0),d)for(;;)if(T==0){for(o=1,s=h[0];s>=10;s/=10)o++;for(s=h[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,h[0]==pe&&(h[0]=1));break}else{if(h[T]+=a,h[T]!=pe)break;h[T--]=0,a=1}for(o=h.length;h[--o]===0;)h.pop()}return _&&(e.e>I.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Ie(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Ie(-i-1)+o,r&&(n=r-s)>0&&(o+=Ie(n))):i>=s?(o+=Ie(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Ie(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Ie(n))),o}function Tr(e,t){var r=e[0];for(t*=D;r>=10;r/=10)t++;return t}function Pr(e,t,r){if(t>_l)throw _=!0,r&&(e.precision=r),Error(lo);return k(new e(br),t,1,!0)}function he(e,t,r){if(t>An)throw Error(lo);return k(new e(xr),t,r,!0)}function mo(e){var t=e.length-1,r=t*D+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Ie(e){for(var t="";e--;)t+="0";return t}function fo(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/D+4);for(_=!1;;){if(r%2&&(o=o.times(t),oo(o.d,s)&&(i=!0)),r=X(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),oo(t.d,s)}return _=!0,o}function io(e){return e.d[e.d.length-1]&1}function go(e,t,r){for(var n,i,o=new e(t[0]),s=0;++s17)return new T(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(_=!1,l=S):l=t,a=new T(.03125);e.e>-2;)e=e.times(a),h+=5;for(n=Math.log(K(2,h))/Math.LN10*2+5|0,l+=n,r=o=s=new T(1),T.precision=l;;){if(o=k(o.times(e),l,1),r=r.times(++g),a=s.plus(V(o,r,l,1)),z(a.d).slice(0,l)===z(s.d).slice(0,l)){for(i=h;i--;)s=k(s.times(s),l,1);if(t==null)if(d<3&&Rt(s.d,l-n,I,d))T.precision=l+=10,r=o=a=new T(1),g=0,d++;else return k(s,T.precision=S,I,_=!0);else return T.precision=S,s}s=a}}function Oe(e,t){var r,n,i,o,s,a,l,d,g,h,T,I=1,S=10,C=e,M=C.d,F=C.constructor,B=F.rounding,O=F.precision;if(C.s<0||!M||!M[0]||!C.e&&M[0]==1&&M.length==1)return new F(M&&!M[0]?-1/0:C.s!=1?NaN:M?0:C);if(t==null?(_=!1,g=O):g=t,F.precision=g+=S,r=z(M),n=r.charAt(0),Math.abs(o=C.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(e),r=z(C.d),n=r.charAt(0),I++;o=C.e,n>1?(C=new F("0."+r),o++):C=new F(n+"."+r.slice(1))}else return d=Pr(F,g+2,O).times(o+""),C=Oe(new F(n+"."+r.slice(1)),g-S).plus(d),F.precision=O,t==null?k(C,O,B,_=!0):C;for(h=C,l=s=C=V(C.minus(1),C.plus(1),g,1),T=k(C.times(C),g,1),i=3;;){if(s=k(s.times(T),g,1),d=l.plus(V(s,new F(i),g,1)),z(d.d).slice(0,g)===z(l.d).slice(0,g))if(l=l.times(2),o!==0&&(l=l.plus(Pr(F,g+2,O).times(o+""))),l=V(l,new F(I),g,1),t==null)if(Rt(l.d,g-S,B,a))F.precision=g+=S,d=s=C=V(h.minus(1),h.plus(1),g,1),T=k(C.times(C),g,1),i=a=1;else return k(l,F.precision=O,B,_=!0);else return F.precision=O,l;l=d,i+=2}}function ho(e){return String(e.s*e.s/0)}function Er(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%D,r<0&&(n+=D),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),po.test(t))return Er(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(kl.test(t))r=16,t=t.toLowerCase();else if(Ol.test(t))r=2;else if(Dl.test(t))r=8;else throw Error(ke+t);for(o=t.search(/p/i),o>0?(l=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=fo(n,new n(r),o,o*2)),d=wr(t,r,pe),g=d.length-1,o=g;d[o]===0;--o)d.pop();return o<0?new n(e.s*0):(e.e=Tr(d,g),e.d=d,_=!1,s&&(e=V(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?K(2,l):ve.pow(2,l))),_=!0,e)}function Ll(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:tt(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Ar(5,r)),t=tt(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function tt(e,t,r,n,i){var o,s,a,l,d=1,g=e.precision,h=Math.ceil(g/D);for(_=!1,l=r.times(r),a=new e(n);;){if(s=V(a.times(l),new e(t++*t++),g,1),a=i?n.plus(s):n.minus(s),n=V(s.times(l),new e(t++*t++),g,1),s=a.plus(n),s.d[h]!==void 0){for(o=h;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,d++}return _=!0,s.d.length=h+1,s}function Ar(e,t){for(var r=e;--t;)r*=e;return r}function yo(e,t){var r,n=t.s<0,i=he(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return Pe=n?4:1,t;if(r=t.divToInt(i),r.isZero())Pe=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return Pe=io(r)?n?2:3:n?4:1,t;Pe=io(r)?n?1:4:n?3:2}return t.minus(i).abs()}function Cn(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor,S=r!==void 0;if(S?(ne(r,1,De),n===void 0?n=I.rounding:ne(n,0,8)):(r=I.precision,n=I.rounding),!e.isFinite())g=ho(e);else{for(g=ye(e),s=g.indexOf("."),S?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(g=g.replace(".",""),T=new I(1),T.e=g.length-s,T.d=wr(ye(T),10,i),T.e=T.d.length),h=wr(g,10,i),o=l=h.length;h[--l]==0;)h.pop();if(!h[0])g=S?"0p+0":"0";else{if(s<0?o--:(e=new I(e),e.d=h,e.e=o,e=V(e,T,r,n,0,i),h=e.d,o=e.e,d=ao),s=h[r],a=i/2,d=d||h[r+1]!==void 0,d=n<4?(s!==void 0||d)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||d||n===6&&h[r-1]&1||n===(e.s<0?8:7)),h.length=r,d)for(;++h[--r]>i-1;)h[r]=0,r||(++o,h.unshift(1));for(l=h.length;!h[l-1];--l);for(s=0,g="";s1)if(t==16||t==8){for(s=t==16?4:3,--l;l%s;l++)g+="0";for(h=wr(g,i,t),l=h.length;!h[l-1];--l);for(s=1,g="1.";sl)for(o-=l;o--;)g+="0";else ot)return e.length=t,!0}function Ul(e){return new this(e).abs()}function Bl(e){return new this(e).acos()}function ql(e){return new this(e).acosh()}function Vl(e,t){return new this(e).plus(t)}function $l(e){return new this(e).asin()}function jl(e){return new this(e).asinh()}function Gl(e){return new this(e).atan()}function Jl(e){return new this(e).atanh()}function Ql(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=he(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?he(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=he(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(V(e,t,o,1)),t=he(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(V(e,t,o,1)),r}function Kl(e){return new this(e).cbrt()}function Wl(e){return k(e=new this(e),e.e+1,2)}function Hl(e,t,r){return new this(e).clamp(t,r)}function zl(e){if(!e||typeof e!="object")throw Error(vr+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,De,"rounding",0,8,"toExpNeg",-et,0,"toExpPos",0,et,"maxE",0,et,"minE",-et,0,"modulo",0,9];for(t=0;t=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(ke+r+": "+n);if(r="crypto",i&&(this[r]=Tn[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(uo);else this[r]=!1;else throw Error(ke+r+": "+n);return this}function Yl(e){return new this(e).cos()}function Zl(e){return new this(e).cosh()}function wo(e){var t,r,n;function i(o){var s,a,l,d=this;if(!(d instanceof i))return new i(o);if(d.constructor=i,so(o)){d.s=o.s,_?!o.d||o.e>i.maxE?(d.e=NaN,d.d=null):o.e=10;a/=10)s++;_?s>i.maxE?(d.e=NaN,d.d=null):s=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(uo);else for(;o=10;i/=10)n++;nCt,datamodelEnumToSchemaEnum:()=>vu});f();u();c();p();m();f();u();c();p();m();function vu(e){return{name:e.name,values:e.values.map(t=>t.name)}}f();u();c();p();m();var Ct=(O=>(O.findUnique="findUnique",O.findUniqueOrThrow="findUniqueOrThrow",O.findFirst="findFirst",O.findFirstOrThrow="findFirstOrThrow",O.findMany="findMany",O.create="create",O.createMany="createMany",O.createManyAndReturn="createManyAndReturn",O.update="update",O.updateMany="updateMany",O.updateManyAndReturn="updateManyAndReturn",O.upsert="upsert",O.delete="delete",O.deleteMany="deleteMany",O.groupBy="groupBy",O.count="count",O.aggregate="aggregate",O.findRaw="findRaw",O.aggregateRaw="aggregateRaw",O))(Ct||{});var Tu=Qe(Xi());var Au={red:Ye,gray:Bi,dim:ur,bold:lr,underline:_i,highlightSource:e=>e.highlight()},Ru={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function Cu({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function Su({functionName:e,location:t,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],l=t?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`))):a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)),t&&a.push(s.underline(Iu(t))),i){a.push("");let d=[i.toString()];o&&(d.push(o),d.push(s.dim(")"))),a.push(d.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function Iu(e){let t=[e.fileName];return e.lineNumber&&t.push(String(e.lineNumber)),e.columnNumber&&t.push(String(e.columnNumber)),t.join(":")}function Cr(e){let t=e.showColors?Au:Ru,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(e,t):r=Cu(e),Su(r,t)}f();u();c();p();m();var Co=Qe(Sn());f();u();c();p();m();function Po(e,t,r){let n=vo(e),i=Ou(n),o=Du(i);o?Sr(o,t,r):t.addErrorMessage(()=>"Unknown error")}function vo(e){return e.errors.flatMap(t=>t.kind==="Union"?vo(t):[t])}function Ou(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:ku(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function ku(e,t){return[...new Set(e.concat(t))]}function Du(e){return xn(e,(t,r)=>{let n=bo(t),i=bo(r);return n!==i?n-i:xo(t)-xo(r)})}function bo(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function xo(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}f();u();c();p();m();var le=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};f();u();c();p();m();f();u();c();p();m();Ao();f();u();c();p();m();var nt=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};To();f();u();c();p();m();f();u();c();p();m();var Ir=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};f();u();c();p();m();var Or=e=>e,kr={bold:Or,red:Or,green:Or,dim:Or,enabled:!1},Ro={bold:lr,red:Ye,green:Ni,dim:ur,enabled:!0},it={write(e){e.writeLine(",")}};f();u();c();p();m();var we=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};f();u();c();p();m();var _e=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var ot=class extends _e{items=[];addItem(t){return this.items.push(new Ir(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new we("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(it,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var st=class e extends _e{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof ot&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new we("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(it,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};f();u();c();p();m();var H=class extends _e{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new we(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};f();u();c();p();m();var St=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(it,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Sr(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":Mu(e,t);break;case"IncludeOnScalar":_u(e,t);break;case"EmptySelection":Nu(e,t,r);break;case"UnknownSelectionField":Bu(e,t);break;case"InvalidSelectionValue":qu(e,t);break;case"UnknownArgument":Vu(e,t);break;case"UnknownInputField":$u(e,t);break;case"RequiredArgumentMissing":ju(e,t);break;case"InvalidArgumentType":Gu(e,t);break;case"InvalidArgumentValue":Ju(e,t);break;case"ValueTooLarge":Qu(e,t);break;case"SomeFieldsMissing":Ku(e,t);break;case"TooManyFieldsGiven":Wu(e,t);break;case"Union":Po(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function Mu(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function _u(e,t){let[r,n]=at(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new le(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${It(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function Nu(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Fu(e,t,i);return}if(n.hasField("select")){Lu(e,t);return}}if(r?.[Se(e.outputType.name)]){Uu(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Fu(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new le(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function Lu(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),Oo(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${It(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function Uu(e,t){let r=new St;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new le("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=at(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new st;l.addSuggestion(n),a.value=l}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function Bu(e,t){let r=ko(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":Oo(n,e.outputType);break;case"include":Hu(n,e.outputType);break;case"omit":zu(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(It(n)),i.join(" ")})}function qu(e,t){let r=ko(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function Vu(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Yu(n,e.arguments)),t.addErrorMessage(i=>So(i,r,e.arguments.map(o=>o.name)))}function $u(e,t){let[r,n]=at(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Do(o,e.inputType)}t.addErrorMessage(o=>So(o,n,e.inputType.fields.map(s=>s.name)))}function So(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=Xu(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(It(e)),n.join(" ")}function ju(e,t){let r;t.addErrorMessage(l=>r?.value instanceof H&&r.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=at(e.argumentPath),s=new St,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new le(o,s).makeRequired())}else{let l=e.inputTypes.map(Io).join(" | ");a.addSuggestion(new le(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=at(e.dependentArgumentPath);t.addErrorMessage(d=>`Argument \`${d.green(o)}\` is required because argument \`${d.green(l)}\` was provided.`)}}}function Io(e){return e.kind==="list"?`${Io(e.elementType)}[]`:e.name}function Gu(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=Dr("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function Ju(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=Dr("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function Qu(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof H&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function Ku(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Do(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Dr("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(It(i)),o.join(" ")})}function Wu(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Dr("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function Oo(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new le(r.name,"true"))}function Hu(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new le(r.name,"true"))}function zu(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new le(r.name,"true"))}function Yu(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new le(r.name,r.typeNames.join(" | ")))}function ko(e,t){let[r,n]=at(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Do(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new le(r.name,r.typeNames.join(" | ")))}function at(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function It({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function Dr(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var Zu=3;function Xu(e,t){let r=1/0,n;for(let i of t){let o=(0,Co.default)(e,i);o>Zu||o`}};function lt(e){return e instanceof Ot}f();u();c();p();m();var Mr=Symbol(),On=new WeakMap,Te=class{constructor(t){t===Mr?On.set(this,`Prisma.${this._getName()}`):On.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return On.get(this)}},kt=class extends Te{_getNamespace(){return"NullTypes"}},Dt=class extends kt{#e};Dn(Dt,"DbNull");var Mt=class extends kt{#e};Dn(Mt,"JsonNull");var _t=class extends kt{#e};Dn(_t,"AnyNull");var kn={classes:{DbNull:Dt,JsonNull:Mt,AnyNull:_t},instances:{DbNull:new Dt(Mr),JsonNull:new Mt(Mr),AnyNull:new _t(Mr)}};function Dn(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}f();u();c();p();m();var Mo=": ",_r=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Mo.length}write(t){let r=new we(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Mo).write(this.value)}};var Mn=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function ut(e){return new Mn(_o(e))}function _o(e){let t=new st;for(let[r,n]of Object.entries(e)){let i=new _r(r,No(n));t.addField(i)}return t}function No(e){if(typeof e=="string")return new H(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new H(String(e));if(typeof e=="bigint")return new H(`${e}n`);if(e===null)return new H("null");if(e===void 0)return new H("undefined");if(rt(e))return new H(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return w.Buffer.isBuffer(e)?new H(`Buffer.alloc(${e.byteLength})`):new H(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=yr(e)?e.toISOString():"Invalid Date";return new H(`new Date("${t}")`)}return e instanceof Te?new H(`Prisma.${e._getName()}`):lt(e)?new H(`prisma.${Se(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?ec(e):typeof e=="object"?_o(e):new H(Object.prototype.toString.call(e))}function ec(e){let t=new ot;for(let r of e)t.addItem(No(r));return t}function Nr(e,t){let r=t==="pretty"?Ro:kr,n=e.renderAllMessages(r),i=new nt(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Fr({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=ut(e);for(let h of t)Sr(h,a,s);let{message:l,args:d}=Nr(a,r),g=Cr({message:l,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:d});throw new ee(g,{clientVersion:o})}f();u();c();p();m();f();u();c();p();m();function Ee(e){return e.replace(/^./,t=>t.toLowerCase())}f();u();c();p();m();function Lo(e,t,r){let n=Ee(r);return!t.result||!(t.result.$allModels||t.result[n])?e:tc({...e,...Fo(t.name,e,t.result.$allModels),...Fo(t.name,e,t.result[n])})}function tc(e){let t=new ge,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return gr(e,n=>({...n,needs:r(n.name,new Set)}))}function Fo(e,t,r){return r?gr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:rc(t,o,i)})):{}}function rc(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function Uo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function Bo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var Lr=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new ge;modelExtensionsCache=new ge;queryCallbacksCache=new ge;clientExtensions=At(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=At(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Lo(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Ee(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},ct=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new Lr(t))}isEmpty(){return this.head===void 0}append(t){return new e(new Lr(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};f();u();c();p();m();var Ur=class{constructor(t){this.name=t}};function qo(e){return e instanceof Ur}function nc(e){return new Ur(e)}f();u();c();p();m();f();u();c();p();m();var Vo=Symbol(),Nt=class{constructor(t){if(t!==Vo)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?_n:t}},_n=new Nt(Vo);function be(e){return e instanceof Nt}var ic={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},$o="explicitly `undefined` values are not allowed";function Fn({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=ct.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g}){let h=new Nn({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g});return{modelName:e,action:ic[t],query:Ft(r,h)}}function Ft({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Go(r,n),selection:oc(e,t,i,n)}}function oc(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),uc(e,n)):sc(n,t,r)}function sc(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&ac(n,t,e),lc(n,r,e),n}function ac(e,t,r){for(let[n,i]of Object.entries(t)){if(be(i))continue;let o=r.nestSelection(n);if(Ln(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=Ft(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Ft(i,o)}}function lc(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=Bo(i,n);for(let[s,a]of Object.entries(o)){if(be(a))continue;Ln(a,r.nestSelection(s));let l=r.findField(s);n?.[s]&&!l||(e[s]=!a)}}function uc(e,t){let r={},n=t.getComputedFields(),i=Uo(e,n);for(let[o,s]of Object.entries(i)){if(be(s))continue;let a=t.nestSelection(o);Ln(s,a);let l=t.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||be(s)){r[o]=!1;continue}if(s===!0){l?.kind==="object"?r[o]=Ft({},a):r[o]=!0;continue}r[o]=Ft(s,a)}}return r}function jo(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(Xe(e)){if(yr(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(qo(e))return{$type:"Param",value:e.name};if(lt(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return cc(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:w.Buffer.from(r,n,i).toString("base64")}}if(pc(e))return e.values;if(rt(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Te){if(e!==kn.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(mc(e))return e.toJSON();if(typeof e=="object")return Go(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Go(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);be(i)||(i!==void 0?r[n]=jo(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:$o}))}return r}function cc(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[Se(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Ue(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};f();u();c();p();m();function Jo(e){if(!e._hasPreviewFlag("metrics"))throw new ee("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var Lt=class{_client;constructor(t){this._client=t}prometheus(t){return Jo(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return Jo(this._client),this._client._engine.metrics({format:"json",...t})}};f();u();c();p();m();function fc(e,t){let r=At(()=>dc(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function dc(e){return{datamodel:{models:Un(e.models),enums:Un(e.enums),types:Un(e.types)}}}function Un(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}f();u();c();p();m();var Bn=new WeakMap,Br="$$PrismaTypedSql",Ut=class{constructor(t,r){Bn.set(this,{sql:t,values:r}),Object.defineProperty(this,Br,{value:Br})}get sql(){return Bn.get(this).sql}get values(){return Bn.get(this).values}};function gc(e){return(...t)=>new Ut(e,t)}function qr(e){return e!=null&&e[Br]===Br}f();u();c();p();m();var ua=Qe(gn());f();u();c();p();m();Qo();Gi();Hi();f();u();c();p();m();var ue=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}f();u();c();p();m();f();u();c();p();m();var $r={enumerable:!0,configurable:!0,writable:!0};function jr(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>$r,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var Ho=Symbol.for("nodejs.util.inspect.custom");function me(e,t){let r=wc(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=zo(Reflect.ownKeys(o),r),a=zo(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=r.get(s);return l?l.getPropertyDescriptor?{...$r,...l?.getPropertyDescriptor(s)}:$r:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[Ho]=function(){let o={...this};return delete o[Ho],o},i}function wc(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function zo(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}f();u();c();p();m();function pt(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}f();u();c();p();m();function Gr(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}f();u();c();p();m();function Yo(e){if(e===void 0)return"";let t=ut(e);return new nt(0,{colors:kr}).write(t).toString()}f();u();c();p();m();var Ec="P2037";function Jr({error:e,user_facing_error:t},r,n){return t.error_code?new se(bc(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new ae(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function bc(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===Ec&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var qn=class{getLocation(){return null}};function Ne(e){return typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new qn}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Zo={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function mt(e={}){let t=Pc(e);return Object.entries(t).reduce((n,[i,o])=>(Zo[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Pc(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Qr(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function Xo(e,t){let r=Qr(e);return t({action:"aggregate",unpacker:r,argsMapper:mt})(e)}f();u();c();p();m();function vc(e={}){let{select:t,...r}=e;return typeof t=="object"?mt({...r,_count:t}):mt({...r,_count:{_all:!0}})}function Tc(e={}){return typeof e.select=="object"?t=>Qr(e)(t)._count:t=>Qr(e)(t)._count._all}function es(e,t){return t({action:"count",unpacker:Tc(e),argsMapper:vc})(e)}f();u();c();p();m();function Ac(e={}){let t=mt(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function Rc(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function ts(e,t){return t({action:"groupBy",unpacker:Rc(e),argsMapper:Ac})(e)}function rs(e,t,r){if(t==="aggregate")return n=>Xo(n,r);if(t==="count")return n=>es(n,r);if(t==="groupBy")return n=>ts(n,r)}f();u();c();p();m();function ns(e,t){let r=t.fields.filter(i=>!i.relationName),n=no(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new Ot(e,o,s.type,s.isList,s.kind==="enum")},...jr(Object.keys(n))})}f();u();c();p();m();f();u();c();p();m();var is=e=>Array.isArray(e)?e:e.split("."),Vn=(e,t)=>is(t).reduce((r,n)=>r&&r[n],e),os=(e,t,r)=>is(t).reduceRight((n,i,o,s)=>Object.assign({},Vn(e,s.slice(0,o)),{[i]:n}),r);function Cc(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function Sc(e,t,r){return t===void 0?e??{}:os(t,r,e||!0)}function $n(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((l,d)=>({...l,[d.name]:d}),{});return l=>{let d=Ne(e._errorFormat),g=Cc(n,i),h=Sc(l,o,g),T=r({dataPath:g,callsite:d})(h),I=Ic(e,t);return new Proxy(T,{get(S,C){if(!I.includes(C))return S[C];let F=[a[C].type,r,C],B=[g,h];return $n(e,...F,...B)},...jr([...I,...Object.getOwnPropertyNames(T)])})}}function Ic(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var Oc=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],kc=["aggregate","count","groupBy"];function jn(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[Dc(e,t),_c(e,t),Bt(r),te("name",()=>t),te("$name",()=>t),te("$parent",()=>e._appliedParent)];return me({},n)}function Dc(e,t){let r=Ee(t),n=Object.keys(Ct).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let d=Ne(e._errorFormat);return e._createPrismaPromise(g=>{let h={args:l,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:g,callsite:d};return e._request({...h,...a})},{action:o,args:l,model:t})};return Oc.includes(o)?$n(e,t,s):Mc(i)?rs(e,i,s):s({})}}}function Mc(e){return kc.includes(e)}function _c(e,t){return Be(te("fields",()=>{let r=e._runtimeDataModel.models[t];return ns(t,r)}))}f();u();c();p();m();function ss(e){return e.replace(/^./,t=>t.toUpperCase())}var Gn=Symbol();function qt(e){let t=[Nc(e),Fc(e),te(Gn,()=>e),te("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(Bt(r)),me(e,t)}function Nc(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function Fc(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Ee),n=[...new Set(t.concat(r))];return Be({getKeys(){return n},getPropertyValue(i){let o=ss(i);if(e._runtimeDataModel.models[o]!==void 0)return jn(e,o);if(e._runtimeDataModel.models[i]!==void 0)return jn(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function as(e){return e[Gn]?e[Gn]:e}function ls(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return qt(t)}f();u();c();p();m();f();u();c();p();m();function us({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let d=l.needs.filter(g=>n[g]);d.length>0&&a.push(pt(d))}else if(r){if(!r[l.name])continue;let d=l.needs.filter(g=>!r[g]);d.length>0&&a.push(pt(d))}Lc(e,l.needs)&&s.push(Uc(l,me(e,s)))}return s.length>0||a.length>0?me(e,[...s,...a]):e}function Lc(e,t){return t.every(r=>bn(e,r))}function Uc(e,t){return Be(te(e.name,()=>e.compute(t)))}f();u();c();p();m();function Kr({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sg.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let d=typeof s=="object"?s:{};t[o]=Kr({visitor:i,result:t[o],args:d,modelName:l.type,runtimeDataModel:n})}}function ps({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Kr({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,l,d)=>{let g=Ee(l);return us({result:a,modelName:g,select:d.select,omit:d.select?void 0:{...o?.[g],...d.omit},extensions:n})}})}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Bc=["$connect","$disconnect","$on","$transaction","$extends"],ms=Bc;function fs(e){if(e instanceof ue)return qc(e);if(qr(e))return Vc(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:fs(t.args??{}),__internalParams:t,query:(s,a=t)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=Es(o,l),a.args=s,gs(e,a,r,n+1)}})})}function hs(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return gs(e,t,s)}function ys(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?ws(r,n,0,e):e(r)}}function ws(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=Es(i,l),ws(a,t,r+1,n)}})}var ds=e=>e;function Es(e=ds,t=ds){return r=>e(t(r))}f();u();c();p();m();var bs=Z("prisma:client"),xs={Vercel:"vercel","Netlify CI":"netlify"};function Ps({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(bs("checkPlatformCaching:postinstall",e),bs("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in xs){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + +Learn how: https://pris.ly/d/${xs[t]}-build`;throw console.error(i),new Q(i,r)}}f();u();c();p();m();function vs(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();function Ts(e,t){throw new Error(t)}function $c(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function jc(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function $t(e){return e===null?e:Array.isArray(e)?e.map($t):typeof e=="object"?$c(e)?Gc(e):e.constructor!==null&&e.constructor.name!=="Object"?e:jc(e,$t):e}function Gc({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=w.Buffer.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new ve(t);case"Json":return JSON.parse(t);default:Ts(t,"Unknown tagged value")}}var As="6.19.1";f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Qc=()=>globalThis.process?.release?.name==="node",Kc=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,Wc=()=>!!globalThis.Deno,Hc=()=>typeof globalThis.Netlify=="object",zc=()=>typeof globalThis.EdgeRuntime=="object",Yc=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function Zc(){return[[Hc,"netlify"],[zc,"edge-light"],[Yc,"workerd"],[Wc,"deno"],[Kc,"bun"],[Qc,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var Xc={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Jn(){let e=Zc();return{id:e,prettyName:Xc[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function ft({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw Jn().id==="workerd"?new Q(`error: Environment variable not found: ${s.fromEnvVar}. + +In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new Q(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new Q("error: Missing URL environment variable, value, or override.",n);return i}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Wr=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ie=class extends Wr{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};f();u();c();p();m();function U(e,t){return{...e,isRetryable:t}}var qe=class extends ie{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,U(r,!1))}};N(qe,"InvalidDatasourceError");function Rs(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=ft({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof y<"u"?y.env:{}}}),i;try{i=new URL(n)}catch{throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==fr)throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new qe(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let l=hn(i)?"http:":"https:";y.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(l="http:");let d=new URL(i.href.replace(o,l));return{apiKey:a,url:d}}f();u();c();p();m();var Cs=Qe(zi()),Hr=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":Cs.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};f();u();c();p();m();function ep(e){return e[0]*1e3+e[1]/1e6}function Qn(e){return new Date(ep(e))}f();u();c();p();m();f();u();c();p();m();var dt=class extends ie{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",U(t,!0))}};N(dt,"ForcedRetryError");f();u();c();p();m();var Ve=class extends ie{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,U(r,!1))}};N(Ve,"NotImplementedYetError");f();u();c();p();m();f();u();c();p();m();var G=class extends ie{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var $e=class extends G{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",U(t,!0))}};N($e,"SchemaMissingError");f();u();c();p();m();f();u();c();p();m();var Kn="This request could not be understood by the server",jt=class extends G{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Kn,U(t,!1)),n&&(this.code=n)}};N(jt,"BadRequestError");f();u();c();p();m();var Gt=class extends G{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",U(t,!0)),this.logs=r}};N(Gt,"HealthcheckTimeoutError");f();u();c();p();m();var Jt=class extends G{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,U(t,!0)),this.logs=n}};N(Jt,"EngineStartupError");f();u();c();p();m();var Qt=class extends G{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",U(t,!1))}};N(Qt,"EngineVersionNotSupportedError");f();u();c();p();m();var Wn="Request timed out",Kt=class extends G{name="GatewayTimeoutError";code="P5009";constructor(t,r=Wn){super(r,U(t,!1))}};N(Kt,"GatewayTimeoutError");f();u();c();p();m();var tp="Interactive transaction error",Wt=class extends G{name="InteractiveTransactionError";code="P5015";constructor(t,r=tp){super(r,U(t,!1))}};N(Wt,"InteractiveTransactionError");f();u();c();p();m();var rp="Request parameters are invalid",Ht=class extends G{name="InvalidRequestError";code="P5011";constructor(t,r=rp){super(r,U(t,!1))}};N(Ht,"InvalidRequestError");f();u();c();p();m();var Hn="Requested resource does not exist",zt=class extends G{name="NotFoundError";code="P5003";constructor(t,r=Hn){super(r,U(t,!1))}};N(zt,"NotFoundError");f();u();c();p();m();var zn="Unknown server error",gt=class extends G{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||zn,U(t,!0)),this.logs=n}};N(gt,"ServerError");f();u();c();p();m();var Yn="Unauthorized, check your connection string",Yt=class extends G{name="UnauthorizedError";code="P5007";constructor(t,r=Yn){super(r,U(t,!1))}};N(Yt,"UnauthorizedError");f();u();c();p();m();var Zn="Usage exceeded, retry again later",Zt=class extends G{name="UsageExceededError";code="P5008";constructor(t,r=Zn){super(r,U(t,!0))}};N(Zt,"UsageExceededError");async function np(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function Xt(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await np(e);if(n.type==="QueryEngineError")throw new se(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new gt(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new $e(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Qt(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Jt(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new Q(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Gt(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Wt(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Ht(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Yt(r,ht(Yn,n));if(e.status===404)return new zt(r,ht(Hn,n));if(e.status===429)throw new Zt(r,ht(Zn,n));if(e.status===504)throw new Kt(r,ht(Wn,n));if(e.status>=500)throw new gt(r,ht(zn,n));if(e.status>=400)throw new jt(r,ht(Kn,n))}function ht(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}f();u();c();p();m();function Ss(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}f();u();c();p();m();var Ae="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Is(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,d,g;for(let h=0;h>18,a=(g&258048)>>12,l=(g&4032)>>6,d=g&63,r+=Ae[s]+Ae[a]+Ae[l]+Ae[d];return i==1?(g=t[o],s=(g&252)>>2,a=(g&3)<<4,r+=Ae[s]+Ae[a]+"=="):i==2&&(g=t[o]<<8|t[o+1],s=(g&64512)>>10,a=(g&1008)>>4,l=(g&15)<<2,r+=Ae[s]+Ae[a]+Ae[l]+"="),r}f();u();c();p();m();function Os(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new Q("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}f();u();c();p();m();var ks={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};f();u();c();p();m();f();u();c();p();m();var er=class extends ie{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service: +${t}`,U(r,!0))}};N(er,"RequestError");async function je(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new er(a,{clientVersion:n,cause:s})}}var op=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Ds=Z("prisma:client:dataproxyEngine");async function sp(e,t){let r=ks["@prisma/engines-version"],n=t.clientVersion??"unknown";if(y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&op.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,l,d]=s.split("."),g=ap(`<=${a}.${l}.${d}`),h=await je(g,{clientVersion:n});if(!h.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${h.status} ${h.statusText}, response body: ${await h.text()||""}`);let T=await h.text();Ds("length of body fetched from unpkg.com",T.length);let I;try{I=JSON.parse(T)}catch(S){throw console.error("JSON.parse error: body fetched from unpkg.com: ",T),S}return I.version}throw new Ve("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function Ms(e,t){let r=await sp(e,t);return Ds("version",r),r}function ap(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var _s=3,tr=Z("prisma:client:dataproxyEngine"),yt=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){Os(t),this.config=t,this.env=t.env,this.inlineSchema=Is(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new Hr({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await Ms(this.host,this.config),tr("host",this.host),tr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":tr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:Qn(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:Qn(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await je(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||tr("schema response status",r.status);let n=await Xt(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=Gr(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||tr("graphql response status",a.status),await this.handleError(await Xt(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await je(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Xt(l,this.clientVersion));let d=await l.json(),{extensions:g}=d;g&&this.propagateResponseExtensions(g);let h=d.id,T=d["data-proxy"].endpoint;return{id:h,payload:{endpoint:T}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Xt(a,this.clientVersion));let l=await a.json(),{extensions:d}=l;d&&this.propagateResponseExtensions(d);return}}})}getURLAndAPIKey(){return Rs({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new Ve("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ie)||!i.isRetryable)throw i;if(r>=_s)throw i instanceof dt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${_s} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Ss(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof $e)throw await this.uploadSchema(),new dt({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?Jr(t[0],this.config.clientVersion,this.config.activeProvider):new ae(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};f();u();c();p();m();function Ns({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=C=>{i.push({_tag:"warning",value:C})},a=C=>{let M=C.join(` +`);o.push({_tag:"error",value:M})},l=!!e?.startsWith("prisma://"),d=dr(e),g=!!t,h=l||d;!g&&r&&h&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let T=h||!r;g&&(T||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):h?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let I={accelerate:T,ppg:d,driverAdapters:g};function S(C){return C.length>0}return S(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:I}:{ok:!0,diagnostics:{warnings:i},isUsing:I}}function Fs({copyEngine:e=!0},t){let r;try{r=ft({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...y.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=Ns({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"edge"});for(let h of o.warnings)hr(...h.value);if(!n){let h=o.errors[0];throw new ee(h.value,{clientVersion:t.clientVersion})}let s=Ze(t.generator),a=s==="library",l=s==="binary",d=s==="client",g=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new yt(t):(i.driverAdapters,i.accelerate,new yt(t))}f();u();c();p();m();function Ls({generator:e}){return e?.previewFeatures??[]}f();u();c();p();m();var Us=e=>({command:e});f();u();c();p();m();f();u();c();p();m();var Bs=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);f();u();c();p();m();function wt(e){try{return qs(e,"fast")}catch{return qs(e,"slow")}}function qs(e,t){return JSON.stringify(e.map(r=>$s(r,t)))}function $s(e,t){if(Array.isArray(e))return e.map(r=>$s(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(Xe(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Me.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(w.Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(lp(e))return{prisma__type:"bytes",prisma__value:w.Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:w.Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?js(e):e}function lp(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function js(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Vs);let t={};for(let r of Object.keys(e))t[r]=Vs(e[r]);return t}function Vs(e){return typeof e=="bigint"?e.toString():js(e)}var up=/^(\s*alter\s)/i,Gs=Z("prisma:client");function Xn(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&up.exec(t))throw new Error(`Running ALTER using ${n} is not supported +Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. + +Example: + await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) + +More Information: https://pris.ly/d/execute-raw +`)}var ei=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(qr(r))n=r.sql,i={values:wt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:wt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:wt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:wt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Bs(r),i={values:wt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Gs(`prisma.${e}(${n}, ${i.values})`):Gs(`prisma.${e}(${n})`),{query:n,parameters:i}},Js={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new ue(t,r)}},Qs={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};f();u();c();p();m();function ti(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Ks(r(s)):Ks(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Ks(e){return typeof e.then=="function"?e:Promise.resolve(e)}f();u();c();p();m();var cp=dn.split(".")[0],pp={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},ri=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${cp}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??pp}};function Ws(){return new ri}f();u();c();p();m();function Hs(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}f();u();c();p();m();function zs(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}f();u();c();p();m();f();u();c();p();m();function zr(e){return typeof e.batchRequestIdx=="number"}f();u();c();p();m();function Ys(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(ni(e.query.arguments)),t.push(ni(e.query.selection)),t.join("")}function ni(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${ni(n)})`:r}).join(" ")})`}f();u();c();p();m();var mp={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function ii(e){return mp[e]}f();u();c();p();m();var Yr=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,y.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iGe("bigint",r));case"bytes-array":return t.map(r=>Ge("bytes",r));case"decimal-array":return t.map(r=>Ge("decimal",r));case"datetime-array":return t.map(r=>Ge("datetime",r));case"date-array":return t.map(r=>Ge("date",r));case"time-array":return t.map(r=>Ge("time",r));default:return t}}function oi(e){let t=[],r=fp(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(h=>h.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),d=n.some(h=>ii(h.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:gp(o),containsWrite:d,customDataProxyFetch:i})).map((h,T)=>{if(h instanceof Error)return h;try{return this.mapQueryEngineResult(n[T],h)}catch(I){return I}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?Zs(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:ii(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Ys(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return y.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(dp(t),hp(t,i))throw t;if(t instanceof se&&yp(t)){let d=Xs(t.meta);Fr({args:o,errors:[d],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let l=t.message;if(n&&(l=Cr({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),t.code){let d=s?{modelName:s,...t.meta}:t.meta;throw new se(l,{code:t.code,clientVersion:this.client._clientVersion,meta:d,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new Ce(l,this.client._clientVersion);if(t instanceof ae)throw new ae(l,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof Q)throw new Q(l,this.client._clientVersion);if(t instanceof Ce)throw new Ce(l,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?En(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(d=>d!=="select"&&d!=="include"),a=Vn(o,s),l=i==="queryRaw"?oi(a):$t(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function gp(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:Zs(e)};Ue(e,"Unknown transaction kind")}}function Zs(e){return{id:e.id,payload:e.payload}}function hp(e,t){return zr(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function yp(e){return e.code==="P2009"||e.code==="P2012"}function Xs(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(Xs)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}f();u();c();p();m();var ea=As;f();u();c();p();m();var oa=Qe(Sn());f();u();c();p();m();var q=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};N(q,"PrismaClientConstructorValidationError");var ta=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],ra=["pretty","colorless","minimal"],na=["info","query","warn","error"],wp={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=Et(r,t)||` Available datasources: ${t.join(", ")}`;throw new q(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new q(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&&Ze(t.generator)==="client")throw new q('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new q('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Ze(t.generator)==="binary")throw new q('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!ra.includes(e)){let t=Et(e,ra);throw new q(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!na.includes(r)){let n=Et(r,na);throw new q(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Et(i,o);throw new q(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new q(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new q(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new q(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new q('"omit" option is expected to be an object.');if(e===null)throw new q('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=bp(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(d=>d.name===s);if(!l){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new q(xp(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new q(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=Et(r,t);throw new q(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function sa(e,t){for(let[r,n]of Object.entries(e)){if(!ta.includes(r)){let i=Et(r,ta);throw new q(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}wp[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new q('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Et(e,t){if(t.length===0||typeof e!="string")return"";let r=Ep(e,t);return r?` Did you mean "${r}"?`:""}function Ep(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,oa.default)(e,i)}));r.sort((i,o)=>i.distanceSe(n)===t);if(r)return e[r]}function xp(e,t){let r=ut(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Nr(r,"colorless");return`Error validating "omit" option: + +${i} + +${n}`}f();u();c();p();m();function aa(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},l=d=>{o||(o=!0,r(d))};for(let d=0;d{n[d]=g,a()},g=>{if(!zr(g)){l(g);return}g.batchRequestIdx===d?l(g):(i||(i=g),a())})})}var Fe=Z("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Pp={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},vp=Symbol.for("prisma.client.transaction.id"),Tp={id:0,nextId(){return++this.id}};function Ap(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=ti();constructor(n){e=n?.__internal?.configOverride?.(e)??e,Ps(e),n&&sa(n,e);let i=new Vr().on("error",()=>{});this._extensions=ct.empty(),this._previewFeatures=Ls(e),this._clientVersion=e.clientVersion??ea,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=Ws();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&pr.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&pr.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new Q(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new Q("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let l=n??{},d=l.__internal??{},g=d.debug===!0;g&&Z.enable("prisma:client");let h=pr.resolve(e.dirname,e.relativePath);ji.existsSync(h)||(h=e.dirname),Fe("dirname",e.dirname),Fe("relativePath",e.relativePath),Fe("cwd",h);let T=d.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:y.env.NODE_ENV==="production"?this._errorFormat="minimal":y.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:h,dirname:e.dirname,enableDebugLogs:g,allowTriggerPanic:T.allowTriggerPanic,prismaPath:T.binaryPath??void 0,engineEndpoint:T.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&zs(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(I=>typeof I=="string"?I==="query":I.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:vs(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:ft,getBatchRequestPayload:Gr,prismaGraphQLToJSError:Jr,PrismaClientUnknownRequestError:ae,PrismaClientInitializationError:Q,PrismaClientKnownRequestError:se,debug:Z("prisma:client:accelerateEngine"),engineVersion:ua.version,clientVersion:e.clientVersion}},Fe("clientVersion",e.clientVersion),this._engine=Fs(e,this._engineConfig),this._requestHandler=new Zr(this,i),l.log)for(let I of l.log){let S=typeof I=="string"?I:I.emit==="stdout"?I.level:null;S&&this.$on(S,C=>{Tt.log(`${Tt.tags[S]??""}`,C.message||C.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=qt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{$i()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:ei({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=la(n,i);return Xn(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new ee("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(Xn(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new ee(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Us,callsite:Ne(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:ei({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...la(n,i));throw new ee("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new ee("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Tp.nextId(),s=Hs(n.length),a=n.map((l,d)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let g=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,h={kind:"batch",id:o,index:d,isolationLevel:g,lock:s};return l.requestTransaction?.(h)??l});return aa(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let d={kind:"itx",...a};l=await n(this._createItxClient(d)),await this._engine.transaction("commit",o,a)}catch(d){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),d}return l}_createItxClient(n){return me(qt(me(as(this),[te("_appliedParent",()=>this._appliedParent._createItxClient(n)),te("_createPrismaPromise",()=>ti(n)),te(vp,()=>n.id)])),[pt(ms)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Pp,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:d,args:g,...h}=l,T={...n,...h};g&&(T.args=i.middlewareArgsToRequestArgs(g)),n.transaction!==void 0&&d===!1&&delete T.transaction;let I=await hs(this,T);return T.model?ps({result:I,modelName:T.model,args:T.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):I};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:d,transaction:g,unpacker:h,otelParentCtx:T,customDataProxyFetch:I}){try{n=d?d(n):n;let S={name:"serialize"},C=this._tracingHelper.runInChildSpan(S,()=>Fn({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return Z.enabled("prisma:client")&&(Fe("Prisma Client call:"),Fe(`prisma.${i}(${Yo(n)})`),Fe("Generated request:"),Fe(JSON.stringify(C,null,2)+` +`)),g?.kind==="batch"&&await g.lock,this._requestHandler.request({protocolQuery:C,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:g,unpacker:h,otelParentCtx:T,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:I})}catch(S){throw S.clientVersion=this._clientVersion,S}}$metrics=new Lt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=ls}return t}function la(e,t){return Rp(e)?[new ue(e,t),Js]:[e,Qs]}function Rp(e){return Array.isArray(e)&&Array.isArray(e.raw)}f();u();c();p();m();var Cp=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function Sp(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!Cp.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}f();u();c();p();m();var export_warnEnvConflicts=void 0;export{Rr as DMMF,Z as Debug,Me as Decimal,Ci as Extensions,Lt as MetricsClient,Q as PrismaClientInitializationError,se as PrismaClientKnownRequestError,Ce as PrismaClientRustPanicError,ae as PrismaClientUnknownRequestError,ee as PrismaClientValidationError,Ii as Public,ue as Sql,nc as createParam,fc as defineDmmfProperty,$t as deserializeJsonResponse,oi as deserializeRawResult,Il as dmmfToRuntimeDataModel,yc as empty,Ap as getPrismaClient,Jn as getRuntime,hc as join,Sp as makeStrictEnum,gc as makeTypedQueryFactory,kn as objectEnumValues,Ko as raw,Fn as serializeJsonQuery,_n as skip,Wo as sqltag,export_warnEnvConflicts as warnEnvConflicts,hr as warnOnce}; +//# sourceMappingURL=edge-esm.js.map diff --git a/packages/identity-prisma-client/runtime/edge.js b/packages/identity-prisma-client/runtime/edge.js new file mode 100644 index 0000000..16f980c --- /dev/null +++ b/packages/identity-prisma-client/runtime/edge.js @@ -0,0 +1,35 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +"use strict";var ba=Object.create;var lr=Object.defineProperty;var xa=Object.getOwnPropertyDescriptor;var Pa=Object.getOwnPropertyNames;var va=Object.getPrototypeOf,Ta=Object.prototype.hasOwnProperty;var fe=(e,t)=>()=>(e&&(t=e(e=0)),t);var Je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vt=(e,t)=>{for(var r in t)lr(e,r,{get:t[r],enumerable:!0})},ci=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Pa(t))!Ta.call(e,i)&&i!==r&&lr(e,i,{get:()=>t[i],enumerable:!(n=xa(t,i))||n.enumerable});return e};var Qe=(e,t,r)=>(r=e!=null?ba(va(e)):{},ci(t||!e||!e.__esModule?lr(r,"default",{value:e,enumerable:!0}):r,e)),Aa=e=>ci(lr({},"__esModule",{value:!0}),e);var y,b,u=fe(()=>{"use strict";y={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:b}=y});var x,c=fe(()=>{"use strict";x=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,p=fe(()=>{"use strict";E=()=>{};E.prototype=E});var m=fe(()=>{"use strict"});var Ii=Je(ze=>{"use strict";f();u();c();p();m();var gi=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ra=gi(e=>{"use strict";e.byteLength=l,e.toByteArray=g,e.fromByteArray=I;var t=[],r=[],n=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(o=0,s=i.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var M=S.indexOf("=");M===-1&&(M=C);var F=M===C?0:4-M%4;return[M,F]}function l(S){var C=a(S),M=C[0],F=C[1];return(M+F)*3/4-F}function d(S,C,M){return(C+M)*3/4-M}function g(S){var C,M=a(S),F=M[0],B=M[1],O=new n(d(S,F,B)),L=0,le=B>0?F-4:F,J;for(J=0;J>16&255,O[L++]=C>>8&255,O[L++]=C&255;return B===2&&(C=r[S.charCodeAt(J)]<<2|r[S.charCodeAt(J+1)]>>4,O[L++]=C&255),B===1&&(C=r[S.charCodeAt(J)]<<10|r[S.charCodeAt(J+1)]<<4|r[S.charCodeAt(J+2)]>>2,O[L++]=C>>8&255,O[L++]=C&255),O}function h(S){return t[S>>18&63]+t[S>>12&63]+t[S>>6&63]+t[S&63]}function T(S,C,M){for(var F,B=[],O=C;Ole?le:L+O));return F===1?(C=S[M-1],B.push(t[C>>2]+t[C<<4&63]+"==")):F===2&&(C=(S[M-2]<<8)+S[M-1],B.push(t[C>>10]+t[C>>4&63]+t[C<<2&63]+"=")),B.join("")}}),Ca=gi(e=>{e.read=function(t,r,n,i,o){var s,a,l=o*8-i-1,d=(1<>1,h=-7,T=n?o-1:0,I=n?-1:1,S=t[r+T];for(T+=I,s=S&(1<<-h)-1,S>>=-h,h+=l;h>0;s=s*256+t[r+T],T+=I,h-=8);for(a=s&(1<<-h)-1,s>>=-h,h+=i;h>0;a=a*256+t[r+T],T+=I,h-=8);if(s===0)s=1-g;else{if(s===d)return a?NaN:(S?-1:1)*(1/0);a=a+Math.pow(2,i),s=s-g}return(S?-1:1)*a*Math.pow(2,s-i)},e.write=function(t,r,n,i,o,s){var a,l,d,g=s*8-o-1,h=(1<>1,I=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,S=i?0:s-1,C=i?1:-1,M=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,a=h):(a=Math.floor(Math.log(r)/Math.LN2),r*(d=Math.pow(2,-a))<1&&(a--,d*=2),a+T>=1?r+=I/d:r+=I*Math.pow(2,1-T),r*d>=2&&(a++,d/=2),a+T>=h?(l=0,a=h):a+T>=1?(l=(r*d-1)*Math.pow(2,o),a=a+T):(l=r*Math.pow(2,T-1)*Math.pow(2,o),a=0));o>=8;t[n+S]=l&255,S+=C,l/=256,o-=8);for(a=a<0;t[n+S]=a&255,S+=C,a/=256,g-=8);t[n+S-C]|=M*128}}),un=Ra(),We=Ca(),pi=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ze.Buffer=A;ze.SlowBuffer=Ma;ze.INSPECT_MAX_BYTES=50;var ur=2147483647;ze.kMaxLength=ur;A.TYPED_ARRAY_SUPPORT=Sa();!A.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function Sa(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(A.prototype,"parent",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.buffer}});Object.defineProperty(A.prototype,"offset",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.byteOffset}});function xe(e){if(e>ur)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,A.prototype),t}function A(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return mn(e)}return hi(e,t,r)}A.poolSize=8192;function hi(e,t,r){if(typeof e=="string")return Oa(e,t);if(ArrayBuffer.isView(e))return ka(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(de(e,ArrayBuffer)||e&&de(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(de(e,SharedArrayBuffer)||e&&de(e.buffer,SharedArrayBuffer)))return wi(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return A.from(n,t,r);let i=Da(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return A.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}A.from=function(e,t,r){return hi(e,t,r)};Object.setPrototypeOf(A.prototype,Uint8Array.prototype);Object.setPrototypeOf(A,Uint8Array);function yi(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function Ia(e,t,r){return yi(e),e<=0?xe(e):t!==void 0?typeof r=="string"?xe(e).fill(t,r):xe(e).fill(t):xe(e)}A.alloc=function(e,t,r){return Ia(e,t,r)};function mn(e){return yi(e),xe(e<0?0:fn(e)|0)}A.allocUnsafe=function(e){return mn(e)};A.allocUnsafeSlow=function(e){return mn(e)};function Oa(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!A.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=Ei(e,t)|0,n=xe(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function cn(e){let t=e.length<0?0:fn(e.length)|0,r=xe(t);for(let n=0;n=ur)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+ur.toString(16)+" bytes");return e|0}function Ma(e){return+e!=e&&(e=0),A.alloc(+e)}A.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==A.prototype};A.compare=function(e,t){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),de(t,Uint8Array)&&(t=A.from(t,t.offset,t.byteLength)),!A.isBuffer(e)||!A.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let i=0,o=Math.min(r,n);in.length?(A.isBuffer(o)||(o=A.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(A.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function Ei(e,t){if(A.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||de(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return pn(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Si(e).length;default:if(i)return n?-1:pn(e).length;t=(""+t).toLowerCase(),i=!0}}A.byteLength=Ei;function _a(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return Ga(this,t,r);case"utf8":case"utf-8":return xi(this,t,r);case"ascii":return $a(this,t,r);case"latin1":case"binary":return ja(this,t,r);case"base64":return qa(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ja(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}A.prototype._isBuffer=!0;function Le(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}A.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(e+=" ... "),""};pi&&(A.prototype[pi]=A.prototype.inspect);A.prototype.compare=function(e,t,r,n,i){if(de(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),!A.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;let o=i-n,s=r-t,a=Math.min(o,s),l=this.slice(n,i),d=e.slice(t,r);for(let g=0;g2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,gn(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=A.from(t,n)),A.isBuffer(t))return t.length===0?-1:mi(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):mi(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function mi(e,t,r,n,i){let o=1,s=e.length,a=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;o=2,s/=2,a/=2,r/=2}function l(g,h){return o===1?g[h]:g.readUInt16BE(h*o)}let d;if(i){let g=-1;for(d=r;ds&&(r=s-a),d=r;d>=0;d--){let g=!0;for(let h=0;hi&&(n=i)):n=i;let o=t.length;n>o/2&&(n=o/2);let s;for(s=0;s>>0,isFinite(r)?(r=r>>>0,n===void 0&&(n="utf8")):(n=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return Na(this,e,t,r);case"utf8":case"utf-8":return Fa(this,e,t,r);case"ascii":case"latin1":case"binary":return La(this,e,t,r);case"base64":return Ua(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ba(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function qa(e,t,r){return t===0&&r===e.length?un.fromByteArray(e):un.fromByteArray(e.slice(t,r))}function xi(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:o>223?3:o>191?2:1;if(i+a<=r){let l,d,g,h;switch(a){case 1:o<128&&(s=o);break;case 2:l=e[i+1],(l&192)===128&&(h=(o&31)<<6|l&63,h>127&&(s=h));break;case 3:l=e[i+1],d=e[i+2],(l&192)===128&&(d&192)===128&&(h=(o&15)<<12|(l&63)<<6|d&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:l=e[i+1],d=e[i+2],g=e[i+3],(l&192)===128&&(d&192)===128&&(g&192)===128&&(h=(o&15)<<18|(l&63)<<12|(d&63)<<6|g&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return Va(n)}var fi=4096;function Va(e){let t=e.length;if(t<=fi)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let o=t;or&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),tr)throw new RangeError("Trying to access beyond buffer length")}A.prototype.readUintLE=A.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n};A.prototype.readUint8=A.prototype.readUInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]};A.prototype.readUint16LE=A.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]|this[e+1]<<8};A.prototype.readUint16BE=A.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||W(e,2,this.length),this[e]<<8|this[e+1]};A.prototype.readUint32LE=A.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};A.prototype.readUint32BE=A.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};A.prototype.readBigUInt64LE=Se(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(n)+(BigInt(i)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(n)<>>0,t=t>>>0,r||W(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};A.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||W(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};A.prototype.readInt8=function(e,t){return e=e>>>0,t||W(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};A.prototype.readInt16LE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};A.prototype.readInt16BE=function(e,t){e=e>>>0,t||W(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};A.prototype.readInt32LE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};A.prototype.readInt32BE=function(e,t){return e=e>>>0,t||W(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};A.prototype.readBigInt64LE=Se(function(e){e=e>>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(n)<>>0,He(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Tt(e,this.length-8);let n=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(n)<>>0,t||W(e,4,this.length),We.read(this,e,!0,23,4)};A.prototype.readFloatBE=function(e,t){return e=e>>>0,t||W(e,4,this.length),We.read(this,e,!1,23,4)};A.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!0,52,8)};A.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||W(e,8,this.length),We.read(this,e,!1,52,8)};function re(e,t,r,n,i,o){if(!A.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}A.prototype.writeUintLE=A.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=1,o=0;for(this[t]=e&255;++o>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;re(this,e,t,r,s,0)}let i=r-1,o=1;for(this[t+i]=e&255;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r};A.prototype.writeUint8=A.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,255,0),this[t]=e&255,t+1};A.prototype.writeUint16LE=A.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeUint16BE=A.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeUint32LE=A.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};A.prototype.writeUint32BE=A.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function Pi(e,t,r,n,i){Ci(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,r}function vi(e,t,r,n,i){Ci(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o=o>>8,e[r+6]=o,o=o>>8,e[r+5]=o,o=o>>8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s=s>>8,e[r+2]=s,s=s>>8,e[r+1]=s,s=s>>8,e[r]=s,r+8}A.prototype.writeBigUInt64LE=Se(function(e,t=0){return Pi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeBigUInt64BE=Se(function(e,t=0){return vi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=0,o=1,s=0;for(this[t]=e&255;++i>0)-s&255;return t+r};A.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);re(this,e,t,r,a-1,-a)}let i=r-1,o=1,s=0;for(this[t+i]=e&255;--i>=0&&(o*=256);)e<0&&s===0&&this[t+i+1]!==0&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r};A.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};A.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};A.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||re(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};A.prototype.writeBigInt64LE=Se(function(e,t=0){return Pi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});A.prototype.writeBigInt64BE=Se(function(e,t=0){return vi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Ti(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function Ai(e,t,r,n,i){return t=+t,r=r>>>0,i||Ti(e,t,r,4,34028234663852886e22,-34028234663852886e22),We.write(e,t,r,n,23,4),r+4}A.prototype.writeFloatLE=function(e,t,r){return Ai(this,e,t,!0,r)};A.prototype.writeFloatBE=function(e,t,r){return Ai(this,e,t,!1,r)};function Ri(e,t,r,n,i){return t=+t,r=r>>>0,i||Ti(e,t,r,8,17976931348623157e292,-17976931348623157e292),We.write(e,t,r,n,52,8),r+8}A.prototype.writeDoubleLE=function(e,t,r){return Ri(this,e,t,!0,r)};A.prototype.writeDoubleBE=function(e,t,r){return Ri(this,e,t,!1,r)};A.prototype.copy=function(e,t,r,n){if(!A.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&n!==0&&(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e=="number")for(i=t;i2**32?i=di(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=di(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function di(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function Qa(e,t,r){He(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&Tt(t,e.length-(r+1))}function Ci(e,t,r,n,i,o){if(e>r||e3?t===0||t===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${t}${s} and <= ${r}${s}`,new Ke.ERR_OUT_OF_RANGE("value",a,e)}Qa(n,i,o)}function He(e,t){if(typeof e!="number")throw new Ke.ERR_INVALID_ARG_TYPE(t,"number",e)}function Tt(e,t,r){throw Math.floor(e)!==e?(He(e,r),new Ke.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new Ke.ERR_BUFFER_OUT_OF_BOUNDS:new Ke.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var Ka=/[^+/0-9A-Za-z-_]/g;function Wa(e){if(e=e.split("=")[0],e=e.trim().replace(Ka,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function pn(e,t){t=t||1/0;let r,n=e.length,i=null,o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function Ha(e){let t=[];for(let r=0;r>8,i=r%256,o.push(i),o.push(n);return o}function Si(e){return un.toByteArray(Wa(e))}function cr(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function de(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function gn(e){return e!==e}var Ya=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function Se(e){return typeof BigInt>"u"?Za:e}function Za(){throw new Error("BigInt not supported")}});var w,f=fe(()=>{"use strict";w=Qe(Ii())});function il(){return!1}function bn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function ol(){return bn()}function sl(){return[]}function al(e){e(null,[])}function ll(){return""}function ul(){return""}function cl(){}function pl(){}function ml(){}function fl(){}function dl(){}function gl(){}function hl(){}function yl(){}function wl(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function El(e,t){t(null,bn())}var bl,xl,Qi,Ki=fe(()=>{"use strict";f();u();c();p();m();bl={},xl={existsSync:il,lstatSync:bn,stat:El,statSync:ol,readdirSync:sl,readdir:al,readlinkSync:ll,realpathSync:ul,chmodSync:cl,renameSync:pl,mkdirSync:ml,rmdirSync:fl,rmSync:dl,unlinkSync:gl,watchFile:hl,unwatchFile:yl,watch:wl,promises:bl},Qi=xl});var Wi=Je((df,Pl)=>{Pl.exports={name:"@prisma/internals",version:"6.19.1",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Tl(...e){return e.join("/")}function Al(...e){return e.join("/")}function Rl(e){let t=Hi(e),r=zi(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function Hi(e){let t=e.split("/");return t[t.length-1]}function zi(e){return e.split("/").slice(0,-1).join("/")}function Sl(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var Yi,Cl,Il,Ol,dr,Zi=fe(()=>{"use strict";f();u();c();p();m();Yi="/",Cl=":";Il={sep:Yi},Ol={basename:Hi,delimiter:Cl,dirname:zi,join:Al,normalize:Sl,parse:Rl,posix:Il,resolve:Tl,sep:Yi},dr=Ol});var Pn=Je((Mf,Ml)=>{Ml.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var Xi=Je(gr=>{"use strict";f();u();c();p();m();Object.defineProperty(gr,"__esModule",{value:!0});gr.enginesVersion=void 0;gr.enginesVersion=Pn().prisma.enginesVersion});var ro=Je((Qf,to)=>{"use strict";f();u();c();p();m();to.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Nn=Je((Jy,vo)=>{"use strict";f();u();c();p();m();vo.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";f();u();c();p();m()});var Io=fe(()=>{"use strict";f();u();c();p();m()});var Jr,Xo=fe(()=>{"use strict";f();u();c();p();m();Jr=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});var kp={};vt(kp,{DMMF:()=>Dt,Debug:()=>z,Decimal:()=>Ae,Extensions:()=>hn,MetricsClient:()=>pt,PrismaClientInitializationError:()=>Q,PrismaClientKnownRequestError:()=>ne,PrismaClientRustPanicError:()=>Pe,PrismaClientUnknownRequestError:()=>ie,PrismaClientValidationError:()=>X,Public:()=>yn,Sql:()=>se,createParam:()=>Jo,defineDmmfProperty:()=>Yo,deserializeJsonResponse:()=>dt,deserializeRawResult:()=>nn,dmmfToRuntimeDataModel:()=>ao,empty:()=>ts,getPrismaClient:()=>ya,getRuntime:()=>Zr,join:()=>es,makeStrictEnum:()=>wa,makeTypedQueryFactory:()=>Zo,objectEnumValues:()=>Nr,raw:()=>Gn,serializeJsonQuery:()=>$r,skip:()=>Vr,sqltag:()=>Jn,warnEnvConflicts:()=>void 0,warnOnce:()=>St});module.exports=Aa(kp);f();u();c();p();m();var hn={};vt(hn,{defineExtension:()=>Oi,getExtensionContext:()=>ki});f();u();c();p();m();f();u();c();p();m();function Oi(e){return typeof e=="function"?e:t=>t.$extends(e)}f();u();c();p();m();function ki(e){return e}var yn={};vt(yn,{validator:()=>Di});f();u();c();p();m();f();u();c();p();m();function Di(...e){return t=>t}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var wn,Mi,_i,Ni,Fi=!0;typeof y<"u"&&({FORCE_COLOR:wn,NODE_DISABLE_COLORS:Mi,NO_COLOR:_i,TERM:Ni}=y.env||{},Fi=y.stdout&&y.stdout.isTTY);var Xa={enabled:!Mi&&_i==null&&Ni!=="dumb"&&(wn!=null&&wn!=="0"||Fi)};function j(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!Xa.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var Pm=j(0,0),pr=j(1,22),mr=j(2,22),vm=j(3,23),Li=j(4,24),Tm=j(7,27),Am=j(8,28),Rm=j(9,29),Cm=j(30,39),Ye=j(31,39),Ui=j(32,39),Bi=j(33,39),qi=j(34,39),Sm=j(35,39),Vi=j(36,39),Im=j(37,39),$i=j(90,39),Om=j(90,39),km=j(40,49),Dm=j(41,49),Mm=j(42,49),_m=j(43,49),Nm=j(44,49),Fm=j(45,49),Lm=j(46,49),Um=j(47,49);f();u();c();p();m();var el=100,ji=["green","yellow","blue","magenta","cyan","red"],fr=[],Gi=Date.now(),tl=0,En=typeof y<"u"?y.env:{};globalThis.DEBUG??=En.DEBUG??"";globalThis.DEBUG_COLORS??=En.DEBUG_COLORS?En.DEBUG_COLORS==="true":!0;var At={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function rl(e){let t={color:ji[tl++%ji.length],enabled:At.enabled(e),namespace:e,log:At.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&fr.push([o,...n]),fr.length>el&&fr.shift(),At.enabled(o)||i){let l=n.map(g=>typeof g=="string"?g:nl(g)),d=`+${Date.now()-Gi}ms`;Gi=Date.now(),a(o,...l,d)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var z=new Proxy(rl,{get:(e,t)=>At[t],set:(e,t,r)=>At[t]=r});function nl(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function Ji(){fr.length=0}f();u();c();p();m();f();u();c();p();m();var vl=Wi(),xn=vl.version;f();u();c();p();m();function Ze(e){let t=kl();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Dl())}function kl(){let e=y.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Dl(){return"library"}f();u();c();p();m();var eo="prisma+postgres",hr=`${eo}:`;function yr(e){return e?.toString().startsWith(`${hr}//`)??!1}function vn(e){if(!yr(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")||t.includes("[::1]")}var Ct={};vt(Ct,{error:()=>Fl,info:()=>Nl,log:()=>_l,query:()=>Ll,should:()=>no,tags:()=>Rt,warn:()=>Tn});f();u();c();p();m();var Rt={error:Ye("prisma:error"),warn:Bi("prisma:warn"),info:Vi("prisma:info"),query:qi("prisma:query")},no={warn:()=>!y.env.PRISMA_DISABLE_WARNINGS};function _l(...e){console.log(...e)}function Tn(e,...t){no.warn()&&console.warn(`${Rt.warn} ${e}`,...t)}function Nl(e,...t){console.info(`${Rt.info} ${e}`,...t)}function Fl(e,...t){console.error(`${Rt.error} ${e}`,...t)}function Ll(e,...t){console.log(`${Rt.query} ${e}`,...t)}f();u();c();p();m();function Ue(e,t){throw new Error(t)}f();u();c();p();m();f();u();c();p();m();function An({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Ul=An();function Rn(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Ul,"")}f();u();c();p();m();function Cn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}f();u();c();p();m();function wr(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}f();u();c();p();m();function Sn(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{io.has(e)||(io.add(e),Tn(t,...r))};var Q=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};N(Q,"PrismaClientInitializationError");f();u();c();p();m();var ne=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};N(ne,"PrismaClientKnownRequestError");f();u();c();p();m();var Pe=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};N(Pe,"PrismaClientRustPanicError");f();u();c();p();m();var ie=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};N(ie,"PrismaClientUnknownRequestError");f();u();c();p();m();var X=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};N(X,"PrismaClientValidationError");f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var ge=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};f();u();c();p();m();function Ie(e){return e.substring(0,1).toLowerCase()+e.substring(1)}f();u();c();p();m();function so(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}f();u();c();p();m();function It(e){let t;return{get(){return t||(t={value:e()}),t.value}}}f();u();c();p();m();function ao(e){return{models:In(e.models),enums:In(e.enums),types:In(e.types)}}function In(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}f();u();c();p();m();function Xe(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function Er(e){return e.toString()!=="Invalid Date"}f();u();c();p();m();f();u();c();p();m();var et=9e15,Me=1e9,On="0123456789abcdef",Pr="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",vr="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",kn={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-et,maxE:et,crypto:!1},po,ve,_=!0,Ar="[DecimalError] ",De=Ar+"Invalid argument: ",mo=Ar+"Precision limit exceeded",fo=Ar+"crypto unavailable",go="[object Decimal]",ee=Math.floor,K=Math.pow,Bl=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,ql=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Vl=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ho=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,pe=1e7,D=7,$l=9007199254740991,jl=Pr.length-1,Dn=vr.length-1,R={toStringTag:go};R.absoluteValue=R.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),k(e)};R.ceil=function(){return k(new this.constructor(this),this.e+1,2)};R.clampedTo=R.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(De+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};R.comparedTo=R.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,d=e.s;if(!s||!a)return!l||!d?NaN:l!==d?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-d:0;if(l!==d)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,t=0,r=na[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};R.cosine=R.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Gl(n,xo(n,r)),n.precision=e,n.rounding=t,k(ve==2||ve==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};R.cubeRoot=R.cbrt=function(){var e,t,r,n,i,o,s,a,l,d,g=this,h=g.constructor;if(!g.isFinite()||g.isZero())return new h(g);for(_=!1,o=g.s*K(g.s*g,1/3),!o||Math.abs(o)==1/0?(r=Y(g.d),e=g.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=K(r,1/3),e=ee((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new h(r),n.s=g.s):n=new h(o.toString()),s=(e=h.precision)+3;;)if(a=n,l=a.times(a).times(a),d=l.plus(g),n=V(d.plus(g).times(a),d.plus(l),s+2,1),Y(a.d).slice(0,s)===(r=Y(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(k(a,e+1,0),a.times(a).times(a).eq(g))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(k(n,e+1,1),t=!n.times(n).times(n).eq(g));break}return _=!0,k(n,e,h.rounding,t)};R.decimalPlaces=R.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-ee(this.e/D))*D,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};R.dividedBy=R.div=function(e){return V(this,new this.constructor(e))};R.dividedToIntegerBy=R.divToInt=function(e){var t=this,r=t.constructor;return k(V(t,new r(e),0,1,1),r.precision,r.rounding)};R.equals=R.eq=function(e){return this.cmp(e)===0};R.floor=function(){return k(new this.constructor(this),this.e+1,3)};R.greaterThan=R.gt=function(e){return this.cmp(e)>0};R.greaterThanOrEqualTo=R.gte=function(e){var t=this.cmp(e);return t==1||t===0};R.hyperbolicCosine=R.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Cr(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=tt(s,1,o.times(t),new s(1),!0);for(var l,d=e,g=new s(8);d--;)l=o.times(o),o=a.minus(l.times(g.minus(l.times(g))));return k(o,s.precision=r,s.rounding=n,!0)};R.hyperbolicSine=R.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=tt(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Cr(5,e)),i=tt(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),d=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(d))))}return o.precision=t,o.rounding=r,k(i,t,r,!0)};R.hyperbolicTangent=R.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,V(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};R.inverseCosine=R.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?he(t,n,i):new t(0):new t(NaN):e.isZero()?he(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};R.inverseHyperbolicCosine=R.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,_=!1,r=r.times(r).minus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};R.inverseHyperbolicSine=R.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,_=!1,r=r.times(r).plus(1).sqrt().plus(r),_=!0,n.precision=e,n.rounding=t,r.ln())};R.inverseHyperbolicTangent=R.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?k(new o(i),e,t,!0):(o.precision=r=n-i.e,i=V(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};R.inverseSine=R.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=he(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};R.inverseTangent=R.atan=function(){var e,t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding;if(d.isFinite()){if(d.isZero())return new g(d);if(d.abs().eq(1)&&h+4<=Dn)return s=he(g,h+4,T).times(.25),s.s=d.s,s}else{if(!d.s)return new g(NaN);if(h+4<=Dn)return s=he(g,h+4,T).times(.5),s.s=d.s,s}for(g.precision=a=h+10,g.rounding=1,r=Math.min(28,a/D+2|0),e=r;e;--e)d=d.div(d.times(d).plus(1).sqrt().plus(1));for(_=!1,t=Math.ceil(a/D),n=1,l=d.times(d),s=new g(d),i=d;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<this.d.length-2};R.isNaN=function(){return!this.s};R.isNegative=R.isNeg=function(){return this.s<0};R.isPositive=R.isPos=function(){return this.s>0};R.isZero=function(){return!!this.d&&this.d[0]===0};R.lessThan=R.lt=function(e){return this.cmp(e)<0};R.lessThanOrEqualTo=R.lte=function(e){return this.cmp(e)<1};R.logarithm=R.log=function(e){var t,r,n,i,o,s,a,l,d=this,g=d.constructor,h=g.precision,T=g.rounding,I=5;if(e==null)e=new g(10),t=!0;else{if(e=new g(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new g(NaN);t=e.eq(10)}if(r=d.d,d.s<0||!r||!r[0]||d.eq(1))return new g(r&&!r[0]?-1/0:d.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(_=!1,a=h+I,s=ke(d,a),n=t?Tr(g,a+10):ke(e,a),l=V(s,n,a,1),Ot(l.d,i=h,T))do if(a+=10,s=ke(d,a),n=t?Tr(g,a+10):ke(e,a),l=V(s,n,a,1),!o){+Y(l.d).slice(i+1,i+15)+1==1e14&&(l=k(l,h+1,0));break}while(Ot(l.d,i+=10,T));return _=!0,k(l,h,T)};R.minus=R.sub=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.constructor;if(e=new S(e),!I.d||!e.d)return!I.s||!e.s?e=new S(NaN):I.d?e.s=-e.s:e=new S(e.d||I.s!==e.s?I:NaN),e;if(I.s!=e.s)return e.s=-e.s,I.plus(e);if(d=I.d,T=e.d,a=S.precision,l=S.rounding,!d[0]||!T[0]){if(T[0])e.s=-e.s;else if(d[0])e=new S(I);else return new S(l===3?-0:0);return _?k(e,a,l):e}if(r=ee(e.e/D),g=ee(I.e/D),d=d.slice(),o=g-r,o){for(h=o<0,h?(t=d,o=-o,s=T.length):(t=T,r=g,s=d.length),n=Math.max(Math.ceil(a/D),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=d.length,s=T.length,h=n0;--n)d[s++]=0;for(n=T.length;n>o;){if(d[--n]s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=d.length,i=g.length,s-i<0&&(i=s,r=g,g=d,d=r),t=0;i;)t=(d[--i]=d[i]+g[i]+t)/pe|0,d[i]%=pe;for(t&&(d.unshift(t),++n),s=d.length;d[--s]==0;)d.pop();return e.d=d,e.e=Rr(d,n),_?k(e,a,l):e};R.precision=R.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(De+e);return r.d?(t=yo(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};R.round=function(){var e=this,t=e.constructor;return k(new t(e),e.e+1,t.rounding)};R.sine=R.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+D,n.rounding=1,r=Ql(n,xo(n,r)),n.precision=e,n.rounding=t,k(ve>2?r.neg():r,e,t,!0)):new n(NaN)};R.squareRoot=R.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,l=s.e,d=s.s,g=s.constructor;if(d!==1||!a||!a[0])return new g(!d||d<0&&(!a||a[0])?NaN:a?s:1/0);for(_=!1,d=Math.sqrt(+s),d==0||d==1/0?(t=Y(a),(t.length+l)%2==0&&(t+="0"),d=Math.sqrt(t),l=ee((l+1)/2)-(l<0||l%2),d==1/0?t="5e"+l:(t=d.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new g(t)):n=new g(d.toString()),r=(l=g.precision)+3;;)if(o=n,n=o.plus(V(s,o,r+2,1)).times(.5),Y(o.d).slice(0,r)===(t=Y(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(k(o,l+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(k(n,l+1,1),e=!n.times(n).eq(s));break}return _=!0,k(n,l,g.rounding,e)};R.tangent=R.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=V(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,k(ve==2||ve==4?r.neg():r,e,t,!0)):new n(NaN)};R.times=R.mul=function(e){var t,r,n,i,o,s,a,l,d,g=this,h=g.constructor,T=g.d,I=(e=new h(e)).d;if(e.s*=g.s,!T||!T[0]||!I||!I[0])return new h(!e.s||T&&!T[0]&&!I||I&&!I[0]&&!T?NaN:!T||!I?e.s/0:e.s*0);for(r=ee(g.e/D)+ee(e.e/D),l=T.length,d=I.length,l=0;){for(t=0,i=l+n;i>n;)a=o[i]+I[n]*T[i-n-1]+t,o[i--]=a%pe|0,t=a/pe|0;o[i]=(o[i]+t)%pe|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=Rr(o,r),_?k(e,h.precision,h.rounding):e};R.toBinary=function(e,t){return _n(this,2,e,t)};R.toDecimalPlaces=R.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(oe(e,0,Me),t===void 0?t=n.rounding:oe(t,0,8),k(r,e+r.e+1,t))};R.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,!0):(oe(e,0,Me),t===void 0?t=i.rounding:oe(t,0,8),n=k(new i(n),e+1,t),r=ye(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=ye(i):(oe(e,0,Me),t===void 0?t=o.rounding:oe(t,0,8),n=k(new o(i),e+i.e+1,t),r=ye(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};R.toFraction=function(e){var t,r,n,i,o,s,a,l,d,g,h,T,I=this,S=I.d,C=I.constructor;if(!S)return new C(I);if(d=r=new C(1),n=l=new C(0),t=new C(n),o=t.e=yo(S)-I.e-1,s=o%D,t.d[0]=K(10,s<0?D+s:s),e==null)e=o>0?t:d;else{if(a=new C(e),!a.isInt()||a.lt(d))throw Error(De+a);e=a.gt(t)?o>0?t:d:a}for(_=!1,a=new C(Y(S)),g=C.precision,C.precision=o=S.length*D*2;h=V(a,t,0,1,1),i=r.plus(h.times(n)),i.cmp(e)!=1;)r=n,n=i,i=d,d=l.plus(h.times(i)),l=i,i=t,t=a.minus(h.times(i)),a=i;return i=V(e.minus(r),n,0,1,1),l=l.plus(i.times(d)),r=r.plus(i.times(n)),l.s=d.s=I.s,T=V(d,n,o,1).minus(I).abs().cmp(V(l,r,o,1).minus(I).abs())<1?[d,n]:[l,r],C.precision=g,_=!0,T};R.toHexadecimal=R.toHex=function(e,t){return _n(this,16,e,t)};R.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:oe(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(_=!1,r=V(r,e,0,t,1).times(e),_=!0,k(r)):(e.s=r.s,r=e),r};R.toNumber=function(){return+this};R.toOctal=function(e,t){return _n(this,8,e,t)};R.toPower=R.pow=function(e){var t,r,n,i,o,s,a=this,l=a.constructor,d=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(K(+a,d));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return k(a,n,o);if(t=ee(e.e/D),t>=e.d.length-1&&(r=d<0?-d:d)<=$l)return i=wo(l,a,r,n),e.s<0?new l(1).div(i):k(i,n,o);if(s=a.s,s<0){if(tl.maxE+1||t0?s/0:0):(_=!1,l.rounding=a.s=1,r=Math.min(12,(t+"").length),i=Mn(e.times(ke(a,n+r)),n),i.d&&(i=k(i,n+5,1),Ot(i.d,n,o)&&(t=n+10,i=k(Mn(e.times(ke(a,t+r)),t),t+5,1),+Y(i.d).slice(n+1,n+15)+1==1e14&&(i=k(i,n+1,0)))),i.s=s,_=!0,l.rounding=o,k(i,n,o))};R.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=ye(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(oe(e,1,Me),t===void 0?t=i.rounding:oe(t,0,8),n=k(new i(n),e,t),r=ye(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toSignificantDigits=R.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(oe(e,1,Me),t===void 0?t=n.rounding:oe(t,0,8)),k(new n(r),e,t)};R.toString=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};R.truncated=R.trunc=function(){return k(new this.constructor(this),this.e+1,1)};R.valueOf=R.toJSON=function(){var e=this,t=e.constructor,r=ye(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function Y(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;tr)throw Error(De+e)}function Ot(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=D,i=0):(i=Math.ceil((t+1)/D),t%=D),o=K(10,D-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==K(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==K(10,t-3)-1,s}function br(e,t,r){for(var n,i=[0],o,s=0,a=e.length;sr-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function Gl(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Cr(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=tt(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var V=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var d,g,h,T,I,S,C,M,F,B,O,L,le,J,sn,or,Pt,an,ce,sr,ar=n.constructor,ln=n.s==i.s?1:-1,Z=n.d,$=i.d;if(!Z||!Z[0]||!$||!$[0])return new ar(!n.s||!i.s||(Z?$&&Z[0]==$[0]:!$)?NaN:Z&&Z[0]==0||!$?ln*0:ln/0);for(l?(I=1,g=n.e-i.e):(l=pe,I=D,g=ee(n.e/I)-ee(i.e/I)),ce=$.length,Pt=Z.length,F=new ar(ln),B=F.d=[],h=0;$[h]==(Z[h]||0);h++);if($[h]>(Z[h]||0)&&g--,o==null?(J=o=ar.precision,s=ar.rounding):a?J=o+(n.e-i.e)+1:J=o,J<0)B.push(1),S=!0;else{if(J=J/I+2|0,h=0,ce==1){for(T=0,$=$[0],J++;(h1&&($=e($,T,l),Z=e(Z,T,l),ce=$.length,Pt=Z.length),or=ce,O=Z.slice(0,ce),L=O.length;L=l/2&&++an;do T=0,d=t($,O,ce,L),d<0?(le=O[0],ce!=L&&(le=le*l+(O[1]||0)),T=le/an|0,T>1?(T>=l&&(T=l-1),C=e($,T,l),M=C.length,L=O.length,d=t(C,O,M,L),d==1&&(T--,r(C,ce=10;T/=10)h++;F.e=h+g*I-1,k(F,a?o+F.e+1:o,s,S)}return F}}();function k(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor;e:if(t!=null){if(h=e.d,!h)return e;for(i=1,a=h[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=D,s=t,g=h[T=0],l=g/K(10,i-s-1)%10|0;else if(T=Math.ceil((o+1)/D),a=h.length,T>=a)if(n){for(;a++<=T;)h.push(0);g=l=0,i=1,o%=D,s=o-D+1}else break e;else{for(g=a=h[T],i=1;a>=10;a/=10)i++;o%=D,s=o-D+i,l=s<0?0:g/K(10,i-s-1)%10|0}if(n=n||t<0||h[T+1]!==void 0||(s<0?g:g%K(10,i-s-1)),d=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(o>0?s>0?g/K(10,i-s):0:h[T-1])%10&1||r==(e.s<0?8:7)),t<1||!h[0])return h.length=0,d?(t-=e.e+1,h[0]=K(10,(D-t%D)%D),e.e=-t||0):h[0]=e.e=0,e;if(o==0?(h.length=T,a=1,T--):(h.length=T+1,a=K(10,D-o),h[T]=s>0?(g/K(10,i-s)%K(10,s)|0)*a:0),d)for(;;)if(T==0){for(o=1,s=h[0];s>=10;s/=10)o++;for(s=h[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,h[0]==pe&&(h[0]=1));break}else{if(h[T]+=a,h[T]!=pe)break;h[T--]=0,a=1}for(o=h.length;h[--o]===0;)h.pop()}return _&&(e.e>I.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Oe(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Oe(-i-1)+o,r&&(n=r-s)>0&&(o+=Oe(n))):i>=s?(o+=Oe(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Oe(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Oe(n))),o}function Rr(e,t){var r=e[0];for(t*=D;r>=10;r/=10)t++;return t}function Tr(e,t,r){if(t>jl)throw _=!0,r&&(e.precision=r),Error(mo);return k(new e(Pr),t,1,!0)}function he(e,t,r){if(t>Dn)throw Error(mo);return k(new e(vr),t,r,!0)}function yo(e){var t=e.length-1,r=t*D+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Oe(e){for(var t="";e--;)t+="0";return t}function wo(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/D+4);for(_=!1;;){if(r%2&&(o=o.times(t),uo(o.d,s)&&(i=!0)),r=ee(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),uo(t.d,s)}return _=!0,o}function lo(e){return e.d[e.d.length-1]&1}function Eo(e,t,r){for(var n,i,o=new e(t[0]),s=0;++s17)return new T(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(_=!1,l=S):l=t,a=new T(.03125);e.e>-2;)e=e.times(a),h+=5;for(n=Math.log(K(2,h))/Math.LN10*2+5|0,l+=n,r=o=s=new T(1),T.precision=l;;){if(o=k(o.times(e),l,1),r=r.times(++g),a=s.plus(V(o,r,l,1)),Y(a.d).slice(0,l)===Y(s.d).slice(0,l)){for(i=h;i--;)s=k(s.times(s),l,1);if(t==null)if(d<3&&Ot(s.d,l-n,I,d))T.precision=l+=10,r=o=a=new T(1),g=0,d++;else return k(s,T.precision=S,I,_=!0);else return T.precision=S,s}s=a}}function ke(e,t){var r,n,i,o,s,a,l,d,g,h,T,I=1,S=10,C=e,M=C.d,F=C.constructor,B=F.rounding,O=F.precision;if(C.s<0||!M||!M[0]||!C.e&&M[0]==1&&M.length==1)return new F(M&&!M[0]?-1/0:C.s!=1?NaN:M?0:C);if(t==null?(_=!1,g=O):g=t,F.precision=g+=S,r=Y(M),n=r.charAt(0),Math.abs(o=C.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(e),r=Y(C.d),n=r.charAt(0),I++;o=C.e,n>1?(C=new F("0."+r),o++):C=new F(n+"."+r.slice(1))}else return d=Tr(F,g+2,O).times(o+""),C=ke(new F(n+"."+r.slice(1)),g-S).plus(d),F.precision=O,t==null?k(C,O,B,_=!0):C;for(h=C,l=s=C=V(C.minus(1),C.plus(1),g,1),T=k(C.times(C),g,1),i=3;;){if(s=k(s.times(T),g,1),d=l.plus(V(s,new F(i),g,1)),Y(d.d).slice(0,g)===Y(l.d).slice(0,g))if(l=l.times(2),o!==0&&(l=l.plus(Tr(F,g+2,O).times(o+""))),l=V(l,new F(I),g,1),t==null)if(Ot(l.d,g-S,B,a))F.precision=g+=S,d=s=C=V(h.minus(1),h.plus(1),g,1),T=k(C.times(C),g,1),i=a=1;else return k(l,F.precision=O,B,_=!0);else return F.precision=O,l;l=d,i+=2}}function bo(e){return String(e.s*e.s/0)}function xr(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%D,r<0&&(n+=D),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),ho.test(t))return xr(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(ql.test(t))r=16,t=t.toLowerCase();else if(Bl.test(t))r=2;else if(Vl.test(t))r=8;else throw Error(De+t);for(o=t.search(/p/i),o>0?(l=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=wo(n,new n(r),o,o*2)),d=br(t,r,pe),g=d.length-1,o=g;d[o]===0;--o)d.pop();return o<0?new n(e.s*0):(e.e=Rr(d,g),e.d=d,_=!1,s&&(e=V(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?K(2,l):Te.pow(2,l))),_=!0,e)}function Ql(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:tt(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Cr(5,r)),t=tt(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function tt(e,t,r,n,i){var o,s,a,l,d=1,g=e.precision,h=Math.ceil(g/D);for(_=!1,l=r.times(r),a=new e(n);;){if(s=V(a.times(l),new e(t++*t++),g,1),a=i?n.plus(s):n.minus(s),n=V(s.times(l),new e(t++*t++),g,1),s=a.plus(n),s.d[h]!==void 0){for(o=h;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,d++}return _=!0,s.d.length=h+1,s}function Cr(e,t){for(var r=e;--t;)r*=e;return r}function xo(e,t){var r,n=t.s<0,i=he(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return ve=n?4:1,t;if(r=t.divToInt(i),r.isZero())ve=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return ve=lo(r)?n?2:3:n?4:1,t;ve=lo(r)?n?1:4:n?3:2}return t.minus(i).abs()}function _n(e,t,r,n){var i,o,s,a,l,d,g,h,T,I=e.constructor,S=r!==void 0;if(S?(oe(r,1,Me),n===void 0?n=I.rounding:oe(n,0,8)):(r=I.precision,n=I.rounding),!e.isFinite())g=bo(e);else{for(g=ye(e),s=g.indexOf("."),S?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(g=g.replace(".",""),T=new I(1),T.e=g.length-s,T.d=br(ye(T),10,i),T.e=T.d.length),h=br(g,10,i),o=l=h.length;h[--l]==0;)h.pop();if(!h[0])g=S?"0p+0":"0";else{if(s<0?o--:(e=new I(e),e.d=h,e.e=o,e=V(e,T,r,n,0,i),h=e.d,o=e.e,d=po),s=h[r],a=i/2,d=d||h[r+1]!==void 0,d=n<4?(s!==void 0||d)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||d||n===6&&h[r-1]&1||n===(e.s<0?8:7)),h.length=r,d)for(;++h[--r]>i-1;)h[r]=0,r||(++o,h.unshift(1));for(l=h.length;!h[l-1];--l);for(s=0,g="";s1)if(t==16||t==8){for(s=t==16?4:3,--l;l%s;l++)g+="0";for(h=br(g,i,t),l=h.length;!h[l-1];--l);for(s=1,g="1.";sl)for(o-=l;o--;)g+="0";else ot)return e.length=t,!0}function Kl(e){return new this(e).abs()}function Wl(e){return new this(e).acos()}function Hl(e){return new this(e).acosh()}function zl(e,t){return new this(e).plus(t)}function Yl(e){return new this(e).asin()}function Zl(e){return new this(e).asinh()}function Xl(e){return new this(e).atan()}function eu(e){return new this(e).atanh()}function tu(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=he(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?he(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=he(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(V(e,t,o,1)),t=he(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(V(e,t,o,1)),r}function ru(e){return new this(e).cbrt()}function nu(e){return k(e=new this(e),e.e+1,2)}function iu(e,t,r){return new this(e).clamp(t,r)}function ou(e){if(!e||typeof e!="object")throw Error(Ar+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,Me,"rounding",0,8,"toExpNeg",-et,0,"toExpPos",0,et,"maxE",0,et,"minE",-et,0,"modulo",0,9];for(t=0;t=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(De+r+": "+n);if(r="crypto",i&&(this[r]=kn[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(fo);else this[r]=!1;else throw Error(De+r+": "+n);return this}function su(e){return new this(e).cos()}function au(e){return new this(e).cosh()}function Po(e){var t,r,n;function i(o){var s,a,l,d=this;if(!(d instanceof i))return new i(o);if(d.constructor=i,co(o)){d.s=o.s,_?!o.d||o.e>i.maxE?(d.e=NaN,d.d=null):o.e=10;a/=10)s++;_?s>i.maxE?(d.e=NaN,d.d=null):s=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(fo);else for(;o=10;i/=10)n++;nkt,datamodelEnumToSchemaEnum:()=>Du});f();u();c();p();m();f();u();c();p();m();function Du(e){return{name:e.name,values:e.values.map(t=>t.name)}}f();u();c();p();m();var kt=(O=>(O.findUnique="findUnique",O.findUniqueOrThrow="findUniqueOrThrow",O.findFirst="findFirst",O.findFirstOrThrow="findFirstOrThrow",O.findMany="findMany",O.create="create",O.createMany="createMany",O.createManyAndReturn="createManyAndReturn",O.update="update",O.updateMany="updateMany",O.updateManyAndReturn="updateManyAndReturn",O.upsert="upsert",O.delete="delete",O.deleteMany="deleteMany",O.groupBy="groupBy",O.count="count",O.aggregate="aggregate",O.findRaw="findRaw",O.aggregateRaw="aggregateRaw",O))(kt||{});var Mu=Qe(ro());var _u={red:Ye,gray:$i,dim:mr,bold:pr,underline:Li,highlightSource:e=>e.highlight()},Nu={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function Fu({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function Lu({functionName:e,location:t,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],l=t?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${l}`))):a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${l}`)),t&&a.push(s.underline(Uu(t))),i){a.push("");let d=[i.toString()];o&&(d.push(o),d.push(s.dim(")"))),a.push(d.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function Uu(e){let t=[e.fileName];return e.lineNumber&&t.push(String(e.lineNumber)),e.columnNumber&&t.push(String(e.columnNumber)),t.join(":")}function Sr(e){let t=e.showColors?_u:Nu,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(e,t):r=Fu(e),Lu(r,t)}f();u();c();p();m();var ko=Qe(Nn());f();u();c();p();m();function Ro(e,t,r){let n=Co(e),i=Bu(n),o=Vu(i);o?Ir(o,t,r):t.addErrorMessage(()=>"Unknown error")}function Co(e){return e.errors.flatMap(t=>t.kind==="Union"?Co(t):[t])}function Bu(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:qu(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function qu(e,t){return[...new Set(e.concat(t))]}function Vu(e){return Sn(e,(t,r)=>{let n=To(t),i=To(r);return n!==i?n-i:Ao(t)-Ao(r)})}function To(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function Ao(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}f();u();c();p();m();var ue=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};f();u();c();p();m();f();u();c();p();m();Io();f();u();c();p();m();var nt=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};So();f();u();c();p();m();f();u();c();p();m();var Or=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};f();u();c();p();m();var kr=e=>e,Dr={bold:kr,red:kr,green:kr,dim:kr,enabled:!1},Oo={bold:pr,red:Ye,green:Ui,dim:mr,enabled:!0},it={write(e){e.writeLine(",")}};f();u();c();p();m();var we=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};f();u();c();p();m();var _e=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var ot=class extends _e{items=[];addItem(t){return this.items.push(new Or(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new we("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(it,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var st=class e extends _e{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof ot&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new we("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(it,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};f();u();c();p();m();var H=class extends _e{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new we(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};f();u();c();p();m();var Mt=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(it,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Ir(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":$u(e,t);break;case"IncludeOnScalar":ju(e,t);break;case"EmptySelection":Gu(e,t,r);break;case"UnknownSelectionField":Wu(e,t);break;case"InvalidSelectionValue":Hu(e,t);break;case"UnknownArgument":zu(e,t);break;case"UnknownInputField":Yu(e,t);break;case"RequiredArgumentMissing":Zu(e,t);break;case"InvalidArgumentType":Xu(e,t);break;case"InvalidArgumentValue":ec(e,t);break;case"ValueTooLarge":tc(e,t);break;case"SomeFieldsMissing":rc(e,t);break;case"TooManyFieldsGiven":nc(e,t);break;case"Union":Ro(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function $u(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function ju(e,t){let[r,n]=at(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new ue(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${_t(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function Gu(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Ju(e,t,i);return}if(n.hasField("select")){Qu(e,t);return}}if(r?.[Ie(e.outputType.name)]){Ku(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Ju(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new ue(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function Qu(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),_o(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${_t(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function Ku(e,t){let r=new Mt;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new ue("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=at(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new st;l.addSuggestion(n),a.value=l}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function Wu(e,t){let r=No(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":_o(n,e.outputType);break;case"include":ic(n,e.outputType);break;case"omit":oc(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(_t(n)),i.join(" ")})}function Hu(e,t){let r=No(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function zu(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),sc(n,e.arguments)),t.addErrorMessage(i=>Do(i,r,e.arguments.map(o=>o.name)))}function Yu(e,t){let[r,n]=at(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Fo(o,e.inputType)}t.addErrorMessage(o=>Do(o,n,e.inputType.fields.map(s=>s.name)))}function Do(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=lc(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(_t(e)),n.join(" ")}function Zu(e,t){let r;t.addErrorMessage(l=>r?.value instanceof H&&r.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=at(e.argumentPath),s=new Mt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new ue(o,s).makeRequired())}else{let l=e.inputTypes.map(Mo).join(" | ");a.addSuggestion(new ue(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=at(e.dependentArgumentPath);t.addErrorMessage(d=>`Argument \`${d.green(o)}\` is required because argument \`${d.green(l)}\` was provided.`)}}}function Mo(e){return e.kind==="list"?`${Mo(e.elementType)}[]`:e.name}function Xu(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=Mr("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function ec(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=Mr("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function tc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof H&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function rc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Fo(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Mr("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(_t(i)),o.join(" ")})}function nc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Mr("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function _o(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new ue(r.name,"true"))}function ic(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new ue(r.name,"true"))}function oc(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new ue(r.name,"true"))}function sc(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new ue(r.name,r.typeNames.join(" | ")))}function No(e,t){let[r,n]=at(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Fo(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new ue(r.name,r.typeNames.join(" | ")))}function at(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function _t({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function Mr(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var ac=3;function lc(e,t){let r=1/0,n;for(let i of t){let o=(0,ko.default)(e,i);o>ac||o`}};function lt(e){return e instanceof Nt}f();u();c();p();m();var _r=Symbol(),Ln=new WeakMap,Re=class{constructor(t){t===_r?Ln.set(this,`Prisma.${this._getName()}`):Ln.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Ln.get(this)}},Ft=class extends Re{_getNamespace(){return"NullTypes"}},Lt=class extends Ft{#e};Un(Lt,"DbNull");var Ut=class extends Ft{#e};Un(Ut,"JsonNull");var Bt=class extends Ft{#e};Un(Bt,"AnyNull");var Nr={classes:{DbNull:Lt,JsonNull:Ut,AnyNull:Bt},instances:{DbNull:new Lt(_r),JsonNull:new Ut(_r),AnyNull:new Bt(_r)}};function Un(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}f();u();c();p();m();var Lo=": ",Fr=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Lo.length}write(t){let r=new we(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Lo).write(this.value)}};var Bn=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function ut(e){return new Bn(Uo(e))}function Uo(e){let t=new st;for(let[r,n]of Object.entries(e)){let i=new Fr(r,Bo(n));t.addField(i)}return t}function Bo(e){if(typeof e=="string")return new H(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new H(String(e));if(typeof e=="bigint")return new H(`${e}n`);if(e===null)return new H("null");if(e===void 0)return new H("undefined");if(rt(e))return new H(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return w.Buffer.isBuffer(e)?new H(`Buffer.alloc(${e.byteLength})`):new H(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=Er(e)?e.toISOString():"Invalid Date";return new H(`new Date("${t}")`)}return e instanceof Re?new H(`Prisma.${e._getName()}`):lt(e)?new H(`prisma.${Ie(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?uc(e):typeof e=="object"?Uo(e):new H(Object.prototype.toString.call(e))}function uc(e){let t=new ot;for(let r of e)t.addItem(Bo(r));return t}function Lr(e,t){let r=t==="pretty"?Oo:Dr,n=e.renderAllMessages(r),i=new nt(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Ur({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=ut(e);for(let h of t)Ir(h,a,s);let{message:l,args:d}=Lr(a,r),g=Sr({message:l,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:d});throw new X(g,{clientVersion:o})}f();u();c();p();m();f();u();c();p();m();function Ee(e){return e.replace(/^./,t=>t.toLowerCase())}f();u();c();p();m();function Vo(e,t,r){let n=Ee(r);return!t.result||!(t.result.$allModels||t.result[n])?e:cc({...e,...qo(t.name,e,t.result.$allModels),...qo(t.name,e,t.result[n])})}function cc(e){let t=new ge,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return wr(e,n=>({...n,needs:r(n.name,new Set)}))}function qo(e,t,r){return r?wr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:pc(t,o,i)})):{}}function pc(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function $o(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function jo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var Br=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new ge;modelExtensionsCache=new ge;queryCallbacksCache=new ge;clientExtensions=It(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=It(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Vo(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Ee(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},ct=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new Br(t))}isEmpty(){return this.head===void 0}append(t){return new e(new Br(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};f();u();c();p();m();var qr=class{constructor(t){this.name=t}};function Go(e){return e instanceof qr}function Jo(e){return new qr(e)}f();u();c();p();m();f();u();c();p();m();var Qo=Symbol(),qt=class{constructor(t){if(t!==Qo)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?Vr:t}},Vr=new qt(Qo);function be(e){return e instanceof qt}var mc={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},Ko="explicitly `undefined` values are not allowed";function $r({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=ct.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g}){let h=new qn({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:d,globalOmit:g});return{modelName:e,action:mc[t],query:Vt(r,h)}}function Vt({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Ho(r,n),selection:fc(e,t,i,n)}}function fc(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),yc(e,n)):dc(n,t,r)}function dc(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&gc(n,t,e),hc(n,r,e),n}function gc(e,t,r){for(let[n,i]of Object.entries(t)){if(be(i))continue;let o=r.nestSelection(n);if(Vn(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=Vt(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Vt(i,o)}}function hc(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=jo(i,n);for(let[s,a]of Object.entries(o)){if(be(a))continue;Vn(a,r.nestSelection(s));let l=r.findField(s);n?.[s]&&!l||(e[s]=!a)}}function yc(e,t){let r={},n=t.getComputedFields(),i=$o(e,n);for(let[o,s]of Object.entries(i)){if(be(s))continue;let a=t.nestSelection(o);Vn(s,a);let l=t.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||be(s)){r[o]=!1;continue}if(s===!0){l?.kind==="object"?r[o]=Vt({},a):r[o]=!0;continue}r[o]=Vt(s,a)}}return r}function Wo(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(Xe(e)){if(Er(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(Go(e))return{$type:"Param",value:e.name};if(lt(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return wc(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:w.Buffer.from(r,n,i).toString("base64")}}if(Ec(e))return e.values;if(rt(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Re){if(e!==Nr.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(bc(e))return e.toJSON();if(typeof e=="object")return Ho(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Ho(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);be(i)||(i!==void 0?r[n]=Wo(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:Ko}))}return r}function wc(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[Ie(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Ue(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};f();u();c();p();m();function zo(e){if(!e._hasPreviewFlag("metrics"))throw new X("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var pt=class{_client;constructor(t){this._client=t}prometheus(t){return zo(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return zo(this._client),this._client._engine.metrics({format:"json",...t})}};f();u();c();p();m();function Yo(e,t){let r=It(()=>xc(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function xc(e){return{datamodel:{models:$n(e.models),enums:$n(e.enums),types:$n(e.types)}}}function $n(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}f();u();c();p();m();var jn=new WeakMap,jr="$$PrismaTypedSql",$t=class{constructor(t,r){jn.set(this,{sql:t,values:r}),Object.defineProperty(this,jr,{value:jr})}get sql(){return jn.get(this).sql}get values(){return jn.get(this).values}};function Zo(e){return(...t)=>new $t(e,t)}function Gr(e){return e!=null&&e[jr]===jr}f();u();c();p();m();var ha=Qe(Pn());f();u();c();p();m();Xo();Ki();Zi();f();u();c();p();m();var se=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}f();u();c();p();m();f();u();c();p();m();var Qr={enumerable:!0,configurable:!0,writable:!0};function Kr(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>Qr,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var rs=Symbol.for("nodejs.util.inspect.custom");function me(e,t){let r=Pc(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=ns(Reflect.ownKeys(o),r),a=ns(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=r.get(s);return l?l.getPropertyDescriptor?{...Qr,...l?.getPropertyDescriptor(s)}:Qr:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[rs]=function(){let o={...this};return delete o[rs],o},i}function Pc(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function ns(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}f();u();c();p();m();function mt(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}f();u();c();p();m();function Wr(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}f();u();c();p();m();function is(e){if(e===void 0)return"";let t=ut(e);return new nt(0,{colors:Dr}).write(t).toString()}f();u();c();p();m();var vc="P2037";function Hr({error:e,user_facing_error:t},r,n){return t.error_code?new ne(Tc(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new ie(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function Tc(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===vc&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Qn=class{getLocation(){return null}};function Ne(e){return typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new Qn}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var os={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function ft(e={}){let t=Rc(e);return Object.entries(t).reduce((n,[i,o])=>(os[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Rc(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function zr(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function ss(e,t){let r=zr(e);return t({action:"aggregate",unpacker:r,argsMapper:ft})(e)}f();u();c();p();m();function Cc(e={}){let{select:t,...r}=e;return typeof t=="object"?ft({...r,_count:t}):ft({...r,_count:{_all:!0}})}function Sc(e={}){return typeof e.select=="object"?t=>zr(e)(t)._count:t=>zr(e)(t)._count._all}function as(e,t){return t({action:"count",unpacker:Sc(e),argsMapper:Cc})(e)}f();u();c();p();m();function Ic(e={}){let t=ft(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function Oc(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function ls(e,t){return t({action:"groupBy",unpacker:Oc(e),argsMapper:Ic})(e)}function us(e,t,r){if(t==="aggregate")return n=>ss(n,r);if(t==="count")return n=>as(n,r);if(t==="groupBy")return n=>ls(n,r)}f();u();c();p();m();function cs(e,t){let r=t.fields.filter(i=>!i.relationName),n=so(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new Nt(e,o,s.type,s.isList,s.kind==="enum")},...Kr(Object.keys(n))})}f();u();c();p();m();f();u();c();p();m();var ps=e=>Array.isArray(e)?e:e.split("."),Kn=(e,t)=>ps(t).reduce((r,n)=>r&&r[n],e),ms=(e,t,r)=>ps(t).reduceRight((n,i,o,s)=>Object.assign({},Kn(e,s.slice(0,o)),{[i]:n}),r);function kc(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function Dc(e,t,r){return t===void 0?e??{}:ms(t,r,e||!0)}function Wn(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((l,d)=>({...l,[d.name]:d}),{});return l=>{let d=Ne(e._errorFormat),g=kc(n,i),h=Dc(l,o,g),T=r({dataPath:g,callsite:d})(h),I=Mc(e,t);return new Proxy(T,{get(S,C){if(!I.includes(C))return S[C];let F=[a[C].type,r,C],B=[g,h];return Wn(e,...F,...B)},...Kr([...I,...Object.getOwnPropertyNames(T)])})}}function Mc(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var _c=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],Nc=["aggregate","count","groupBy"];function Hn(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[Fc(e,t),Uc(e,t),jt(r),te("name",()=>t),te("$name",()=>t),te("$parent",()=>e._appliedParent)];return me({},n)}function Fc(e,t){let r=Ee(t),n=Object.keys(kt).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let d=Ne(e._errorFormat);return e._createPrismaPromise(g=>{let h={args:l,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:g,callsite:d};return e._request({...h,...a})},{action:o,args:l,model:t})};return _c.includes(o)?Wn(e,t,s):Lc(i)?us(e,i,s):s({})}}}function Lc(e){return Nc.includes(e)}function Uc(e,t){return Be(te("fields",()=>{let r=e._runtimeDataModel.models[t];return cs(t,r)}))}f();u();c();p();m();function fs(e){return e.replace(/^./,t=>t.toUpperCase())}var zn=Symbol();function Gt(e){let t=[Bc(e),qc(e),te(zn,()=>e),te("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(jt(r)),me(e,t)}function Bc(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function qc(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Ee),n=[...new Set(t.concat(r))];return Be({getKeys(){return n},getPropertyValue(i){let o=fs(i);if(e._runtimeDataModel.models[o]!==void 0)return Hn(e,o);if(e._runtimeDataModel.models[i]!==void 0)return Hn(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function ds(e){return e[zn]?e[zn]:e}function gs(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Gt(t)}f();u();c();p();m();f();u();c();p();m();function hs({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let d=l.needs.filter(g=>n[g]);d.length>0&&a.push(mt(d))}else if(r){if(!r[l.name])continue;let d=l.needs.filter(g=>!r[g]);d.length>0&&a.push(mt(d))}Vc(e,l.needs)&&s.push($c(l,me(e,s)))}return s.length>0||a.length>0?me(e,[...s,...a]):e}function Vc(e,t){return t.every(r=>Cn(e,r))}function $c(e,t){return Be(te(e.name,()=>e.compute(t)))}f();u();c();p();m();function Yr({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sg.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let d=typeof s=="object"?s:{};t[o]=Yr({visitor:i,result:t[o],args:d,modelName:l.type,runtimeDataModel:n})}}function ws({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Yr({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,l,d)=>{let g=Ee(l);return hs({result:a,modelName:g,select:d.select,omit:d.select?void 0:{...o?.[g],...d.omit},extensions:n})}})}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var jc=["$connect","$disconnect","$on","$transaction","$extends"],Es=jc;function bs(e){if(e instanceof se)return Gc(e);if(Gr(e))return Jc(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:bs(t.args??{}),__internalParams:t,query:(s,a=t)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=Rs(o,l),a.args=s,Ps(e,a,r,n+1)}})})}function vs(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return Ps(e,t,s)}function Ts(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?As(r,n,0,e):e(r)}}function As(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=Rs(i,l),As(a,t,r+1,n)}})}var xs=e=>e;function Rs(e=xs,t=xs){return r=>e(t(r))}f();u();c();p();m();var Cs=z("prisma:client"),Ss={Vercel:"vercel","Netlify CI":"netlify"};function Is({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(Cs("checkPlatformCaching:postinstall",e),Cs("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in Ss){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + +Learn how: https://pris.ly/d/${Ss[t]}-build`;throw console.error(i),new Q(i,r)}}f();u();c();p();m();function Os(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();function ks(e,t){throw new Error(t)}function Qc(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Kc(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function dt(e){return e===null?e:Array.isArray(e)?e.map(dt):typeof e=="object"?Qc(e)?Wc(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Kc(e,dt):e}function Wc({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=w.Buffer.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new Te(t);case"Json":return JSON.parse(t);default:ks(t,"Unknown tagged value")}}var Ds="6.19.1";f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var zc=()=>globalThis.process?.release?.name==="node",Yc=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,Zc=()=>!!globalThis.Deno,Xc=()=>typeof globalThis.Netlify=="object",ep=()=>typeof globalThis.EdgeRuntime=="object",tp=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function rp(){return[[Xc,"netlify"],[ep,"edge-light"],[tp,"workerd"],[Zc,"deno"],[Yc,"bun"],[zc,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var np={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Zr(){let e=rp();return{id:e,prettyName:np[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function gt({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw Zr().id==="workerd"?new Q(`error: Environment variable not found: ${s.fromEnvVar}. + +In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new Q(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new Q("error: Missing URL environment variable, value, or override.",n);return i}f();u();c();p();m();f();u();c();p();m();f();u();c();p();m();var Xr=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ae=class extends Xr{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};f();u();c();p();m();function U(e,t){return{...e,isRetryable:t}}var qe=class extends ae{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,U(r,!1))}};N(qe,"InvalidDatasourceError");function Ms(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=gt({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof y<"u"?y.env:{}}}),i;try{i=new URL(n)}catch{throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==hr)throw new qe(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new qe(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let l=vn(i)?"http:":"https:";y.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(l="http:");let d=new URL(i.href.replace(o,l));return{apiKey:a,url:d}}f();u();c();p();m();var _s=Qe(Xi()),en=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":_s.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};f();u();c();p();m();function ip(e){return e[0]*1e3+e[1]/1e6}function Yn(e){return new Date(ip(e))}f();u();c();p();m();f();u();c();p();m();var ht=class extends ae{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",U(t,!0))}};N(ht,"ForcedRetryError");f();u();c();p();m();var Ve=class extends ae{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,U(r,!1))}};N(Ve,"NotImplementedYetError");f();u();c();p();m();f();u();c();p();m();var G=class extends ae{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var $e=class extends G{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",U(t,!0))}};N($e,"SchemaMissingError");f();u();c();p();m();f();u();c();p();m();var Zn="This request could not be understood by the server",Qt=class extends G{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Zn,U(t,!1)),n&&(this.code=n)}};N(Qt,"BadRequestError");f();u();c();p();m();var Kt=class extends G{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",U(t,!0)),this.logs=r}};N(Kt,"HealthcheckTimeoutError");f();u();c();p();m();var Wt=class extends G{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,U(t,!0)),this.logs=n}};N(Wt,"EngineStartupError");f();u();c();p();m();var Ht=class extends G{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",U(t,!1))}};N(Ht,"EngineVersionNotSupportedError");f();u();c();p();m();var Xn="Request timed out",zt=class extends G{name="GatewayTimeoutError";code="P5009";constructor(t,r=Xn){super(r,U(t,!1))}};N(zt,"GatewayTimeoutError");f();u();c();p();m();var op="Interactive transaction error",Yt=class extends G{name="InteractiveTransactionError";code="P5015";constructor(t,r=op){super(r,U(t,!1))}};N(Yt,"InteractiveTransactionError");f();u();c();p();m();var sp="Request parameters are invalid",Zt=class extends G{name="InvalidRequestError";code="P5011";constructor(t,r=sp){super(r,U(t,!1))}};N(Zt,"InvalidRequestError");f();u();c();p();m();var ei="Requested resource does not exist",Xt=class extends G{name="NotFoundError";code="P5003";constructor(t,r=ei){super(r,U(t,!1))}};N(Xt,"NotFoundError");f();u();c();p();m();var ti="Unknown server error",yt=class extends G{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||ti,U(t,!0)),this.logs=n}};N(yt,"ServerError");f();u();c();p();m();var ri="Unauthorized, check your connection string",er=class extends G{name="UnauthorizedError";code="P5007";constructor(t,r=ri){super(r,U(t,!1))}};N(er,"UnauthorizedError");f();u();c();p();m();var ni="Usage exceeded, retry again later",tr=class extends G{name="UsageExceededError";code="P5008";constructor(t,r=ni){super(r,U(t,!0))}};N(tr,"UsageExceededError");async function ap(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function rr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await ap(e);if(n.type==="QueryEngineError")throw new ne(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new yt(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new $e(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Ht(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Wt(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new Q(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Kt(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Yt(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Zt(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new er(r,wt(ri,n));if(e.status===404)return new Xt(r,wt(ei,n));if(e.status===429)throw new tr(r,wt(ni,n));if(e.status===504)throw new zt(r,wt(Xn,n));if(e.status>=500)throw new yt(r,wt(ti,n));if(e.status>=400)throw new Qt(r,wt(Zn,n))}function wt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}f();u();c();p();m();function Ns(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}f();u();c();p();m();var Ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Fs(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,d,g;for(let h=0;h>18,a=(g&258048)>>12,l=(g&4032)>>6,d=g&63,r+=Ce[s]+Ce[a]+Ce[l]+Ce[d];return i==1?(g=t[o],s=(g&252)>>2,a=(g&3)<<4,r+=Ce[s]+Ce[a]+"=="):i==2&&(g=t[o]<<8|t[o+1],s=(g&64512)>>10,a=(g&1008)>>4,l=(g&15)<<2,r+=Ce[s]+Ce[a]+Ce[l]+"="),r}f();u();c();p();m();function Ls(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new Q("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}f();u();c();p();m();var Us={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};f();u();c();p();m();f();u();c();p();m();var nr=class extends ae{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service: +${t}`,U(r,!0))}};N(nr,"RequestError");async function je(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new nr(a,{clientVersion:n,cause:s})}}var up=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Bs=z("prisma:client:dataproxyEngine");async function cp(e,t){let r=Us["@prisma/engines-version"],n=t.clientVersion??"unknown";if(y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return y.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&up.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,l,d]=s.split("."),g=pp(`<=${a}.${l}.${d}`),h=await je(g,{clientVersion:n});if(!h.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${h.status} ${h.statusText}, response body: ${await h.text()||""}`);let T=await h.text();Bs("length of body fetched from unpkg.com",T.length);let I;try{I=JSON.parse(T)}catch(S){throw console.error("JSON.parse error: body fetched from unpkg.com: ",T),S}return I.version}throw new Ve("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function qs(e,t){let r=await cp(e,t);return Bs("version",r),r}function pp(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Vs=3,ir=z("prisma:client:dataproxyEngine"),Et=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){Ls(t),this.config=t,this.env=t.env,this.inlineSchema=Fs(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new en({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await qs(this.host,this.config),ir("host",this.host),ir("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":ir(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:Yn(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:Yn(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await je(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||ir("schema response status",r.status);let n=await rr(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=Wr(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||ir("graphql response status",a.status),await this.handleError(await rr(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await je(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await rr(l,this.clientVersion));let d=await l.json(),{extensions:g}=d;g&&this.propagateResponseExtensions(g);let h=d.id,T=d["data-proxy"].endpoint;return{id:h,payload:{endpoint:T}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await je(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await rr(a,this.clientVersion));let l=await a.json(),{extensions:d}=l;d&&this.propagateResponseExtensions(d);return}}})}getURLAndAPIKey(){return Ms({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new Ve("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ae)||!i.isRetryable)throw i;if(r>=Vs)throw i instanceof ht?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${Vs} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Ns(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof $e)throw await this.uploadSchema(),new ht({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?Hr(t[0],this.config.clientVersion,this.config.activeProvider):new ie(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};f();u();c();p();m();function $s({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=C=>{i.push({_tag:"warning",value:C})},a=C=>{let M=C.join(` +`);o.push({_tag:"error",value:M})},l=!!e?.startsWith("prisma://"),d=yr(e),g=!!t,h=l||d;!g&&r&&h&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let T=h||!r;g&&(T||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):h?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let I={accelerate:T,ppg:d,driverAdapters:g};function S(C){return C.length>0}return S(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:I}:{ok:!0,diagnostics:{warnings:i},isUsing:I}}function js({copyEngine:e=!0},t){let r;try{r=gt({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...y.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=$s({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"edge"});for(let h of o.warnings)St(...h.value);if(!n){let h=o.errors[0];throw new X(h.value,{clientVersion:t.clientVersion})}let s=Ze(t.generator),a=s==="library",l=s==="binary",d=s==="client",g=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new Et(t):(i.driverAdapters,i.accelerate,new Et(t))}f();u();c();p();m();function Gs({generator:e}){return e?.previewFeatures??[]}f();u();c();p();m();var Js=e=>({command:e});f();u();c();p();m();f();u();c();p();m();var Qs=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);f();u();c();p();m();function bt(e){try{return Ks(e,"fast")}catch{return Ks(e,"slow")}}function Ks(e,t){return JSON.stringify(e.map(r=>Hs(r,t)))}function Hs(e,t){if(Array.isArray(e))return e.map(r=>Hs(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(Xe(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Ae.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(w.Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(mp(e))return{prisma__type:"bytes",prisma__value:w.Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:w.Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?zs(e):e}function mp(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function zs(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Ws);let t={};for(let r of Object.keys(e))t[r]=Ws(e[r]);return t}function Ws(e){return typeof e=="bigint"?e.toString():zs(e)}var fp=/^(\s*alter\s)/i,Ys=z("prisma:client");function ii(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&fp.exec(t))throw new Error(`Running ALTER using ${n} is not supported +Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. + +Example: + await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) + +More Information: https://pris.ly/d/execute-raw +`)}var oi=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(Gr(r))n=r.sql,i={values:bt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:bt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:bt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:bt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Qs(r),i={values:bt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Ys(`prisma.${e}(${n}, ${i.values})`):Ys(`prisma.${e}(${n})`),{query:n,parameters:i}},Zs={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new se(t,r)}},Xs={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};f();u();c();p();m();function si(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=ea(r(s)):ea(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function ea(e){return typeof e.then=="function"?e:Promise.resolve(e)}f();u();c();p();m();var dp=xn.split(".")[0],gp={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},ai=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${dp}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??gp}};function ta(){return new ai}f();u();c();p();m();function ra(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}f();u();c();p();m();function na(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}f();u();c();p();m();f();u();c();p();m();function tn(e){return typeof e.batchRequestIdx=="number"}f();u();c();p();m();function ia(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(li(e.query.arguments)),t.push(li(e.query.selection)),t.join("")}function li(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${li(n)})`:r}).join(" ")})`}f();u();c();p();m();var hp={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function ui(e){return hp[e]}f();u();c();p();m();var rn=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,y.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iGe("bigint",r));case"bytes-array":return t.map(r=>Ge("bytes",r));case"decimal-array":return t.map(r=>Ge("decimal",r));case"datetime-array":return t.map(r=>Ge("datetime",r));case"date-array":return t.map(r=>Ge("date",r));case"time-array":return t.map(r=>Ge("time",r));default:return t}}function nn(e){let t=[],r=yp(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(h=>h.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),d=n.some(h=>ui(h.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:Ep(o),containsWrite:d,customDataProxyFetch:i})).map((h,T)=>{if(h instanceof Error)return h;try{return this.mapQueryEngineResult(n[T],h)}catch(I){return I}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?oa(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:ui(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:ia(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return y.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(wp(t),bp(t,i))throw t;if(t instanceof ne&&xp(t)){let d=sa(t.meta);Ur({args:o,errors:[d],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let l=t.message;if(n&&(l=Sr({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),t.code){let d=s?{modelName:s,...t.meta}:t.meta;throw new ne(l,{code:t.code,clientVersion:this.client._clientVersion,meta:d,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new Pe(l,this.client._clientVersion);if(t instanceof ie)throw new ie(l,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof Q)throw new Q(l,this.client._clientVersion);if(t instanceof Pe)throw new Pe(l,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?Rn(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(d=>d!=="select"&&d!=="include"),a=Kn(o,s),l=i==="queryRaw"?nn(a):dt(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function Ep(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:oa(e)};Ue(e,"Unknown transaction kind")}}function oa(e){return{id:e.id,payload:e.payload}}function bp(e,t){return tn(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function xp(e){return e.code==="P2009"||e.code==="P2012"}function sa(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(sa)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}f();u();c();p();m();var aa=Ds;f();u();c();p();m();var ma=Qe(Nn());f();u();c();p();m();var q=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};N(q,"PrismaClientConstructorValidationError");var la=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],ua=["pretty","colorless","minimal"],ca=["info","query","warn","error"],Pp={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=xt(r,t)||` Available datasources: ${t.join(", ")}`;throw new q(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new q(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new q(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&&Ze(t.generator)==="client")throw new q('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new q('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Ze(t.generator)==="binary")throw new q('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new q(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!ua.includes(e)){let t=xt(e,ua);throw new q(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new q(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!ca.includes(r)){let n=xt(r,ca);throw new q(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=xt(i,o);throw new q(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new q(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new q(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new q(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new q('"omit" option is expected to be an object.');if(e===null)throw new q('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=Tp(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(d=>d.name===s);if(!l){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new q(Ap(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new q(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=xt(r,t);throw new q(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function fa(e,t){for(let[r,n]of Object.entries(e)){if(!la.includes(r)){let i=xt(r,la);throw new q(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}Pp[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new q('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function xt(e,t){if(t.length===0||typeof e!="string")return"";let r=vp(e,t);return r?` Did you mean "${r}"?`:""}function vp(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,ma.default)(e,i)}));r.sort((i,o)=>i.distanceIe(n)===t);if(r)return e[r]}function Ap(e,t){let r=ut(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Lr(r,"colorless");return`Error validating "omit" option: + +${i} + +${n}`}f();u();c();p();m();function da(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},l=d=>{o||(o=!0,r(d))};for(let d=0;d{n[d]=g,a()},g=>{if(!tn(g)){l(g);return}g.batchRequestIdx===d?l(g):(i||(i=g),a())})})}var Fe=z("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Rp={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},Cp=Symbol.for("prisma.client.transaction.id"),Sp={id:0,nextId(){return++this.id}};function ya(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=si();constructor(n){e=n?.__internal?.configOverride?.(e)??e,Is(e),n&&fa(n,e);let i=new Jr().on("error",()=>{});this._extensions=ct.empty(),this._previewFeatures=Gs(e),this._clientVersion=e.clientVersion??aa,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=ta();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&dr.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&dr.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new Q(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new Q("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let l=n??{},d=l.__internal??{},g=d.debug===!0;g&&z.enable("prisma:client");let h=dr.resolve(e.dirname,e.relativePath);Qi.existsSync(h)||(h=e.dirname),Fe("dirname",e.dirname),Fe("relativePath",e.relativePath),Fe("cwd",h);let T=d.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:y.env.NODE_ENV==="production"?this._errorFormat="minimal":y.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:h,dirname:e.dirname,enableDebugLogs:g,allowTriggerPanic:T.allowTriggerPanic,prismaPath:T.binaryPath??void 0,engineEndpoint:T.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&na(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(I=>typeof I=="string"?I==="query":I.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:Os(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:gt,getBatchRequestPayload:Wr,prismaGraphQLToJSError:Hr,PrismaClientUnknownRequestError:ie,PrismaClientInitializationError:Q,PrismaClientKnownRequestError:ne,debug:z("prisma:client:accelerateEngine"),engineVersion:ha.version,clientVersion:e.clientVersion}},Fe("clientVersion",e.clientVersion),this._engine=js(e,this._engineConfig),this._requestHandler=new on(this,i),l.log)for(let I of l.log){let S=typeof I=="string"?I:I.emit==="stdout"?I.level:null;S&&this.$on(S,C=>{Ct.log(`${Ct.tags[S]??""}`,C.message||C.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=Gt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{Ji()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:oi({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=ga(n,i);return ii(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new X("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(ii(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new X(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Js,callsite:Ne(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:oi({clientMethod:i,activeProvider:a}),callsite:Ne(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...ga(n,i));throw new X("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new X("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Sp.nextId(),s=ra(n.length),a=n.map((l,d)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let g=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,h={kind:"batch",id:o,index:d,isolationLevel:g,lock:s};return l.requestTransaction?.(h)??l});return da(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let d={kind:"itx",...a};l=await n(this._createItxClient(d)),await this._engine.transaction("commit",o,a)}catch(d){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),d}return l}_createItxClient(n){return me(Gt(me(ds(this),[te("_appliedParent",()=>this._appliedParent._createItxClient(n)),te("_createPrismaPromise",()=>si(n)),te(Cp,()=>n.id)])),[mt(Es)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Rp,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:d,args:g,...h}=l,T={...n,...h};g&&(T.args=i.middlewareArgsToRequestArgs(g)),n.transaction!==void 0&&d===!1&&delete T.transaction;let I=await vs(this,T);return T.model?ws({result:I,modelName:T.model,args:T.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):I};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:d,transaction:g,unpacker:h,otelParentCtx:T,customDataProxyFetch:I}){try{n=d?d(n):n;let S={name:"serialize"},C=this._tracingHelper.runInChildSpan(S,()=>$r({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return z.enabled("prisma:client")&&(Fe("Prisma Client call:"),Fe(`prisma.${i}(${is(n)})`),Fe("Generated request:"),Fe(JSON.stringify(C,null,2)+` +`)),g?.kind==="batch"&&await g.lock,this._requestHandler.request({protocolQuery:C,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:g,unpacker:h,otelParentCtx:T,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:I})}catch(S){throw S.clientVersion=this._clientVersion,S}}$metrics=new pt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=gs}return t}function ga(e,t){return Ip(e)?[new se(e,t),Zs]:[e,Xs]}function Ip(e){return Array.isArray(e)&&Array.isArray(e.raw)}f();u();c();p();m();var Op=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function wa(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!Op.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}f();u();c();p();m();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); +//# sourceMappingURL=edge.js.map diff --git a/packages/identity-prisma-client/runtime/index-browser.d.ts b/packages/identity-prisma-client/runtime/index-browser.d.ts new file mode 100644 index 0000000..0e96e4b --- /dev/null +++ b/packages/identity-prisma-client/runtime/index-browser.d.ts @@ -0,0 +1,370 @@ +declare class AnyNull extends NullTypesEnumValue { + #private; +} + +declare type Args = T extends { + [K: symbol]: { + types: { + operations: { + [K in F]: { + args: any; + }; + }; + }; + }; +} ? T[symbol]['types']['operations'][F]['args'] : any; + +declare class DbNull extends NullTypesEnumValue { + #private; +} + +export declare function Decimal(n: Decimal.Value): Decimal; + +export declare namespace Decimal { + export type Constructor = typeof Decimal; + export type Instance = Decimal; + export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; + export type Modulo = Rounding | 9; + export type Value = string | number | Decimal; + + // http://mikemcl.github.io/decimal.js/#constructor-properties + export interface Config { + precision?: number; + rounding?: Rounding; + toExpNeg?: number; + toExpPos?: number; + minE?: number; + maxE?: number; + crypto?: boolean; + modulo?: Modulo; + defaults?: boolean; + } +} + +export declare class Decimal { + readonly d: number[]; + readonly e: number; + readonly s: number; + + constructor(n: Decimal.Value); + + absoluteValue(): Decimal; + abs(): Decimal; + + ceil(): Decimal; + + clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal; + clamp(min: Decimal.Value, max: Decimal.Value): Decimal; + + comparedTo(n: Decimal.Value): number; + cmp(n: Decimal.Value): number; + + cosine(): Decimal; + cos(): Decimal; + + cubeRoot(): Decimal; + cbrt(): Decimal; + + decimalPlaces(): number; + dp(): number; + + dividedBy(n: Decimal.Value): Decimal; + div(n: Decimal.Value): Decimal; + + dividedToIntegerBy(n: Decimal.Value): Decimal; + divToInt(n: Decimal.Value): Decimal; + + equals(n: Decimal.Value): boolean; + eq(n: Decimal.Value): boolean; + + floor(): Decimal; + + greaterThan(n: Decimal.Value): boolean; + gt(n: Decimal.Value): boolean; + + greaterThanOrEqualTo(n: Decimal.Value): boolean; + gte(n: Decimal.Value): boolean; + + hyperbolicCosine(): Decimal; + cosh(): Decimal; + + hyperbolicSine(): Decimal; + sinh(): Decimal; + + hyperbolicTangent(): Decimal; + tanh(): Decimal; + + inverseCosine(): Decimal; + acos(): Decimal; + + inverseHyperbolicCosine(): Decimal; + acosh(): Decimal; + + inverseHyperbolicSine(): Decimal; + asinh(): Decimal; + + inverseHyperbolicTangent(): Decimal; + atanh(): Decimal; + + inverseSine(): Decimal; + asin(): Decimal; + + inverseTangent(): Decimal; + atan(): Decimal; + + isFinite(): boolean; + + isInteger(): boolean; + isInt(): boolean; + + isNaN(): boolean; + + isNegative(): boolean; + isNeg(): boolean; + + isPositive(): boolean; + isPos(): boolean; + + isZero(): boolean; + + lessThan(n: Decimal.Value): boolean; + lt(n: Decimal.Value): boolean; + + lessThanOrEqualTo(n: Decimal.Value): boolean; + lte(n: Decimal.Value): boolean; + + logarithm(n?: Decimal.Value): Decimal; + log(n?: Decimal.Value): Decimal; + + minus(n: Decimal.Value): Decimal; + sub(n: Decimal.Value): Decimal; + + modulo(n: Decimal.Value): Decimal; + mod(n: Decimal.Value): Decimal; + + naturalExponential(): Decimal; + exp(): Decimal; + + naturalLogarithm(): Decimal; + ln(): Decimal; + + negated(): Decimal; + neg(): Decimal; + + plus(n: Decimal.Value): Decimal; + add(n: Decimal.Value): Decimal; + + precision(includeZeros?: boolean): number; + sd(includeZeros?: boolean): number; + + round(): Decimal; + + sine() : Decimal; + sin() : Decimal; + + squareRoot(): Decimal; + sqrt(): Decimal; + + tangent() : Decimal; + tan() : Decimal; + + times(n: Decimal.Value): Decimal; + mul(n: Decimal.Value) : Decimal; + + toBinary(significantDigits?: number): string; + toBinary(significantDigits: number, rounding: Decimal.Rounding): string; + + toDecimalPlaces(decimalPlaces?: number): Decimal; + toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + toDP(decimalPlaces?: number): Decimal; + toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + + toExponential(decimalPlaces?: number): string; + toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFixed(decimalPlaces?: number): string; + toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFraction(max_denominator?: Decimal.Value): Decimal[]; + + toHexadecimal(significantDigits?: number): string; + toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string; + toHex(significantDigits?: number): string; + toHex(significantDigits: number, rounding?: Decimal.Rounding): string; + + toJSON(): string; + + toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal; + + toNumber(): number; + + toOctal(significantDigits?: number): string; + toOctal(significantDigits: number, rounding: Decimal.Rounding): string; + + toPower(n: Decimal.Value): Decimal; + pow(n: Decimal.Value): Decimal; + + toPrecision(significantDigits?: number): string; + toPrecision(significantDigits: number, rounding: Decimal.Rounding): string; + + toSignificantDigits(significantDigits?: number): Decimal; + toSignificantDigits(significantDigits: number, rounding: Decimal.Rounding): Decimal; + toSD(significantDigits?: number): Decimal; + toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal; + + toString(): string; + + truncated(): Decimal; + trunc(): Decimal; + + valueOf(): string; + + static abs(n: Decimal.Value): Decimal; + static acos(n: Decimal.Value): Decimal; + static acosh(n: Decimal.Value): Decimal; + static add(x: Decimal.Value, y: Decimal.Value): Decimal; + static asin(n: Decimal.Value): Decimal; + static asinh(n: Decimal.Value): Decimal; + static atan(n: Decimal.Value): Decimal; + static atanh(n: Decimal.Value): Decimal; + static atan2(y: Decimal.Value, x: Decimal.Value): Decimal; + static cbrt(n: Decimal.Value): Decimal; + static ceil(n: Decimal.Value): Decimal; + static clamp(n: Decimal.Value, min: Decimal.Value, max: Decimal.Value): Decimal; + static clone(object?: Decimal.Config): Decimal.Constructor; + static config(object: Decimal.Config): Decimal.Constructor; + static cos(n: Decimal.Value): Decimal; + static cosh(n: Decimal.Value): Decimal; + static div(x: Decimal.Value, y: Decimal.Value): Decimal; + static exp(n: Decimal.Value): Decimal; + static floor(n: Decimal.Value): Decimal; + static hypot(...n: Decimal.Value[]): Decimal; + static isDecimal(object: any): object is Decimal; + static ln(n: Decimal.Value): Decimal; + static log(n: Decimal.Value, base?: Decimal.Value): Decimal; + static log2(n: Decimal.Value): Decimal; + static log10(n: Decimal.Value): Decimal; + static max(...n: Decimal.Value[]): Decimal; + static min(...n: Decimal.Value[]): Decimal; + static mod(x: Decimal.Value, y: Decimal.Value): Decimal; + static mul(x: Decimal.Value, y: Decimal.Value): Decimal; + static noConflict(): Decimal.Constructor; // Browser only + static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal; + static random(significantDigits?: number): Decimal; + static round(n: Decimal.Value): Decimal; + static set(object: Decimal.Config): Decimal.Constructor; + static sign(n: Decimal.Value): number; + static sin(n: Decimal.Value): Decimal; + static sinh(n: Decimal.Value): Decimal; + static sqrt(n: Decimal.Value): Decimal; + static sub(x: Decimal.Value, y: Decimal.Value): Decimal; + static sum(...n: Decimal.Value[]): Decimal; + static tan(n: Decimal.Value): Decimal; + static tanh(n: Decimal.Value): Decimal; + static trunc(n: Decimal.Value): Decimal; + + static readonly default?: Decimal.Constructor; + static readonly Decimal?: Decimal.Constructor; + + static readonly precision: number; + static readonly rounding: Decimal.Rounding; + static readonly toExpNeg: number; + static readonly toExpPos: number; + static readonly minE: number; + static readonly maxE: number; + static readonly crypto: boolean; + static readonly modulo: Decimal.Modulo; + + static readonly ROUND_UP: 0; + static readonly ROUND_DOWN: 1; + static readonly ROUND_CEIL: 2; + static readonly ROUND_FLOOR: 3; + static readonly ROUND_HALF_UP: 4; + static readonly ROUND_HALF_DOWN: 5; + static readonly ROUND_HALF_EVEN: 6; + static readonly ROUND_HALF_CEIL: 7; + static readonly ROUND_HALF_FLOOR: 8; + static readonly EUCLID: 9; +} + +declare type Exact = (A extends unknown ? (W extends A ? { + [K in keyof A]: Exact; +} : W) : never) | (A extends Narrowable ? A : never); + +export declare function getRuntime(): GetRuntimeOutput; + +declare type GetRuntimeOutput = { + id: RuntimeName; + prettyName: string; + isEdge: boolean; +}; + +declare class JsonNull extends NullTypesEnumValue { + #private; +} + +/** + * Generates more strict variant of an enum which, unlike regular enum, + * throws on non-existing property access. This can be useful in following situations: + * - we have an API, that accepts both `undefined` and `SomeEnumType` as an input + * - enum values are generated dynamically from DMMF. + * + * In that case, if using normal enums and no compile-time typechecking, using non-existing property + * will result in `undefined` value being used, which will be accepted. Using strict enum + * in this case will help to have a runtime exception, telling you that you are probably doing something wrong. + * + * Note: if you need to check for existence of a value in the enum you can still use either + * `in` operator or `hasOwnProperty` function. + * + * @param definition + * @returns + */ +export declare function makeStrictEnum>(definition: T): T; + +declare type Narrowable = string | number | bigint | boolean | []; + +declare class NullTypesEnumValue extends ObjectEnumValue { + _getNamespace(): string; +} + +/** + * Base class for unique values of object-valued enums. + */ +declare abstract class ObjectEnumValue { + constructor(arg?: symbol); + abstract _getNamespace(): string; + _getName(): string; + toString(): string; +} + +export declare const objectEnumValues: { + classes: { + DbNull: typeof DbNull; + JsonNull: typeof JsonNull; + AnyNull: typeof AnyNull; + }; + instances: { + DbNull: DbNull; + JsonNull: JsonNull; + AnyNull: AnyNull; + }; +}; + +declare type Operation = 'findFirst' | 'findFirstOrThrow' | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'updateManyAndReturn' | 'upsert' | 'delete' | 'deleteMany' | 'aggregate' | 'count' | 'groupBy' | '$queryRaw' | '$executeRaw' | '$queryRawUnsafe' | '$executeRawUnsafe' | 'findRaw' | 'aggregateRaw' | '$runCommandRaw'; + +declare namespace Public { + export { + validator + } +} +export { Public } + +declare type RuntimeName = 'workerd' | 'deno' | 'netlify' | 'node' | 'bun' | 'edge-light' | ''; + +declare function validator(): (select: Exact) => S; + +declare function validator, O extends keyof C[M] & Operation>(client: C, model: M, operation: O): (select: Exact>) => S; + +declare function validator, O extends keyof C[M] & Operation, P extends keyof Args>(client: C, model: M, operation: O, prop: P): (select: Exact[P]>) => S; + +export { } diff --git a/packages/identity-prisma-client/runtime/index-browser.js b/packages/identity-prisma-client/runtime/index-browser.js new file mode 100644 index 0000000..086502f --- /dev/null +++ b/packages/identity-prisma-client/runtime/index-browser.js @@ -0,0 +1,17 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +"use strict";var pe=Object.defineProperty;var Xe=Object.getOwnPropertyDescriptor;var Ke=Object.getOwnPropertyNames;var Qe=Object.prototype.hasOwnProperty;var Ye=e=>{throw TypeError(e)};var Oe=(e,n)=>{for(var i in n)pe(e,i,{get:n[i],enumerable:!0})},xe=(e,n,i,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of Ke(n))!Qe.call(e,r)&&r!==i&&pe(e,r,{get:()=>n[r],enumerable:!(t=Xe(n,r))||t.enumerable});return e};var ze=e=>xe(pe({},"__esModule",{value:!0}),e);var ne=(e,n,i)=>n.has(e)?Ye("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(e):n.set(e,i);var ii={};Oe(ii,{Decimal:()=>Je,Public:()=>ge,getRuntime:()=>_e,makeStrictEnum:()=>qe,objectEnumValues:()=>Ae});module.exports=ze(ii);var ge={};Oe(ge,{validator:()=>Re});function Re(...e){return n=>n}var ie=Symbol(),me=new WeakMap,we=class{constructor(n){n===ie?me.set(this,"Prisma.".concat(this._getName())):me.set(this,"new Prisma.".concat(this._getNamespace(),".").concat(this._getName(),"()"))}_getName(){return this.constructor.name}toString(){return me.get(this)}},G=class extends we{_getNamespace(){return"NullTypes"}},Ne,J=class extends G{constructor(){super(...arguments);ne(this,Ne)}};Ne=new WeakMap;ke(J,"DbNull");var ve,X=class extends G{constructor(){super(...arguments);ne(this,ve)}};ve=new WeakMap;ke(X,"JsonNull");var Ee,K=class extends G{constructor(){super(...arguments);ne(this,Ee)}};Ee=new WeakMap;ke(K,"AnyNull");var Ae={classes:{DbNull:J,JsonNull:X,AnyNull:K},instances:{DbNull:new J(ie),JsonNull:new X(ie),AnyNull:new K(ie)}};function ke(e,n){Object.defineProperty(e,"name",{value:n,configurable:!0})}var ye=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function qe(e){return new Proxy(e,{get(n,i){if(i in n)return n[i];if(!ye.has(i))throw new TypeError("Invalid enum value: ".concat(String(i)))}})}var en=()=>{var e,n;return((n=(e=globalThis.process)==null?void 0:e.release)==null?void 0:n.name)==="node"},nn=()=>{var e,n;return!!globalThis.Bun||!!((n=(e=globalThis.process)==null?void 0:e.versions)!=null&&n.bun)},tn=()=>!!globalThis.Deno,rn=()=>typeof globalThis.Netlify=="object",sn=()=>typeof globalThis.EdgeRuntime=="object",on=()=>{var e;return((e=globalThis.navigator)==null?void 0:e.userAgent)==="Cloudflare-Workers"};function un(){var i;return(i=[[rn,"netlify"],[sn,"edge-light"],[on,"workerd"],[tn,"deno"],[nn,"bun"],[en,"node"]].flatMap(t=>t[0]()?[t[1]]:[]).at(0))!=null?i:""}var fn={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function _e(){let e=un();return{id:e,prettyName:fn[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}var V=9e15,H=1e9,Se="0123456789abcdef",se="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",oe="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Me={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-V,maxE:V,crypto:!1},Le,Z,w=!0,fe="[DecimalError] ",$=fe+"Invalid argument: ",Ie=fe+"Precision limit exceeded",Ze=fe+"crypto unavailable",Ue="[object Decimal]",R=Math.floor,C=Math.pow,cn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,ln=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,an=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Be=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,D=1e7,m=7,dn=9007199254740991,hn=se.length-1,Ce=oe.length-1,h={toStringTag:Ue};h.absoluteValue=h.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),p(e)};h.ceil=function(){return p(new this.constructor(this),this.e+1,2)};h.clampedTo=h.clamp=function(e,n){var i,t=this,r=t.constructor;if(e=new r(e),n=new r(n),!e.s||!n.s)return new r(NaN);if(e.gt(n))throw Error($+n);return i=t.cmp(e),i<0?e:t.cmp(n)>0?n:new r(t)};h.comparedTo=h.cmp=function(e){var n,i,t,r,s=this,o=s.d,u=(e=new s.constructor(e)).d,c=s.s,f=e.s;if(!o||!u)return!c||!f?NaN:c!==f?c:o===u?0:!o^c<0?1:-1;if(!o[0]||!u[0])return o[0]?c:u[0]?-f:0;if(c!==f)return c;if(s.e!==e.e)return s.e>e.e^c<0?1:-1;for(t=o.length,r=u.length,n=0,i=tu[n]^c<0?1:-1;return t===r?0:t>r^c<0?1:-1};h.cosine=h.cos=function(){var e,n,i=this,t=i.constructor;return i.d?i.d[0]?(e=t.precision,n=t.rounding,t.precision=e+Math.max(i.e,i.sd())+m,t.rounding=1,i=pn(t,We(t,i)),t.precision=e,t.rounding=n,p(Z==2||Z==3?i.neg():i,e,n,!0)):new t(1):new t(NaN)};h.cubeRoot=h.cbrt=function(){var e,n,i,t,r,s,o,u,c,f,l=this,a=l.constructor;if(!l.isFinite()||l.isZero())return new a(l);for(w=!1,s=l.s*C(l.s*l,1/3),!s||Math.abs(s)==1/0?(i=b(l.d),e=l.e,(s=(e-i.length+1)%3)&&(i+=s==1||s==-2?"0":"00"),s=C(i,1/3),e=R((e+1)/3)-(e%3==(e<0?-1:2)),s==1/0?i="5e"+e:(i=s.toExponential(),i=i.slice(0,i.indexOf("e")+1)+e),t=new a(i),t.s=l.s):t=new a(s.toString()),o=(e=a.precision)+3;;)if(u=t,c=u.times(u).times(u),f=c.plus(l),t=k(f.plus(l).times(u),f.plus(c),o+2,1),b(u.d).slice(0,o)===(i=b(t.d)).slice(0,o))if(i=i.slice(o-3,o+1),i=="9999"||!r&&i=="4999"){if(!r&&(p(u,e+1,0),u.times(u).times(u).eq(l))){t=u;break}o+=4,r=1}else{(!+i||!+i.slice(1)&&i.charAt(0)=="5")&&(p(t,e+1,1),n=!t.times(t).times(t).eq(l));break}return w=!0,p(t,e,a.rounding,n)};h.decimalPlaces=h.dp=function(){var e,n=this.d,i=NaN;if(n){if(e=n.length-1,i=(e-R(this.e/m))*m,e=n[e],e)for(;e%10==0;e/=10)i--;i<0&&(i=0)}return i};h.dividedBy=h.div=function(e){return k(this,new this.constructor(e))};h.dividedToIntegerBy=h.divToInt=function(e){var n=this,i=n.constructor;return p(k(n,new i(e),0,1,1),i.precision,i.rounding)};h.equals=h.eq=function(e){return this.cmp(e)===0};h.floor=function(){return p(new this.constructor(this),this.e+1,3)};h.greaterThan=h.gt=function(e){return this.cmp(e)>0};h.greaterThanOrEqualTo=h.gte=function(e){var n=this.cmp(e);return n==1||n===0};h.hyperbolicCosine=h.cosh=function(){var e,n,i,t,r,s=this,o=s.constructor,u=new o(1);if(!s.isFinite())return new o(s.s?1/0:NaN);if(s.isZero())return u;i=o.precision,t=o.rounding,o.precision=i+Math.max(s.e,s.sd())+4,o.rounding=1,r=s.d.length,r<32?(e=Math.ceil(r/3),n=(1/le(4,e)).toString()):(e=16,n="2.3283064365386962890625e-10"),s=j(o,1,s.times(n),new o(1),!0);for(var c,f=e,l=new o(8);f--;)c=s.times(s),s=u.minus(c.times(l.minus(c.times(l))));return p(s,o.precision=i,o.rounding=t,!0)};h.hyperbolicSine=h.sinh=function(){var e,n,i,t,r=this,s=r.constructor;if(!r.isFinite()||r.isZero())return new s(r);if(n=s.precision,i=s.rounding,s.precision=n+Math.max(r.e,r.sd())+4,s.rounding=1,t=r.d.length,t<3)r=j(s,2,r,r,!0);else{e=1.4*Math.sqrt(t),e=e>16?16:e|0,r=r.times(1/le(5,e)),r=j(s,2,r,r,!0);for(var o,u=new s(5),c=new s(16),f=new s(20);e--;)o=r.times(r),r=r.times(u.plus(o.times(c.times(o).plus(f))))}return s.precision=n,s.rounding=i,p(r,n,i,!0)};h.hyperbolicTangent=h.tanh=function(){var e,n,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+7,t.rounding=1,k(i.sinh(),i.cosh(),t.precision=e,t.rounding=n)):new t(i.s)};h.inverseCosine=h.acos=function(){var e=this,n=e.constructor,i=e.abs().cmp(1),t=n.precision,r=n.rounding;return i!==-1?i===0?e.isNeg()?F(n,t,r):new n(0):new n(NaN):e.isZero()?F(n,t+4,r).times(.5):(n.precision=t+6,n.rounding=1,e=new n(1).minus(e).div(e.plus(1)).sqrt().atan(),n.precision=t,n.rounding=r,e.times(2))};h.inverseHyperbolicCosine=h.acosh=function(){var e,n,i=this,t=i.constructor;return i.lte(1)?new t(i.eq(1)?0:NaN):i.isFinite()?(e=t.precision,n=t.rounding,t.precision=e+Math.max(Math.abs(i.e),i.sd())+4,t.rounding=1,w=!1,i=i.times(i).minus(1).sqrt().plus(i),w=!0,t.precision=e,t.rounding=n,i.ln()):new t(i)};h.inverseHyperbolicSine=h.asinh=function(){var e,n,i=this,t=i.constructor;return!i.isFinite()||i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+2*Math.max(Math.abs(i.e),i.sd())+6,t.rounding=1,w=!1,i=i.times(i).plus(1).sqrt().plus(i),w=!0,t.precision=e,t.rounding=n,i.ln())};h.inverseHyperbolicTangent=h.atanh=function(){var e,n,i,t,r=this,s=r.constructor;return r.isFinite()?r.e>=0?new s(r.abs().eq(1)?r.s/0:r.isZero()?r:NaN):(e=s.precision,n=s.rounding,t=r.sd(),Math.max(t,e)<2*-r.e-1?p(new s(r),e,n,!0):(s.precision=i=t-r.e,r=k(r.plus(1),new s(1).minus(r),i+e,1),s.precision=e+4,s.rounding=1,r=r.ln(),s.precision=e,s.rounding=n,r.times(.5))):new s(NaN)};h.inverseSine=h.asin=function(){var e,n,i,t,r=this,s=r.constructor;return r.isZero()?new s(r):(n=r.abs().cmp(1),i=s.precision,t=s.rounding,n!==-1?n===0?(e=F(s,i+4,t).times(.5),e.s=r.s,e):new s(NaN):(s.precision=i+6,s.rounding=1,r=r.div(new s(1).minus(r.times(r)).sqrt().plus(1)).atan(),s.precision=i,s.rounding=t,r.times(2)))};h.inverseTangent=h.atan=function(){var e,n,i,t,r,s,o,u,c,f=this,l=f.constructor,a=l.precision,d=l.rounding;if(f.isFinite()){if(f.isZero())return new l(f);if(f.abs().eq(1)&&a+4<=Ce)return o=F(l,a+4,d).times(.25),o.s=f.s,o}else{if(!f.s)return new l(NaN);if(a+4<=Ce)return o=F(l,a+4,d).times(.5),o.s=f.s,o}for(l.precision=u=a+10,l.rounding=1,i=Math.min(28,u/m+2|0),e=i;e;--e)f=f.div(f.times(f).plus(1).sqrt().plus(1));for(w=!1,n=Math.ceil(u/m),t=1,c=f.times(f),o=new l(f),r=f;e!==-1;)if(r=r.times(c),s=o.minus(r.div(t+=2)),r=r.times(c),o=s.plus(r.div(t+=2)),o.d[n]!==void 0)for(e=n;o.d[e]===s.d[e]&&e--;);return i&&(o=o.times(2<this.d.length-2};h.isNaN=function(){return!this.s};h.isNegative=h.isNeg=function(){return this.s<0};h.isPositive=h.isPos=function(){return this.s>0};h.isZero=function(){return!!this.d&&this.d[0]===0};h.lessThan=h.lt=function(e){return this.cmp(e)<0};h.lessThanOrEqualTo=h.lte=function(e){return this.cmp(e)<1};h.logarithm=h.log=function(e){var n,i,t,r,s,o,u,c,f=this,l=f.constructor,a=l.precision,d=l.rounding,g=5;if(e==null)e=new l(10),n=!0;else{if(e=new l(e),i=e.d,e.s<0||!i||!i[0]||e.eq(1))return new l(NaN);n=e.eq(10)}if(i=f.d,f.s<0||!i||!i[0]||f.eq(1))return new l(i&&!i[0]?-1/0:f.s!=1?NaN:i?0:1/0);if(n)if(i.length>1)s=!0;else{for(r=i[0];r%10===0;)r/=10;s=r!==1}if(w=!1,u=a+g,o=B(f,u),t=n?ue(l,u+10):B(e,u),c=k(o,t,u,1),Q(c.d,r=a,d))do if(u+=10,o=B(f,u),t=n?ue(l,u+10):B(e,u),c=k(o,t,u,1),!s){+b(c.d).slice(r+1,r+15)+1==1e14&&(c=p(c,a+1,0));break}while(Q(c.d,r+=10,d));return w=!0,p(c,a,d)};h.minus=h.sub=function(e){var n,i,t,r,s,o,u,c,f,l,a,d,g=this,v=g.constructor;if(e=new v(e),!g.d||!e.d)return!g.s||!e.s?e=new v(NaN):g.d?e.s=-e.s:e=new v(e.d||g.s!==e.s?g:NaN),e;if(g.s!=e.s)return e.s=-e.s,g.plus(e);if(f=g.d,d=e.d,u=v.precision,c=v.rounding,!f[0]||!d[0]){if(d[0])e.s=-e.s;else if(f[0])e=new v(g);else return new v(c===3?-0:0);return w?p(e,u,c):e}if(i=R(e.e/m),l=R(g.e/m),f=f.slice(),s=l-i,s){for(a=s<0,a?(n=f,s=-s,o=d.length):(n=d,i=l,o=f.length),t=Math.max(Math.ceil(u/m),o)+2,s>t&&(s=t,n.length=1),n.reverse(),t=s;t--;)n.push(0);n.reverse()}else{for(t=f.length,o=d.length,a=t0;--t)f[o++]=0;for(t=d.length;t>s;){if(f[--t]o?s+1:o+1,r>o&&(r=o,i.length=1),i.reverse();r--;)i.push(0);i.reverse()}for(o=f.length,r=l.length,o-r<0&&(r=o,i=l,l=f,f=i),n=0;r;)n=(f[--r]=f[r]+l[r]+n)/D|0,f[r]%=D;for(n&&(f.unshift(n),++t),o=f.length;f[--o]==0;)f.pop();return e.d=f,e.e=ce(f,t),w?p(e,u,c):e};h.precision=h.sd=function(e){var n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error($+e);return i.d?(n=$e(i.d),e&&i.e+1>n&&(n=i.e+1)):n=NaN,n};h.round=function(){var e=this,n=e.constructor;return p(new n(e),e.e+1,n.rounding)};h.sine=h.sin=function(){var e,n,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+Math.max(i.e,i.sd())+m,t.rounding=1,i=mn(t,We(t,i)),t.precision=e,t.rounding=n,p(Z>2?i.neg():i,e,n,!0)):new t(NaN)};h.squareRoot=h.sqrt=function(){var e,n,i,t,r,s,o=this,u=o.d,c=o.e,f=o.s,l=o.constructor;if(f!==1||!u||!u[0])return new l(!f||f<0&&(!u||u[0])?NaN:u?o:1/0);for(w=!1,f=Math.sqrt(+o),f==0||f==1/0?(n=b(u),(n.length+c)%2==0&&(n+="0"),f=Math.sqrt(n),c=R((c+1)/2)-(c<0||c%2),f==1/0?n="5e"+c:(n=f.toExponential(),n=n.slice(0,n.indexOf("e")+1)+c),t=new l(n)):t=new l(f.toString()),i=(c=l.precision)+3;;)if(s=t,t=s.plus(k(o,s,i+2,1)).times(.5),b(s.d).slice(0,i)===(n=b(t.d)).slice(0,i))if(n=n.slice(i-3,i+1),n=="9999"||!r&&n=="4999"){if(!r&&(p(s,c+1,0),s.times(s).eq(o))){t=s;break}i+=4,r=1}else{(!+n||!+n.slice(1)&&n.charAt(0)=="5")&&(p(t,c+1,1),e=!t.times(t).eq(o));break}return w=!0,p(t,c,l.rounding,e)};h.tangent=h.tan=function(){var e,n,i=this,t=i.constructor;return i.isFinite()?i.isZero()?new t(i):(e=t.precision,n=t.rounding,t.precision=e+10,t.rounding=1,i=i.sin(),i.s=1,i=k(i,new t(1).minus(i.times(i)).sqrt(),e+10,0),t.precision=e,t.rounding=n,p(Z==2||Z==4?i.neg():i,e,n,!0)):new t(NaN)};h.times=h.mul=function(e){var n,i,t,r,s,o,u,c,f,l=this,a=l.constructor,d=l.d,g=(e=new a(e)).d;if(e.s*=l.s,!d||!d[0]||!g||!g[0])return new a(!e.s||d&&!d[0]&&!g||g&&!g[0]&&!d?NaN:!d||!g?e.s/0:e.s*0);for(i=R(l.e/m)+R(e.e/m),c=d.length,f=g.length,c=0;){for(n=0,r=c+t;r>t;)u=s[r]+g[t]*d[r-t-1]+n,s[r--]=u%D|0,n=u/D|0;s[r]=(s[r]+n)%D|0}for(;!s[--o];)s.pop();return n?++i:s.shift(),e.d=s,e.e=ce(s,i),w?p(e,a.precision,a.rounding):e};h.toBinary=function(e,n){return Pe(this,2,e,n)};h.toDecimalPlaces=h.toDP=function(e,n){var i=this,t=i.constructor;return i=new t(i),e===void 0?i:(q(e,0,H),n===void 0?n=t.rounding:q(n,0,8),p(i,e+i.e+1,n))};h.toExponential=function(e,n){var i,t=this,r=t.constructor;return e===void 0?i=L(t,!0):(q(e,0,H),n===void 0?n=r.rounding:q(n,0,8),t=p(new r(t),e+1,n),i=L(t,!0,e+1)),t.isNeg()&&!t.isZero()?"-"+i:i};h.toFixed=function(e,n){var i,t,r=this,s=r.constructor;return e===void 0?i=L(r):(q(e,0,H),n===void 0?n=s.rounding:q(n,0,8),t=p(new s(r),e+r.e+1,n),i=L(t,!1,e+t.e+1)),r.isNeg()&&!r.isZero()?"-"+i:i};h.toFraction=function(e){var n,i,t,r,s,o,u,c,f,l,a,d,g=this,v=g.d,N=g.constructor;if(!v)return new N(g);if(f=i=new N(1),t=c=new N(0),n=new N(t),s=n.e=$e(v)-g.e-1,o=s%m,n.d[0]=C(10,o<0?m+o:o),e==null)e=s>0?n:f;else{if(u=new N(e),!u.isInt()||u.lt(f))throw Error($+u);e=u.gt(n)?s>0?n:f:u}for(w=!1,u=new N(b(v)),l=N.precision,N.precision=s=v.length*m*2;a=k(u,n,0,1,1),r=i.plus(a.times(t)),r.cmp(e)!=1;)i=t,t=r,r=f,f=c.plus(a.times(r)),c=r,r=n,n=u.minus(a.times(r)),u=r;return r=k(e.minus(i),t,0,1,1),c=c.plus(r.times(f)),i=i.plus(r.times(t)),c.s=f.s=g.s,d=k(f,t,s,1).minus(g).abs().cmp(k(c,i,s,1).minus(g).abs())<1?[f,t]:[c,i],N.precision=l,w=!0,d};h.toHexadecimal=h.toHex=function(e,n){return Pe(this,16,e,n)};h.toNearest=function(e,n){var i=this,t=i.constructor;if(i=new t(i),e==null){if(!i.d)return i;e=new t(1),n=t.rounding}else{if(e=new t(e),n===void 0?n=t.rounding:q(n,0,8),!i.d)return e.s?i:e;if(!e.d)return e.s&&(e.s=i.s),e}return e.d[0]?(w=!1,i=k(i,e,0,n,1).times(e),w=!0,p(i)):(e.s=i.s,i=e),i};h.toNumber=function(){return+this};h.toOctal=function(e,n){return Pe(this,8,e,n)};h.toPower=h.pow=function(e){var n,i,t,r,s,o,u=this,c=u.constructor,f=+(e=new c(e));if(!u.d||!e.d||!u.d[0]||!e.d[0])return new c(C(+u,f));if(u=new c(u),u.eq(1))return u;if(t=c.precision,s=c.rounding,e.eq(1))return p(u,t,s);if(n=R(e.e/m),n>=e.d.length-1&&(i=f<0?-f:f)<=dn)return r=He(c,u,i,t),e.s<0?new c(1).div(r):p(r,t,s);if(o=u.s,o<0){if(nc.maxE+1||n0?o/0:0):(w=!1,c.rounding=u.s=1,i=Math.min(12,(n+"").length),r=be(e.times(B(u,t+i)),t),r.d&&(r=p(r,t+5,1),Q(r.d,t,s)&&(n=t+10,r=p(be(e.times(B(u,n+i)),n),n+5,1),+b(r.d).slice(t+1,t+15)+1==1e14&&(r=p(r,t+1,0)))),r.s=o,w=!0,c.rounding=s,p(r,t,s))};h.toPrecision=function(e,n){var i,t=this,r=t.constructor;return e===void 0?i=L(t,t.e<=r.toExpNeg||t.e>=r.toExpPos):(q(e,1,H),n===void 0?n=r.rounding:q(n,0,8),t=p(new r(t),e,n),i=L(t,e<=t.e||t.e<=r.toExpNeg,e)),t.isNeg()&&!t.isZero()?"-"+i:i};h.toSignificantDigits=h.toSD=function(e,n){var i=this,t=i.constructor;return e===void 0?(e=t.precision,n=t.rounding):(q(e,1,H),n===void 0?n=t.rounding:q(n,0,8)),p(new t(i),e,n)};h.toString=function(){var e=this,n=e.constructor,i=L(e,e.e<=n.toExpNeg||e.e>=n.toExpPos);return e.isNeg()&&!e.isZero()?"-"+i:i};h.truncated=h.trunc=function(){return p(new this.constructor(this),this.e+1,1)};h.valueOf=h.toJSON=function(){var e=this,n=e.constructor,i=L(e,e.e<=n.toExpNeg||e.e>=n.toExpPos);return e.isNeg()?"-"+i:i};function b(e){var n,i,t,r=e.length-1,s="",o=e[0];if(r>0){for(s+=o,n=1;ni)throw Error($+e)}function Q(e,n,i,t){var r,s,o,u;for(s=e[0];s>=10;s/=10)--n;return--n<0?(n+=m,r=0):(r=Math.ceil((n+1)/m),n%=m),s=C(10,m-n),u=e[r]%s|0,t==null?n<3?(n==0?u=u/100|0:n==1&&(u=u/10|0),o=i<4&&u==99999||i>3&&u==49999||u==5e4||u==0):o=(i<4&&u+1==s||i>3&&u+1==s/2)&&(e[r+1]/s/100|0)==C(10,n-2)-1||(u==s/2||u==0)&&(e[r+1]/s/100|0)==0:n<4?(n==0?u=u/1e3|0:n==1?u=u/100|0:n==2&&(u=u/10|0),o=(t||i<4)&&u==9999||!t&&i>3&&u==4999):o=((t||i<4)&&u+1==s||!t&&i>3&&u+1==s/2)&&(e[r+1]/s/1e3|0)==C(10,n-3)-1,o}function te(e,n,i){for(var t,r=[0],s,o=0,u=e.length;oi-1&&(r[t+1]===void 0&&(r[t+1]=0),r[t+1]+=r[t]/i|0,r[t]%=i)}return r.reverse()}function pn(e,n){var i,t,r;if(n.isZero())return n;t=n.d.length,t<32?(i=Math.ceil(t/3),r=(1/le(4,i)).toString()):(i=16,r="2.3283064365386962890625e-10"),e.precision+=i,n=j(e,1,n.times(r),new e(1));for(var s=i;s--;){var o=n.times(n);n=o.times(o).minus(o).times(8).plus(1)}return e.precision-=i,n}var k=function(){function e(t,r,s){var o,u=0,c=t.length;for(t=t.slice();c--;)o=t[c]*r+u,t[c]=o%s|0,u=o/s|0;return u&&t.unshift(u),t}function n(t,r,s,o){var u,c;if(s!=o)c=s>o?1:-1;else for(u=c=0;ur[u]?1:-1;break}return c}function i(t,r,s,o){for(var u=0;s--;)t[s]-=u,u=t[s]1;)t.shift()}return function(t,r,s,o,u,c){var f,l,a,d,g,v,N,A,M,_,E,P,x,I,ae,z,W,de,T,y,ee=t.constructor,he=t.s==r.s?1:-1,O=t.d,S=r.d;if(!O||!O[0]||!S||!S[0])return new ee(!t.s||!r.s||(O?S&&O[0]==S[0]:!S)?NaN:O&&O[0]==0||!S?he*0:he/0);for(c?(g=1,l=t.e-r.e):(c=D,g=m,l=R(t.e/g)-R(r.e/g)),T=S.length,W=O.length,M=new ee(he),_=M.d=[],a=0;S[a]==(O[a]||0);a++);if(S[a]>(O[a]||0)&&l--,s==null?(I=s=ee.precision,o=ee.rounding):u?I=s+(t.e-r.e)+1:I=s,I<0)_.push(1),v=!0;else{if(I=I/g+2|0,a=0,T==1){for(d=0,S=S[0],I++;(a1&&(S=e(S,d,c),O=e(O,d,c),T=S.length,W=O.length),z=T,E=O.slice(0,T),P=E.length;P=c/2&&++de;do d=0,f=n(S,E,T,P),f<0?(x=E[0],T!=P&&(x=x*c+(E[1]||0)),d=x/de|0,d>1?(d>=c&&(d=c-1),N=e(S,d,c),A=N.length,P=E.length,f=n(N,E,A,P),f==1&&(d--,i(N,T=10;d/=10)a++;M.e=a+l*g-1,p(M,u?s+M.e+1:s,o,v)}return M}}();function p(e,n,i,t){var r,s,o,u,c,f,l,a,d,g=e.constructor;e:if(n!=null){if(a=e.d,!a)return e;for(r=1,u=a[0];u>=10;u/=10)r++;if(s=n-r,s<0)s+=m,o=n,l=a[d=0],c=l/C(10,r-o-1)%10|0;else if(d=Math.ceil((s+1)/m),u=a.length,d>=u)if(t){for(;u++<=d;)a.push(0);l=c=0,r=1,s%=m,o=s-m+1}else break e;else{for(l=u=a[d],r=1;u>=10;u/=10)r++;s%=m,o=s-m+r,c=o<0?0:l/C(10,r-o-1)%10|0}if(t=t||n<0||a[d+1]!==void 0||(o<0?l:l%C(10,r-o-1)),f=i<4?(c||t)&&(i==0||i==(e.s<0?3:2)):c>5||c==5&&(i==4||t||i==6&&(s>0?o>0?l/C(10,r-o):0:a[d-1])%10&1||i==(e.s<0?8:7)),n<1||!a[0])return a.length=0,f?(n-=e.e+1,a[0]=C(10,(m-n%m)%m),e.e=-n||0):a[0]=e.e=0,e;if(s==0?(a.length=d,u=1,d--):(a.length=d+1,u=C(10,m-s),a[d]=o>0?(l/C(10,r-o)%C(10,o)|0)*u:0),f)for(;;)if(d==0){for(s=1,o=a[0];o>=10;o/=10)s++;for(o=a[0]+=u,u=1;o>=10;o/=10)u++;s!=u&&(e.e++,a[0]==D&&(a[0]=1));break}else{if(a[d]+=u,a[d]!=D)break;a[d--]=0,u=1}for(s=a.length;a[--s]===0;)a.pop()}return w&&(e.e>g.maxE?(e.d=null,e.e=NaN):e.e0?s=s.charAt(0)+"."+s.slice(1)+U(t):o>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(e.e<0?"e":"e+")+e.e):r<0?(s="0."+U(-r-1)+s,i&&(t=i-o)>0&&(s+=U(t))):r>=o?(s+=U(r+1-o),i&&(t=i-r-1)>0&&(s=s+"."+U(t))):((t=r+1)0&&(r+1===o&&(s+="."),s+=U(t))),s}function ce(e,n){var i=e[0];for(n*=m;i>=10;i/=10)n++;return n}function ue(e,n,i){if(n>hn)throw w=!0,i&&(e.precision=i),Error(Ie);return p(new e(se),n,1,!0)}function F(e,n,i){if(n>Ce)throw Error(Ie);return p(new e(oe),n,i,!0)}function $e(e){var n=e.length-1,i=n*m+1;if(n=e[n],n){for(;n%10==0;n/=10)i--;for(n=e[0];n>=10;n/=10)i++}return i}function U(e){for(var n="";e--;)n+="0";return n}function He(e,n,i,t){var r,s=new e(1),o=Math.ceil(t/m+4);for(w=!1;;){if(i%2&&(s=s.times(n),De(s.d,o)&&(r=!0)),i=R(i/2),i===0){i=s.d.length-1,r&&s.d[i]===0&&++s.d[i];break}n=n.times(n),De(n.d,o)}return w=!0,s}function Te(e){return e.d[e.d.length-1]&1}function Ve(e,n,i){for(var t,r,s=new e(n[0]),o=0;++o17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(n==null?(w=!1,c=v):c=n,u=new d(.03125);e.e>-2;)e=e.times(u),a+=5;for(t=Math.log(C(2,a))/Math.LN10*2+5|0,c+=t,i=s=o=new d(1),d.precision=c;;){if(s=p(s.times(e),c,1),i=i.times(++l),u=o.plus(k(s,i,c,1)),b(u.d).slice(0,c)===b(o.d).slice(0,c)){for(r=a;r--;)o=p(o.times(o),c,1);if(n==null)if(f<3&&Q(o.d,c-t,g,f))d.precision=c+=10,i=s=u=new d(1),l=0,f++;else return p(o,d.precision=v,g,w=!0);else return d.precision=v,o}o=u}}function B(e,n){var i,t,r,s,o,u,c,f,l,a,d,g=1,v=10,N=e,A=N.d,M=N.constructor,_=M.rounding,E=M.precision;if(N.s<0||!A||!A[0]||!N.e&&A[0]==1&&A.length==1)return new M(A&&!A[0]?-1/0:N.s!=1?NaN:A?0:N);if(n==null?(w=!1,l=E):l=n,M.precision=l+=v,i=b(A),t=i.charAt(0),Math.abs(s=N.e)<15e14){for(;t<7&&t!=1||t==1&&i.charAt(1)>3;)N=N.times(e),i=b(N.d),t=i.charAt(0),g++;s=N.e,t>1?(N=new M("0."+i),s++):N=new M(t+"."+i.slice(1))}else return f=ue(M,l+2,E).times(s+""),N=B(new M(t+"."+i.slice(1)),l-v).plus(f),M.precision=E,n==null?p(N,E,_,w=!0):N;for(a=N,c=o=N=k(N.minus(1),N.plus(1),l,1),d=p(N.times(N),l,1),r=3;;){if(o=p(o.times(d),l,1),f=c.plus(k(o,new M(r),l,1)),b(f.d).slice(0,l)===b(c.d).slice(0,l))if(c=c.times(2),s!==0&&(c=c.plus(ue(M,l+2,E).times(s+""))),c=k(c,new M(g),l,1),n==null)if(Q(c.d,l-v,_,u))M.precision=l+=v,f=o=N=k(a.minus(1),a.plus(1),l,1),d=p(N.times(N),l,1),r=u=1;else return p(c,M.precision=E,_,w=!0);else return M.precision=E,c;c=f,r+=2}}function je(e){return String(e.s*e.s/0)}function re(e,n){var i,t,r;for((i=n.indexOf("."))>-1&&(n=n.replace(".","")),(t=n.search(/e/i))>0?(i<0&&(i=t),i+=+n.slice(t+1),n=n.substring(0,t)):i<0&&(i=n.length),t=0;n.charCodeAt(t)===48;t++);for(r=n.length;n.charCodeAt(r-1)===48;--r);if(n=n.slice(t,r),n){if(r-=t,e.e=i=i-t-1,e.d=[],t=(i+1)%m,i<0&&(t+=m),te.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(n=n.replace(/(\d)_(?=\d)/g,"$1"),Be.test(n))return re(e,n)}else if(n==="Infinity"||n==="NaN")return+n||(e.s=NaN),e.e=NaN,e.d=null,e;if(ln.test(n))i=16,n=n.toLowerCase();else if(cn.test(n))i=2;else if(an.test(n))i=8;else throw Error($+n);for(s=n.search(/p/i),s>0?(c=+n.slice(s+1),n=n.substring(2,s)):n=n.slice(2),s=n.indexOf("."),o=s>=0,t=e.constructor,o&&(n=n.replace(".",""),u=n.length,s=u-s,r=He(t,new t(i),s,s*2)),f=te(n,i,D),l=f.length-1,s=l;f[s]===0;--s)f.pop();return s<0?new t(e.s*0):(e.e=ce(f,l),e.d=f,w=!1,o&&(e=k(e,r,u*4)),c&&(e=e.times(Math.abs(c)<54?C(2,c):Y.pow(2,c))),w=!0,e)}function mn(e,n){var i,t=n.d.length;if(t<3)return n.isZero()?n:j(e,2,n,n);i=1.4*Math.sqrt(t),i=i>16?16:i|0,n=n.times(1/le(5,i)),n=j(e,2,n,n);for(var r,s=new e(5),o=new e(16),u=new e(20);i--;)r=n.times(n),n=n.times(s.plus(r.times(o.times(r).minus(u))));return n}function j(e,n,i,t,r){var s,o,u,c,f=1,l=e.precision,a=Math.ceil(l/m);for(w=!1,c=i.times(i),u=new e(t);;){if(o=k(u.times(c),new e(n++*n++),l,1),u=r?t.plus(o):t.minus(o),t=k(o.times(c),new e(n++*n++),l,1),o=u.plus(t),o.d[a]!==void 0){for(s=a;o.d[s]===u.d[s]&&s--;);if(s==-1)break}s=u,u=t,t=o,o=s,f++}return w=!0,o.d.length=a+1,o}function le(e,n){for(var i=e;--n;)i*=e;return i}function We(e,n){var i,t=n.s<0,r=F(e,e.precision,1),s=r.times(.5);if(n=n.abs(),n.lte(s))return Z=t?4:1,n;if(i=n.divToInt(r),i.isZero())Z=t?3:2;else{if(n=n.minus(i.times(r)),n.lte(s))return Z=Te(i)?t?2:3:t?4:1,n;Z=Te(i)?t?1:4:t?3:2}return n.minus(r).abs()}function Pe(e,n,i,t){var r,s,o,u,c,f,l,a,d,g=e.constructor,v=i!==void 0;if(v?(q(i,1,H),t===void 0?t=g.rounding:q(t,0,8)):(i=g.precision,t=g.rounding),!e.isFinite())l=je(e);else{for(l=L(e),o=l.indexOf("."),v?(r=2,n==16?i=i*4-3:n==8&&(i=i*3-2)):r=n,o>=0&&(l=l.replace(".",""),d=new g(1),d.e=l.length-o,d.d=te(L(d),10,r),d.e=d.d.length),a=te(l,10,r),s=c=a.length;a[--c]==0;)a.pop();if(!a[0])l=v?"0p+0":"0";else{if(o<0?s--:(e=new g(e),e.d=a,e.e=s,e=k(e,d,i,t,0,r),a=e.d,s=e.e,f=Le),o=a[i],u=r/2,f=f||a[i+1]!==void 0,f=t<4?(o!==void 0||f)&&(t===0||t===(e.s<0?3:2)):o>u||o===u&&(t===4||f||t===6&&a[i-1]&1||t===(e.s<0?8:7)),a.length=i,f)for(;++a[--i]>r-1;)a[i]=0,i||(++s,a.unshift(1));for(c=a.length;!a[c-1];--c);for(o=0,l="";o1)if(n==16||n==8){for(o=n==16?4:3,--c;c%o;c++)l+="0";for(a=te(l,r,n),c=a.length;!a[c-1];--c);for(o=1,l="1.";oc)for(s-=c;s--;)l+="0";else sn)return e.length=n,!0}function wn(e){return new this(e).abs()}function Nn(e){return new this(e).acos()}function vn(e){return new this(e).acosh()}function En(e,n){return new this(e).plus(n)}function kn(e){return new this(e).asin()}function Sn(e){return new this(e).asinh()}function Mn(e){return new this(e).atan()}function Cn(e){return new this(e).atanh()}function bn(e,n){e=new this(e),n=new this(n);var i,t=this.precision,r=this.rounding,s=t+4;return!e.s||!n.s?i=new this(NaN):!e.d&&!n.d?(i=F(this,s,1).times(n.s>0?.25:.75),i.s=e.s):!n.d||e.isZero()?(i=n.s<0?F(this,t,r):new this(0),i.s=e.s):!e.d||n.isZero()?(i=F(this,s,1).times(.5),i.s=e.s):n.s<0?(this.precision=s,this.rounding=1,i=this.atan(k(e,n,s,1)),n=F(this,s,1),this.precision=t,this.rounding=r,i=e.s<0?i.minus(n):i.plus(n)):i=this.atan(k(e,n,s,1)),i}function Pn(e){return new this(e).cbrt()}function On(e){return p(e=new this(e),e.e+1,2)}function Rn(e,n,i){return new this(e).clamp(n,i)}function An(e){if(!e||typeof e!="object")throw Error(fe+"Object expected");var n,i,t,r=e.defaults===!0,s=["precision",1,H,"rounding",0,8,"toExpNeg",-V,0,"toExpPos",0,V,"maxE",0,V,"minE",-V,0,"modulo",0,9];for(n=0;n=s[n+1]&&t<=s[n+2])this[i]=t;else throw Error($+i+": "+t);if(i="crypto",r&&(this[i]=Me[i]),(t=e[i])!==void 0)if(t===!0||t===!1||t===0||t===1)if(t)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[i]=!0;else throw Error(Ze);else this[i]=!1;else throw Error($+i+": "+t);return this}function qn(e){return new this(e).cos()}function _n(e){return new this(e).cosh()}function Ge(e){var n,i,t;function r(s){var o,u,c,f=this;if(!(f instanceof r))return new r(s);if(f.constructor=r,Fe(s)){f.s=s.s,w?!s.d||s.e>r.maxE?(f.e=NaN,f.d=null):s.e=10;u/=10)o++;w?o>r.maxE?(f.e=NaN,f.d=null):o=429e7?n[s]=crypto.getRandomValues(new Uint32Array(1))[0]:u[s++]=r%1e7;else if(crypto.randomBytes){for(n=crypto.randomBytes(t*=4);s=214e7?crypto.randomBytes(4).copy(n,s):(u.push(r%1e7),s+=4);s=t/4}else throw Error(Ze);else for(;s=10;r/=10)t++;t + * MIT Licence + *) +*/ +//# sourceMappingURL=index-browser.js.map diff --git a/packages/identity-prisma-client/runtime/library.d.ts b/packages/identity-prisma-client/runtime/library.d.ts new file mode 100644 index 0000000..ffaec81 --- /dev/null +++ b/packages/identity-prisma-client/runtime/library.d.ts @@ -0,0 +1,3982 @@ +/** + * @param this + */ +declare function $extends(this: Client, extension: ExtensionArgs | ((client: Client) => Client)): Client; + +declare type AccelerateEngineConfig = { + inlineSchema: EngineConfig['inlineSchema']; + inlineSchemaHash: EngineConfig['inlineSchemaHash']; + env: EngineConfig['env']; + generator?: { + previewFeatures: string[]; + }; + inlineDatasources: EngineConfig['inlineDatasources']; + overrideDatasources: EngineConfig['overrideDatasources']; + clientVersion: EngineConfig['clientVersion']; + engineVersion: EngineConfig['engineVersion']; + logEmitter: EngineConfig['logEmitter']; + logQueries?: EngineConfig['logQueries']; + logLevel?: EngineConfig['logLevel']; + tracingHelper: EngineConfig['tracingHelper']; + accelerateUtils?: AccelerateUtils; +}; + +/** + * A stripped down interface of `fetch` that `@prisma/extension-accelerate` + * relies on. It must be in sync with the corresponding definition in the + * Accelerate extension. + * + * This is the actual interface exposed by the extension. We can't use the + * custom fetch function provided by it as normal fetch because the API is + * different. Notably, `headers` must be an object and not a `Headers` + * instance, and `url` must be a `string` and not a `URL`. + * + * The return type is `Response` but we can't specify this in an exported type + * because it would end up referencing external types from `@types/node` or DOM + * which can fail typechecking depending on TypeScript configuration in a user's + * project. + */ +declare type AccelerateExtensionFetch = (url: string, options: { + body?: string; + method?: string; + headers: Record; +}) => Promise; + +declare type AccelerateExtensionFetchDecorator = (fetch: AccelerateExtensionFetch) => AccelerateExtensionFetch; + +declare type AccelerateUtils = EngineConfig['accelerateUtils']; + +export declare type Action = keyof typeof DMMF_2.ModelAction | 'executeRaw' | 'queryRaw' | 'runCommandRaw'; + +declare type ActiveConnectorType = Exclude; + +/** + * An interface that exposes some basic information about the + * adapter like its name and provider type. + */ +declare interface AdapterInfo { + readonly provider: Provider; + readonly adapterName: (typeof officialPrismaAdapters)[number] | (string & {}); +} + +export declare type Aggregate = '_count' | '_max' | '_min' | '_avg' | '_sum'; + +export declare type AllModelsToStringIndex, K extends PropertyKey> = Args extends { + [P in K]: { + $allModels: infer AllModels; + }; +} ? { + [P in K]: Record; +} : {}; + +declare class AnyNull extends NullTypesEnumValue { + #private; +} + +export declare type ApplyOmit = Compute<{ + [K in keyof T as OmitValue extends true ? never : K]: T[K]; +}>; + +export declare type Args = T extends { + [K: symbol]: { + types: { + operations: { + [K in F]: { + args: any; + }; + }; + }; + }; +} ? T[symbol]['types']['operations'][F]['args'] : any; + +export declare type Args_3 = Args; + +declare type ArgScalarType = 'string' | 'int' | 'bigint' | 'float' | 'decimal' | 'boolean' | 'enum' | 'uuid' | 'json' | 'datetime' | 'bytes' | 'unknown'; + +declare type ArgType = { + scalarType: ArgScalarType; + dbType?: string; + arity: Arity; +}; + +declare type Arity = 'scalar' | 'list'; + +/** + * Attributes is a map from string to attribute values. + * + * Note: only the own enumerable keys are counted as valid attribute keys. + */ +declare interface Attributes { + [attributeKey: string]: AttributeValue | undefined; +} + +/** + * Attribute values may be any non-nullish primitive value except an object. + * + * null or undefined attribute values are invalid and will result in undefined behavior. + */ +declare type AttributeValue = string | number | boolean | Array | Array | Array; + +export declare type BaseDMMF = { + readonly datamodel: Omit; +}; + +declare type BatchArgs = { + queries: BatchQuery[]; + transaction?: { + isolationLevel?: IsolationLevel_2; + }; +}; + +declare type BatchInternalParams = { + requests: RequestParams[]; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare type BatchQuery = { + model: string | undefined; + operation: string; + args: JsArgs | RawQueryArgs; +}; + +declare type BatchQueryEngineResult = QueryEngineResultData | Error; + +declare type BatchQueryOptionsCb = (args: BatchQueryOptionsCbArgs) => Promise; + +declare type BatchQueryOptionsCbArgs = { + args: BatchArgs; + query: (args: BatchArgs, __internalParams?: BatchInternalParams) => Promise; + __internalParams: BatchInternalParams; +}; + +declare type BatchResponse = MultiBatchResponse | CompactedBatchResponse; + +declare type BatchTransactionOptions = { + isolationLevel?: Transaction_2.IsolationLevel; +}; + +declare interface BinaryTargetsEnvValue { + fromEnvVar: string | null; + value: string; + native?: boolean; +} + +/** + * Equivalent to `Uint8Array` before TypeScript 5.7, and `Uint8Array` in TypeScript 5.7 and beyond. + */ +export declare type Bytes = ReturnType; + +export declare type Call = (F & { + params: P; +})['returns']; + +declare interface CallSite { + getLocation(): LocationInFile | null; +} + +export declare type Cast = A extends W ? A : W; + +declare type Client = ReturnType extends new () => infer T ? T : never; + +export declare type ClientArg = { + [MethodName in string]: unknown; +}; + +export declare type ClientArgs = { + client: ClientArg; +}; + +export declare type ClientBuiltInProp = keyof DynamicClientExtensionThisBuiltin; + +export declare type ClientOptionDef = undefined | { + [K in string]: any; +}; + +export declare type ClientOtherOps = { + $queryRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise; + $queryRawTyped(query: TypedSql): PrismaPromise; + $queryRawUnsafe(query: string, ...values: any[]): PrismaPromise; + $executeRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise; + $executeRawUnsafe(query: string, ...values: any[]): PrismaPromise; + $runCommandRaw(command: InputJsonObject): PrismaPromise; +}; + +declare type ColumnType = (typeof ColumnTypeEnum)[keyof typeof ColumnTypeEnum]; + +declare const ColumnTypeEnum: { + readonly Int32: 0; + readonly Int64: 1; + readonly Float: 2; + readonly Double: 3; + readonly Numeric: 4; + readonly Boolean: 5; + readonly Character: 6; + readonly Text: 7; + readonly Date: 8; + readonly Time: 9; + readonly DateTime: 10; + readonly Json: 11; + readonly Enum: 12; + readonly Bytes: 13; + readonly Set: 14; + readonly Uuid: 15; + readonly Int32Array: 64; + readonly Int64Array: 65; + readonly FloatArray: 66; + readonly DoubleArray: 67; + readonly NumericArray: 68; + readonly BooleanArray: 69; + readonly CharacterArray: 70; + readonly TextArray: 71; + readonly DateArray: 72; + readonly TimeArray: 73; + readonly DateTimeArray: 74; + readonly JsonArray: 75; + readonly EnumArray: 76; + readonly BytesArray: 77; + readonly UuidArray: 78; + readonly UnknownNumber: 128; +}; + +declare type CompactedBatchResponse = { + type: 'compacted'; + plan: QueryPlanNode; + arguments: Record[]; + nestedSelection: string[]; + keys: string[]; + expectNonEmpty: boolean; +}; + +declare type CompilerWasmLoadingConfig = { + /** + * WASM-bindgen runtime for corresponding module + */ + getRuntime: () => Promise<{ + __wbg_set_wasm(exports: unknown): void; + QueryCompiler: QueryCompilerConstructor; + }>; + /** + * Loads the raw wasm module for the wasm compiler engine. This configuration is + * generated specifically for each type of client, eg. Node.js client and Edge + * clients will have different implementations. + * @remarks this is a callback on purpose, we only load the wasm if needed. + * @remarks only used by ClientEngine + */ + getQueryCompilerWasmModule: () => Promise; +}; + +export declare type Compute = T extends Function ? T : { + [K in keyof T]: T[K]; +} & unknown; + +export declare type ComputeDeep = T extends Function ? T : { + [K in keyof T]: ComputeDeep; +} & unknown; + +declare type ComputedField = { + name: string; + needs: string[]; + compute: ResultArgsFieldCompute; +}; + +declare type ComputedFieldsMap = { + [fieldName: string]: ComputedField; +}; + +declare type ConnectionInfo = { + schemaName?: string; + maxBindValues?: number; + supportsRelationJoins: boolean; +}; + +declare type ConnectorType = 'mysql' | 'mongodb' | 'sqlite' | 'postgresql' | 'postgres' | 'prisma+postgres' | 'sqlserver' | 'cockroachdb'; + +declare interface Context { + /** + * Get a value from the context. + * + * @param key key which identifies a context value + */ + getValue(key: symbol): unknown; + /** + * Create a new context which inherits from this context and has + * the given key set to the given value. + * + * @param key context key for which to set the value + * @param value value to set for the given key + */ + setValue(key: symbol, value: unknown): Context; + /** + * Return a new context which inherits from this context but does + * not contain a value for the given key. + * + * @param key context key for which to clear a value + */ + deleteValue(key: symbol): Context; +} + +declare type Context_2 = T extends { + [K: symbol]: { + ctx: infer C; + }; +} ? C & T & { + /** + * @deprecated Use `$name` instead. + */ + name?: string; + $name?: string; + $parent?: unknown; +} : T & { + /** + * @deprecated Use `$name` instead. + */ + name?: string; + $name?: string; + $parent?: unknown; +}; + +export declare type Count = { + [K in keyof O]: Count; +} & {}; + +export declare function createParam(name: string): Param; + +declare class DataLoader { + private options; + batches: { + [key: string]: Job[]; + }; + private tickActive; + constructor(options: DataLoaderOptions); + request(request: T): Promise; + private dispatchBatches; + get [Symbol.toStringTag](): string; +} + +declare type DataLoaderOptions = { + singleLoader: (request: T) => Promise; + batchLoader: (request: T[]) => Promise; + batchBy: (request: T) => string | undefined; + batchOrder: (requestA: T, requestB: T) => number; +}; + +declare type Datamodel = ReadonlyDeep_2<{ + models: Model[]; + enums: DatamodelEnum[]; + types: Model[]; + indexes: Index[]; +}>; + +declare type DatamodelEnum = ReadonlyDeep_2<{ + name: string; + values: EnumValue[]; + dbName?: string | null; + documentation?: string; +}>; + +declare function datamodelEnumToSchemaEnum(datamodelEnum: DatamodelEnum): SchemaEnum; + +declare type DataRule = { + type: 'rowCountEq'; + args: number; +} | { + type: 'rowCountNeq'; + args: number; +} | { + type: 'affectedRowCountEq'; + args: number; +} | { + type: 'never'; +}; + +declare type Datasource = { + url?: string; +}; + +declare type Datasources = { + [name in string]: Datasource; +}; + +declare class DbNull extends NullTypesEnumValue { + #private; +} + +export declare const Debug: typeof debugCreate & { + enable(namespace: any): void; + disable(): any; + enabled(namespace: string): boolean; + log: (...args: string[]) => void; + formatters: {}; +}; + +/** + * Create a new debug instance with the given namespace. + * + * @example + * ```ts + * import Debug from '@prisma/debug' + * const debug = Debug('prisma:client') + * debug('Hello World') + * ``` + */ +declare function debugCreate(namespace: string): ((...args: any[]) => void) & { + color: string; + enabled: boolean; + namespace: string; + log: (...args: string[]) => void; + extend: () => void; +}; + +export declare function Decimal(n: Decimal.Value): Decimal; + +export declare namespace Decimal { + export type Constructor = typeof Decimal; + export type Instance = Decimal; + export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; + export type Modulo = Rounding | 9; + export type Value = string | number | Decimal; + + // http://mikemcl.github.io/decimal.js/#constructor-properties + export interface Config { + precision?: number; + rounding?: Rounding; + toExpNeg?: number; + toExpPos?: number; + minE?: number; + maxE?: number; + crypto?: boolean; + modulo?: Modulo; + defaults?: boolean; + } +} + +export declare class Decimal { + readonly d: number[]; + readonly e: number; + readonly s: number; + + constructor(n: Decimal.Value); + + absoluteValue(): Decimal; + abs(): Decimal; + + ceil(): Decimal; + + clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal; + clamp(min: Decimal.Value, max: Decimal.Value): Decimal; + + comparedTo(n: Decimal.Value): number; + cmp(n: Decimal.Value): number; + + cosine(): Decimal; + cos(): Decimal; + + cubeRoot(): Decimal; + cbrt(): Decimal; + + decimalPlaces(): number; + dp(): number; + + dividedBy(n: Decimal.Value): Decimal; + div(n: Decimal.Value): Decimal; + + dividedToIntegerBy(n: Decimal.Value): Decimal; + divToInt(n: Decimal.Value): Decimal; + + equals(n: Decimal.Value): boolean; + eq(n: Decimal.Value): boolean; + + floor(): Decimal; + + greaterThan(n: Decimal.Value): boolean; + gt(n: Decimal.Value): boolean; + + greaterThanOrEqualTo(n: Decimal.Value): boolean; + gte(n: Decimal.Value): boolean; + + hyperbolicCosine(): Decimal; + cosh(): Decimal; + + hyperbolicSine(): Decimal; + sinh(): Decimal; + + hyperbolicTangent(): Decimal; + tanh(): Decimal; + + inverseCosine(): Decimal; + acos(): Decimal; + + inverseHyperbolicCosine(): Decimal; + acosh(): Decimal; + + inverseHyperbolicSine(): Decimal; + asinh(): Decimal; + + inverseHyperbolicTangent(): Decimal; + atanh(): Decimal; + + inverseSine(): Decimal; + asin(): Decimal; + + inverseTangent(): Decimal; + atan(): Decimal; + + isFinite(): boolean; + + isInteger(): boolean; + isInt(): boolean; + + isNaN(): boolean; + + isNegative(): boolean; + isNeg(): boolean; + + isPositive(): boolean; + isPos(): boolean; + + isZero(): boolean; + + lessThan(n: Decimal.Value): boolean; + lt(n: Decimal.Value): boolean; + + lessThanOrEqualTo(n: Decimal.Value): boolean; + lte(n: Decimal.Value): boolean; + + logarithm(n?: Decimal.Value): Decimal; + log(n?: Decimal.Value): Decimal; + + minus(n: Decimal.Value): Decimal; + sub(n: Decimal.Value): Decimal; + + modulo(n: Decimal.Value): Decimal; + mod(n: Decimal.Value): Decimal; + + naturalExponential(): Decimal; + exp(): Decimal; + + naturalLogarithm(): Decimal; + ln(): Decimal; + + negated(): Decimal; + neg(): Decimal; + + plus(n: Decimal.Value): Decimal; + add(n: Decimal.Value): Decimal; + + precision(includeZeros?: boolean): number; + sd(includeZeros?: boolean): number; + + round(): Decimal; + + sine() : Decimal; + sin() : Decimal; + + squareRoot(): Decimal; + sqrt(): Decimal; + + tangent() : Decimal; + tan() : Decimal; + + times(n: Decimal.Value): Decimal; + mul(n: Decimal.Value) : Decimal; + + toBinary(significantDigits?: number): string; + toBinary(significantDigits: number, rounding: Decimal.Rounding): string; + + toDecimalPlaces(decimalPlaces?: number): Decimal; + toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + toDP(decimalPlaces?: number): Decimal; + toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal; + + toExponential(decimalPlaces?: number): string; + toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFixed(decimalPlaces?: number): string; + toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string; + + toFraction(max_denominator?: Decimal.Value): Decimal[]; + + toHexadecimal(significantDigits?: number): string; + toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string; + toHex(significantDigits?: number): string; + toHex(significantDigits: number, rounding?: Decimal.Rounding): string; + + toJSON(): string; + + toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal; + + toNumber(): number; + + toOctal(significantDigits?: number): string; + toOctal(significantDigits: number, rounding: Decimal.Rounding): string; + + toPower(n: Decimal.Value): Decimal; + pow(n: Decimal.Value): Decimal; + + toPrecision(significantDigits?: number): string; + toPrecision(significantDigits: number, rounding: Decimal.Rounding): string; + + toSignificantDigits(significantDigits?: number): Decimal; + toSignificantDigits(significantDigits: number, rounding: Decimal.Rounding): Decimal; + toSD(significantDigits?: number): Decimal; + toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal; + + toString(): string; + + truncated(): Decimal; + trunc(): Decimal; + + valueOf(): string; + + static abs(n: Decimal.Value): Decimal; + static acos(n: Decimal.Value): Decimal; + static acosh(n: Decimal.Value): Decimal; + static add(x: Decimal.Value, y: Decimal.Value): Decimal; + static asin(n: Decimal.Value): Decimal; + static asinh(n: Decimal.Value): Decimal; + static atan(n: Decimal.Value): Decimal; + static atanh(n: Decimal.Value): Decimal; + static atan2(y: Decimal.Value, x: Decimal.Value): Decimal; + static cbrt(n: Decimal.Value): Decimal; + static ceil(n: Decimal.Value): Decimal; + static clamp(n: Decimal.Value, min: Decimal.Value, max: Decimal.Value): Decimal; + static clone(object?: Decimal.Config): Decimal.Constructor; + static config(object: Decimal.Config): Decimal.Constructor; + static cos(n: Decimal.Value): Decimal; + static cosh(n: Decimal.Value): Decimal; + static div(x: Decimal.Value, y: Decimal.Value): Decimal; + static exp(n: Decimal.Value): Decimal; + static floor(n: Decimal.Value): Decimal; + static hypot(...n: Decimal.Value[]): Decimal; + static isDecimal(object: any): object is Decimal; + static ln(n: Decimal.Value): Decimal; + static log(n: Decimal.Value, base?: Decimal.Value): Decimal; + static log2(n: Decimal.Value): Decimal; + static log10(n: Decimal.Value): Decimal; + static max(...n: Decimal.Value[]): Decimal; + static min(...n: Decimal.Value[]): Decimal; + static mod(x: Decimal.Value, y: Decimal.Value): Decimal; + static mul(x: Decimal.Value, y: Decimal.Value): Decimal; + static noConflict(): Decimal.Constructor; // Browser only + static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal; + static random(significantDigits?: number): Decimal; + static round(n: Decimal.Value): Decimal; + static set(object: Decimal.Config): Decimal.Constructor; + static sign(n: Decimal.Value): number; + static sin(n: Decimal.Value): Decimal; + static sinh(n: Decimal.Value): Decimal; + static sqrt(n: Decimal.Value): Decimal; + static sub(x: Decimal.Value, y: Decimal.Value): Decimal; + static sum(...n: Decimal.Value[]): Decimal; + static tan(n: Decimal.Value): Decimal; + static tanh(n: Decimal.Value): Decimal; + static trunc(n: Decimal.Value): Decimal; + + static readonly default?: Decimal.Constructor; + static readonly Decimal?: Decimal.Constructor; + + static readonly precision: number; + static readonly rounding: Decimal.Rounding; + static readonly toExpNeg: number; + static readonly toExpPos: number; + static readonly minE: number; + static readonly maxE: number; + static readonly crypto: boolean; + static readonly modulo: Decimal.Modulo; + + static readonly ROUND_UP: 0; + static readonly ROUND_DOWN: 1; + static readonly ROUND_CEIL: 2; + static readonly ROUND_FLOOR: 3; + static readonly ROUND_HALF_UP: 4; + static readonly ROUND_HALF_DOWN: 5; + static readonly ROUND_HALF_EVEN: 6; + static readonly ROUND_HALF_CEIL: 7; + static readonly ROUND_HALF_FLOOR: 8; + static readonly EUCLID: 9; +} + +/** + * Interface for any Decimal.js-like library + * Allows us to accept Decimal.js from different + * versions and some compatible alternatives + */ +export declare interface DecimalJsLike { + d: number[]; + e: number; + s: number; + toFixed(): string; +} + +export declare type DefaultArgs = InternalArgs<{}, {}, {}, {}>; + +export declare type DefaultSelection = Args extends { + omit: infer LocalOmit; +} ? ApplyOmit['default'], PatchFlat>>> : ApplyOmit['default'], ExtractGlobalOmit>>; + +export declare function defineDmmfProperty(target: object, runtimeDataModel: RuntimeDataModel): void; + +declare function defineExtension(ext: ExtensionArgs | ((client: Client) => Client)): (client: Client) => Client; + +declare const denylist: readonly ["$connect", "$disconnect", "$on", "$transaction", "$extends"]; + +declare type Deprecation = ReadonlyDeep_2<{ + sinceVersion: string; + reason: string; + plannedRemovalVersion?: string; +}>; + +declare type DeserializedResponse = Array>; + +export declare function deserializeJsonResponse(result: unknown): unknown; + +export declare function deserializeRawResult(response: RawResponse): DeserializedResponse; + +export declare type DevTypeMapDef = { + meta: { + modelProps: string; + }; + model: { + [Model in PropertyKey]: { + [Operation in PropertyKey]: DevTypeMapFnDef; + }; + }; + other: { + [Operation in PropertyKey]: DevTypeMapFnDef; + }; +}; + +export declare type DevTypeMapFnDef = { + args: any; + result: any; + payload: OperationPayload; +}; + +export declare namespace DMMF { + export { + datamodelEnumToSchemaEnum, + Document_2 as Document, + Mappings, + OtherOperationMappings, + DatamodelEnum, + SchemaEnum, + EnumValue, + Datamodel, + uniqueIndex, + PrimaryKey, + Model, + FieldKind, + FieldNamespace, + FieldLocation, + Field, + FieldDefault, + FieldDefaultScalar, + Index, + IndexType, + IndexField, + SortOrder, + Schema, + Query, + QueryOutput, + TypeRef, + InputTypeRef, + SchemaArg, + OutputType, + SchemaField, + OutputTypeRef, + Deprecation, + InputType, + FieldRefType, + FieldRefAllowType, + ModelMapping, + ModelAction + } +} + +declare namespace DMMF_2 { + export { + datamodelEnumToSchemaEnum, + Document_2 as Document, + Mappings, + OtherOperationMappings, + DatamodelEnum, + SchemaEnum, + EnumValue, + Datamodel, + uniqueIndex, + PrimaryKey, + Model, + FieldKind, + FieldNamespace, + FieldLocation, + Field, + FieldDefault, + FieldDefaultScalar, + Index, + IndexType, + IndexField, + SortOrder, + Schema, + Query, + QueryOutput, + TypeRef, + InputTypeRef, + SchemaArg, + OutputType, + SchemaField, + OutputTypeRef, + Deprecation, + InputType, + FieldRefType, + FieldRefAllowType, + ModelMapping, + ModelAction + } +} + +export declare function dmmfToRuntimeDataModel(dmmfDataModel: DMMF_2.Datamodel): RuntimeDataModel; + +declare type Document_2 = ReadonlyDeep_2<{ + datamodel: Datamodel; + schema: Schema; + mappings: Mappings; +}>; + +/** + * A generic driver adapter factory that allows the user to instantiate a + * driver adapter. The query and result types are specific to the adapter. + */ +declare interface DriverAdapterFactory extends AdapterInfo { + /** + * Instantiate a driver adapter. + */ + connect(): Promise>; +} + +declare type DynamicArgType = ArgType | { + arity: 'tuple'; + elements: ArgType[]; +}; + +/** Client */ +export declare type DynamicClientExtensionArgs> = { + [P in keyof C_]: unknown; +} & { + [K: symbol]: { + ctx: Optional, ITXClientDenyList> & { + $parent: Optional, ITXClientDenyList>; + }; + }; +}; + +export declare type DynamicClientExtensionThis> = { + [P in keyof ExtArgs['client']]: Return; +} & { + [P in Exclude]: DynamicModelExtensionThis, ExtArgs>; +} & { + [P in Exclude]: P extends keyof ClientOtherOps ? ClientOtherOps[P] : never; +} & { + [P in Exclude]: DynamicClientExtensionThisBuiltin[P]; +} & { + [K: symbol]: { + types: TypeMap['other']; + }; +}; + +export declare type DynamicClientExtensionThisBuiltin> = { + $extends: ExtendsHook<'extends', TypeMapCb, ExtArgs, Call>; + $transaction

[]>(arg: [...P], options?: { + isolationLevel?: TypeMap['meta']['txIsolationLevel']; + }): Promise>; + $transaction(fn: (client: Omit, ITXClientDenyList>) => Promise, options?: { + maxWait?: number; + timeout?: number; + isolationLevel?: TypeMap['meta']['txIsolationLevel']; + }): Promise; + $disconnect(): Promise; + $connect(): Promise; +}; + +/** Model */ +export declare type DynamicModelExtensionArgs> = { + [K in keyof M_]: K extends '$allModels' ? { + [P in keyof M_[K]]?: unknown; + } & { + [K: symbol]: {}; + } : K extends TypeMap['meta']['modelProps'] ? { + [P in keyof M_[K]]?: unknown; + } & { + [K: symbol]: { + ctx: DynamicModelExtensionThis, ExtArgs> & { + $parent: DynamicClientExtensionThis; + } & { + $name: ModelKey; + } & { + /** + * @deprecated Use `$name` instead. + */ + name: ModelKey; + }; + }; + } : never; +}; + +export declare type DynamicModelExtensionFluentApi = { + [K in keyof TypeMap['model'][M]['payload']['objects']]: (args?: Exact>) => PrismaPromise, [K]> | Null> & DynamicModelExtensionFluentApi>; +}; + +export declare type DynamicModelExtensionFnResult = P extends FluentOperation ? DynamicModelExtensionFluentApi & PrismaPromise | Null> : PrismaPromise>; + +export declare type DynamicModelExtensionFnResultBase = GetResult; + +export declare type DynamicModelExtensionFnResultNull

= P extends 'findUnique' | 'findFirst' ? null : never; + +export declare type DynamicModelExtensionOperationFn = {} extends TypeMap['model'][M]['operations'][P]['args'] ? (args?: Exact) => DynamicModelExtensionFnResult> : (args: Exact) => DynamicModelExtensionFnResult>; + +export declare type DynamicModelExtensionThis> = { + [P in keyof ExtArgs['model'][Uncapitalize]]: Return][P]>; +} & { + [P in Exclude]>]: DynamicModelExtensionOperationFn; +} & { + [P in Exclude<'fields', keyof ExtArgs['model'][Uncapitalize]>]: TypeMap['model'][M]['fields']; +} & { + [K: symbol]: { + types: TypeMap['model'][M]; + }; +}; + +/** Query */ +export declare type DynamicQueryExtensionArgs = { + [K in keyof Q_]: K extends '$allOperations' ? (args: { + model?: string; + operation: string; + args: any; + query: (args: any) => PrismaPromise; + }) => Promise : K extends '$allModels' ? { + [P in keyof Q_[K] | keyof TypeMap['model'][keyof TypeMap['model']]['operations'] | '$allOperations']?: P extends '$allOperations' ? DynamicQueryExtensionCb : P extends keyof TypeMap['model'][keyof TypeMap['model']]['operations'] ? DynamicQueryExtensionCb : never; + } : K extends TypeMap['meta']['modelProps'] ? { + [P in keyof Q_[K] | keyof TypeMap['model'][ModelKey]['operations'] | '$allOperations']?: P extends '$allOperations' ? DynamicQueryExtensionCb, keyof TypeMap['model'][ModelKey]['operations']> : P extends keyof TypeMap['model'][ModelKey]['operations'] ? DynamicQueryExtensionCb, P> : never; + } : K extends keyof TypeMap['other']['operations'] ? DynamicQueryExtensionCb<[TypeMap], 0, 'other', K> : never; +}; + +export declare type DynamicQueryExtensionCb = >(args: A) => Promise; + +export declare type DynamicQueryExtensionCbArgs = (_1 extends unknown ? _2 extends unknown ? { + args: DynamicQueryExtensionCbArgsArgs; + model: _0 extends 0 ? undefined : _1; + operation: _2; + query: >(args: A) => PrismaPromise; +} : never : never) & { + query: (args: DynamicQueryExtensionCbArgsArgs) => PrismaPromise; +}; + +export declare type DynamicQueryExtensionCbArgsArgs = _2 extends '$queryRaw' | '$executeRaw' ? Sql : TypeMap[_0][_1]['operations'][_2]['args']; + +/** Result */ +export declare type DynamicResultExtensionArgs = { + [K in keyof R_]: { + [P in keyof R_[K]]?: { + needs?: DynamicResultExtensionNeeds, R_[K][P]>; + compute(data: DynamicResultExtensionData, R_[K][P]>): any; + }; + }; +}; + +export declare type DynamicResultExtensionData = GetFindResult; + +export declare type DynamicResultExtensionNeeds = { + [K in keyof S]: K extends keyof TypeMap['model'][M]['payload']['scalars'] ? S[K] : never; +} & { + [N in keyof TypeMap['model'][M]['payload']['scalars']]?: boolean; +}; + +/** + * Placeholder value for "no text". + */ +export declare const empty: Sql; + +export declare type EmptyToUnknown = T; + +declare interface Engine { + /** The name of the engine. This is meant to be consumed externally */ + readonly name: string; + onBeforeExit(callback: () => Promise): void; + start(): Promise; + stop(): Promise; + version(forceRun?: boolean): Promise | string; + request(query: JsonQuery, options: RequestOptions): Promise>; + requestBatch(queries: JsonQuery[], options: RequestBatchOptions): Promise[]>; + transaction(action: 'start', headers: Transaction_2.TransactionHeaders, options: Transaction_2.Options): Promise>; + transaction(action: 'commit', headers: Transaction_2.TransactionHeaders, info: Transaction_2.InteractiveTransactionInfo): Promise; + transaction(action: 'rollback', headers: Transaction_2.TransactionHeaders, info: Transaction_2.InteractiveTransactionInfo): Promise; + metrics(options: MetricsOptionsJson): Promise; + metrics(options: MetricsOptionsPrometheus): Promise; + applyPendingMigrations(): Promise; +} + +declare interface EngineConfig { + cwd: string; + dirname: string; + enableDebugLogs?: boolean; + allowTriggerPanic?: boolean; + prismaPath?: string; + generator?: GeneratorConfig; + /** + * @remarks this field is used internally by Policy, do not rename or remove + */ + overrideDatasources: Datasources; + showColors?: boolean; + logQueries?: boolean; + logLevel?: 'info' | 'warn'; + env: Record; + flags?: string[]; + clientVersion: string; + engineVersion: string; + previewFeatures?: string[]; + engineEndpoint?: string; + activeProvider?: string; + logEmitter: LogEmitter; + transactionOptions: Transaction_2.Options; + /** + * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`. + * If set, this is only used in the library engine, and all queries would be performed through it, + * rather than Prisma's Rust drivers. + * @remarks only used by LibraryEngine.ts + */ + adapter?: SqlDriverAdapterFactory; + /** + * The contents of the schema encoded into a string + */ + inlineSchema: string; + /** + * The contents of the datasource url saved in a string + * @remarks only used by DataProxyEngine.ts + * @remarks this field is used internally by Policy, do not rename or remove + */ + inlineDatasources: GetPrismaClientConfig['inlineDatasources']; + /** + * The string hash that was produced for a given schema + * @remarks only used by DataProxyEngine.ts + */ + inlineSchemaHash: string; + /** + * The helper for interaction with OTEL tracing + * @remarks enabling is determined by the client and @prisma/instrumentation package + */ + tracingHelper: TracingHelper; + /** + * Information about whether we have not found a schema.prisma file in the + * default location, and that we fell back to finding the schema.prisma file + * in the current working directory. This usually means it has been bundled. + */ + isBundled?: boolean; + /** + * Web Assembly module loading configuration + */ + engineWasm?: EngineWasmLoadingConfig; + compilerWasm?: CompilerWasmLoadingConfig; + /** + * Allows Accelerate to use runtime utilities from the client. These are + * necessary for the AccelerateEngine to function correctly. + */ + accelerateUtils?: { + resolveDatasourceUrl: typeof resolveDatasourceUrl; + getBatchRequestPayload: typeof getBatchRequestPayload; + prismaGraphQLToJSError: typeof prismaGraphQLToJSError; + PrismaClientUnknownRequestError: typeof PrismaClientUnknownRequestError; + PrismaClientInitializationError: typeof PrismaClientInitializationError; + PrismaClientKnownRequestError: typeof PrismaClientKnownRequestError; + debug: (...args: any[]) => void; + engineVersion: string; + clientVersion: string; + }; +} + +declare type EngineEvent = E extends QueryEventType ? QueryEvent : LogEvent; + +declare type EngineEventType = QueryEventType | LogEventType; + +declare type EngineSpan = { + id: EngineSpanId; + parentId: string | null; + name: string; + startTime: HrTime; + endTime: HrTime; + kind: EngineSpanKind; + attributes?: Record; + links?: EngineSpanId[]; +}; + +declare type EngineSpanId = string; + +declare type EngineSpanKind = 'client' | 'internal'; + +declare type EngineWasmLoadingConfig = { + /** + * WASM-bindgen runtime for corresponding module + */ + getRuntime: () => Promise<{ + __wbg_set_wasm(exports: unknown): void; + QueryEngine: QueryEngineConstructor; + }>; + /** + * Loads the raw wasm module for the wasm query engine. This configuration is + * generated specifically for each type of client, eg. Node.js client and Edge + * clients will have different implementations. + * @remarks this is a callback on purpose, we only load the wasm if needed. + * @remarks only used by LibraryEngine + */ + getQueryEngineWasmModule: () => Promise; +}; + +declare type EnumValue = ReadonlyDeep_2<{ + name: string; + dbName: string | null; +}>; + +declare type EnvPaths = { + rootEnvPath: string | null; + schemaEnvPath: string | undefined; +}; + +declare interface EnvValue { + fromEnvVar: null | string; + value: null | string; +} + +export declare type Equals = (() => T extends A ? 1 : 2) extends (() => T extends B ? 1 : 2) ? 1 : 0; + +declare type Error_2 = MappedError & { + originalCode?: string; + originalMessage?: string; +}; + +declare type ErrorCapturingFunction = T extends (...args: infer A) => Promise ? (...args: A) => Promise>> : T extends (...args: infer A) => infer R ? (...args: A) => Result_4> : T; + +declare type ErrorCapturingInterface = { + [K in keyof T]: ErrorCapturingFunction; +}; + +declare interface ErrorCapturingSqlDriverAdapter extends ErrorCapturingInterface { + readonly errorRegistry: ErrorRegistry; +} + +declare type ErrorFormat = 'pretty' | 'colorless' | 'minimal'; + +declare type ErrorRecord = { + error: unknown; +}; + +declare interface ErrorRegistry { + consumeError(id: number): ErrorRecord | undefined; +} + +declare interface ErrorWithBatchIndex { + batchRequestIdx?: number; +} + +declare type EventCallback = [E] extends ['beforeExit'] ? () => Promise : [E] extends [LogLevel] ? (event: EngineEvent) => void : never; + +export declare type Exact = (A extends unknown ? (W extends A ? { + [K in keyof A]: Exact; +} : W) : never) | (A extends Narrowable ? A : never); + +/** + * Defines Exception. + * + * string or an object with one of (message or name or code) and optional stack + */ +declare type Exception = ExceptionWithCode | ExceptionWithMessage | ExceptionWithName | string; + +declare interface ExceptionWithCode { + code: string | number; + name?: string; + message?: string; + stack?: string; +} + +declare interface ExceptionWithMessage { + code?: string | number; + message: string; + name?: string; + stack?: string; +} + +declare interface ExceptionWithName { + code?: string | number; + message?: string; + name: string; + stack?: string; +} + +declare type ExtendedEventType = LogLevel | 'beforeExit'; + +declare type ExtendedSpanOptions = SpanOptions & { + /** The name of the span */ + name: string; + internal?: boolean; + /** Whether it propagates context (?=true) */ + active?: boolean; + /** The context to append the span to */ + context?: Context; +}; + +/** $extends, defineExtension */ +export declare interface ExtendsHook, TypeMap extends TypeMapDef = Call> { + extArgs: ExtArgs; + , MergedArgs extends InternalArgs = MergeExtArgs>(extension: ((client: DynamicClientExtensionThis) => { + $extends: { + extArgs: Args; + }; + }) | { + name?: string; + query?: DynamicQueryExtensionArgs; + result?: DynamicResultExtensionArgs & R; + model?: DynamicModelExtensionArgs & M; + client?: DynamicClientExtensionArgs & C; + }): { + extends: DynamicClientExtensionThis, TypeMapCb, MergedArgs>; + define: (client: any) => { + $extends: { + extArgs: Args; + }; + }; + }[Variant]; +} + +export declare type ExtensionArgs = Optional; + +declare namespace Extensions { + export { + defineExtension, + getExtensionContext + } +} +export { Extensions } + +declare namespace Extensions_2 { + export { + InternalArgs, + DefaultArgs, + GetPayloadResultExtensionKeys, + GetPayloadResultExtensionObject, + GetPayloadResult, + GetSelect, + GetOmit, + DynamicQueryExtensionArgs, + DynamicQueryExtensionCb, + DynamicQueryExtensionCbArgs, + DynamicQueryExtensionCbArgsArgs, + DynamicResultExtensionArgs, + DynamicResultExtensionNeeds, + DynamicResultExtensionData, + DynamicModelExtensionArgs, + DynamicModelExtensionThis, + DynamicModelExtensionOperationFn, + DynamicModelExtensionFnResult, + DynamicModelExtensionFnResultBase, + DynamicModelExtensionFluentApi, + DynamicModelExtensionFnResultNull, + DynamicClientExtensionArgs, + DynamicClientExtensionThis, + ClientBuiltInProp, + DynamicClientExtensionThisBuiltin, + ExtendsHook, + MergeExtArgs, + AllModelsToStringIndex, + TypeMapDef, + DevTypeMapDef, + DevTypeMapFnDef, + ClientOptionDef, + ClientOtherOps, + TypeMapCbDef, + ModelKey, + RequiredExtensionArgs as UserArgs + } +} + +export declare type ExtractGlobalOmit = Options extends { + omit: { + [K in ModelName]: infer GlobalOmit; + }; +} ? GlobalOmit : {}; + +declare type Field = ReadonlyDeep_2<{ + kind: FieldKind; + name: string; + isRequired: boolean; + isList: boolean; + isUnique: boolean; + isId: boolean; + isReadOnly: boolean; + isGenerated?: boolean; + isUpdatedAt?: boolean; + /** + * Describes the data type in the same the way it is defined in the Prisma schema: + * BigInt, Boolean, Bytes, DateTime, Decimal, Float, Int, JSON, String, $ModelName + */ + type: string; + /** + * Native database type, if specified. + * For example, `@db.VarChar(191)` is encoded as `['VarChar', ['191']]`, + * `@db.Text` is encoded as `['Text', []]`. + */ + nativeType?: [string, string[]] | null; + dbName?: string | null; + hasDefaultValue: boolean; + default?: FieldDefault | FieldDefaultScalar | FieldDefaultScalar[]; + relationFromFields?: string[]; + relationToFields?: string[]; + relationOnDelete?: string; + relationOnUpdate?: string; + relationName?: string; + documentation?: string; +}>; + +declare type FieldDefault = ReadonlyDeep_2<{ + name: string; + args: Array; +}>; + +declare type FieldDefaultScalar = string | boolean | number; + +declare type FieldInitializer = { + type: 'value'; + value: PrismaValue; +} | { + type: 'lastInsertId'; +}; + +declare type FieldKind = 'scalar' | 'object' | 'enum' | 'unsupported'; + +declare type FieldLocation = 'scalar' | 'inputObjectTypes' | 'outputObjectTypes' | 'enumTypes' | 'fieldRefTypes'; + +declare type FieldNamespace = 'model' | 'prisma'; + +declare type FieldOperation = { + type: 'set'; + value: PrismaValue; +} | { + type: 'add'; + value: PrismaValue; +} | { + type: 'subtract'; + value: PrismaValue; +} | { + type: 'multiply'; + value: PrismaValue; +} | { + type: 'divide'; + value: PrismaValue; +}; + +/** + * A reference to a specific field of a specific model + */ +export declare interface FieldRef { + readonly modelName: Model; + readonly name: string; + readonly typeName: FieldType; + readonly isList: boolean; +} + +declare type FieldRefAllowType = TypeRef<'scalar' | 'enumTypes'>; + +declare type FieldRefType = ReadonlyDeep_2<{ + name: string; + allowTypes: FieldRefAllowType[]; + fields: SchemaArg[]; +}>; + +declare type FieldScalarType = { + type: 'string' | 'int' | 'bigint' | 'float' | 'boolean' | 'json' | 'object' | 'datetime' | 'decimal' | 'unsupported'; +} | { + type: 'enum'; + name: string; +} | { + type: 'bytes'; + encoding: 'array' | 'base64' | 'hex'; +}; + +declare type FieldType = { + arity: Arity; +} & FieldScalarType; + +declare type FluentOperation = 'findUnique' | 'findUniqueOrThrow' | 'findFirst' | 'findFirstOrThrow' | 'create' | 'update' | 'upsert' | 'delete'; + +export declare interface Fn { + params: Params; + returns: Returns; +} + +declare type Fragment = { + type: 'stringChunk'; + chunk: string; +} | { + type: 'parameter'; +} | { + type: 'parameterTuple'; +} | { + type: 'parameterTupleList'; + itemPrefix: string; + itemSeparator: string; + itemSuffix: string; + groupSeparator: string; +}; + +declare interface GeneratorConfig { + name: string; + output: EnvValue | null; + isCustomOutput?: boolean; + provider: EnvValue; + config: { + /** `output` is a reserved name and will only be available directly at `generator.output` */ + output?: never; + /** `provider` is a reserved name and will only be available directly at `generator.provider` */ + provider?: never; + /** `binaryTargets` is a reserved name and will only be available directly at `generator.binaryTargets` */ + binaryTargets?: never; + /** `previewFeatures` is a reserved name and will only be available directly at `generator.previewFeatures` */ + previewFeatures?: never; + } & { + [key: string]: string | string[] | undefined; + }; + binaryTargets: BinaryTargetsEnvValue[]; + previewFeatures: string[]; + envPaths?: EnvPaths; + sourceFilePath: string; +} + +export declare type GetAggregateResult

= { + [K in keyof A as K extends Aggregate ? K : never]: K extends '_count' ? A[K] extends true ? number : Count : { + [J in keyof A[K] & string]: P['scalars'][J] | null; + }; +}; + +declare function getBatchRequestPayload(batch: JsonQuery[], transaction?: TransactionOptions_2): QueryEngineBatchRequest; + +export declare type GetBatchResult = { + count: number; +}; + +export declare type GetCountResult = A extends { + select: infer S; +} ? (S extends true ? number : Count) : number; + +declare function getExtensionContext(that: T): Context_2; + +export declare type GetFindResult

= Equals extends 1 ? DefaultSelection : A extends { + select: infer S extends object; +} & Record | { + include: infer I extends object; +} & Record ? { + [K in keyof S | keyof I as (S & I)[K] extends false | undefined | Skip | null ? never : K]: (S & I)[K] extends object ? P extends SelectablePayloadFields ? O extends OperationPayload ? GetFindResult[] : never : P extends SelectablePayloadFields ? O extends OperationPayload ? GetFindResult | SelectField & null : never : K extends '_count' ? Count> : never : P extends SelectablePayloadFields ? O extends OperationPayload ? DefaultSelection[] : never : P extends SelectablePayloadFields ? O extends OperationPayload ? DefaultSelection | SelectField & null : never : P extends { + scalars: { + [k in K]: infer O; + }; + } ? O : K extends '_count' ? Count : never; +} & (A extends { + include: any; +} & Record ? DefaultSelection : unknown) : DefaultSelection; + +export declare type GetGroupByResult

= A extends { + by: string[]; +} ? Array & { + [K in A['by'][number]]: P['scalars'][K]; +}> : A extends { + by: string; +} ? Array & { + [K in A['by']]: P['scalars'][K]; +}> : {}[]; + +export declare type GetOmit = { + [K in (string extends keyof R ? never : keyof R) | BaseKeys]?: boolean | ExtraType; +}; + +export declare type GetPayloadResult, R extends InternalArgs['result'][string]> = Omit> & GetPayloadResultExtensionObject; + +export declare type GetPayloadResultExtensionKeys = KR; + +export declare type GetPayloadResultExtensionObject = { + [K in GetPayloadResultExtensionKeys]: R[K] extends () => { + compute: (...args: any) => infer C; + } ? C : never; +}; + +export declare function getPrismaClient(config: GetPrismaClientConfig): { + new (optionsArg?: PrismaClientOptions): { + _originalClient: any; + _runtimeDataModel: RuntimeDataModel; + _requestHandler: RequestHandler; + _connectionPromise?: Promise | undefined; + _disconnectionPromise?: Promise | undefined; + _engineConfig: EngineConfig; + _accelerateEngineConfig: AccelerateEngineConfig; + _clientVersion: string; + _errorFormat: ErrorFormat; + _tracingHelper: TracingHelper; + _previewFeatures: string[]; + _activeProvider: string; + _globalOmit?: GlobalOmitOptions | undefined; + _extensions: MergedExtensionsList; + /** + * @remarks This is used internally by Policy, do not rename or remove + */ + _engine: Engine; + /** + * A fully constructed/applied Client that references the parent + * PrismaClient. This is used for Client extensions only. + */ + _appliedParent: any; + _createPrismaPromise: PrismaPromiseFactory; + $on(eventType: E, callback: EventCallback): any; + $connect(): Promise; + /** + * Disconnect from the database + */ + $disconnect(): Promise; + /** + * Executes a raw query and always returns a number + */ + $executeRawInternal(transaction: PrismaPromiseTransaction | undefined, clientMethod: string, args: RawQueryArgs, middlewareArgsMapper?: MiddlewareArgsMapper): Promise; + /** + * Executes a raw query provided through a safe tag function + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $executeRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise_2; + /** + * Unsafe counterpart of `$executeRaw` that is susceptible to SQL injections + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $executeRawUnsafe(query: string, ...values: RawValue[]): PrismaPromise_2; + /** + * Executes a raw command only for MongoDB + * + * @param command + * @returns + */ + $runCommandRaw(command: Record): PrismaPromise_2; + /** + * Executes a raw query and returns selected data + */ + $queryRawInternal(transaction: PrismaPromiseTransaction | undefined, clientMethod: string, args: RawQueryArgs, middlewareArgsMapper?: MiddlewareArgsMapper): Promise; + /** + * Executes a raw query provided through a safe tag function + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $queryRaw(query: TemplateStringsArray | Sql, ...values: any[]): PrismaPromise_2; + /** + * Counterpart to $queryRaw, that returns strongly typed results + * @param typedSql + */ + $queryRawTyped(typedSql: UnknownTypedSql): PrismaPromise_2; + /** + * Unsafe counterpart of `$queryRaw` that is susceptible to SQL injections + * @see https://github.com/prisma/prisma/issues/7142 + * + * @param query + * @param values + * @returns + */ + $queryRawUnsafe(query: string, ...values: RawValue[]): PrismaPromise_2; + /** + * Execute a batch of requests in a transaction + * @param requests + * @param options + */ + _transactionWithArray({ promises, options, }: { + promises: Array>; + options?: BatchTransactionOptions; + }): Promise; + /** + * Perform a long-running transaction + * @param callback + * @param options + * @returns + */ + _transactionWithCallback({ callback, options, }: { + callback: (client: Client) => Promise; + options?: Options; + }): Promise; + _createItxClient(transaction: PrismaPromiseInteractiveTransaction): Client; + /** + * Execute queries within a transaction + * @param input a callback or a query list + * @param options to set timeouts (callback) + * @returns + */ + $transaction(input: any, options?: any): Promise; + /** + * Runs the middlewares over params before executing a request + * @param internalParams + * @returns + */ + _request(internalParams: InternalRequestParams): Promise; + _executeRequest({ args, clientMethod, dataPath, callsite, action, model, argsMapper, transaction, unpacker, otelParentCtx, customDataProxyFetch, }: InternalRequestParams): Promise; + $metrics: MetricsClient; + /** + * Shortcut for checking a preview flag + * @param feature preview flag + * @returns + */ + _hasPreviewFlag(feature: string): boolean; + $applyPendingMigrations(): Promise; + $extends: typeof $extends; + readonly [Symbol.toStringTag]: string; + }; +}; + +/** + * Config that is stored into the generated client. When the generated client is + * loaded, this same config is passed to {@link getPrismaClient} which creates a + * closure with that config around a non-instantiated [[PrismaClient]]. + */ +export declare type GetPrismaClientConfig = { + runtimeDataModel: RuntimeDataModel; + generator?: GeneratorConfig; + relativeEnvPaths?: { + rootEnvPath?: string | null; + schemaEnvPath?: string | null; + }; + relativePath: string; + dirname: string; + clientVersion: string; + engineVersion: string; + datasourceNames: string[]; + activeProvider: ActiveConnectorType; + /** + * The contents of the schema encoded into a string + * @remarks only used for the purpose of data proxy + */ + inlineSchema: string; + /** + * A special env object just for the data proxy edge runtime. + * Allows bundlers to inject their own env variables (Vercel). + * Allows platforms to declare global variables as env (Workers). + * @remarks only used for the purpose of data proxy + */ + injectableEdgeEnv?: () => LoadedEnv; + /** + * The contents of the datasource url saved in a string. + * This can either be an env var name or connection string. + * It is needed by the client to connect to the Data Proxy. + * @remarks only used for the purpose of data proxy + */ + inlineDatasources: { + [name in string]: { + url: EnvValue; + }; + }; + /** + * The string hash that was produced for a given schema + * @remarks only used for the purpose of data proxy + */ + inlineSchemaHash: string; + /** + * A marker to indicate that the client was not generated via `prisma + * generate` but was generated via `generate --postinstall` script instead. + * @remarks used to error for Vercel/Netlify for schema caching issues + */ + postinstall?: boolean; + /** + * Information about the CI where the Prisma Client has been generated. The + * name of the CI environment is stored at generation time because CI + * information is not always available at runtime. Moreover, the edge client + * has no notion of environment variables, so this works around that. + * @remarks used to error for Vercel/Netlify for schema caching issues + */ + ciName?: string; + /** + * Information about whether we have not found a schema.prisma file in the + * default location, and that we fell back to finding the schema.prisma file + * in the current working directory. This usually means it has been bundled. + */ + isBundled?: boolean; + /** + * A boolean that is `false` when the client was generated with --no-engine. At + * runtime, this means the client will be bound to be using the Data Proxy. + */ + copyEngine?: boolean; + /** + * Optional wasm loading configuration + */ + engineWasm?: EngineWasmLoadingConfig; + compilerWasm?: CompilerWasmLoadingConfig; +}; + +export declare type GetResult = { + findUnique: GetFindResult | null; + findUniqueOrThrow: GetFindResult; + findFirst: GetFindResult | null; + findFirstOrThrow: GetFindResult; + findMany: GetFindResult[]; + create: GetFindResult; + createMany: GetBatchResult; + createManyAndReturn: GetFindResult[]; + update: GetFindResult; + updateMany: GetBatchResult; + updateManyAndReturn: GetFindResult[]; + upsert: GetFindResult; + delete: GetFindResult; + deleteMany: GetBatchResult; + aggregate: GetAggregateResult; + count: GetCountResult; + groupBy: GetGroupByResult; + $queryRaw: unknown; + $queryRawTyped: unknown; + $executeRaw: number; + $queryRawUnsafe: unknown; + $executeRawUnsafe: number; + $runCommandRaw: JsonObject; + findRaw: JsonObject; + aggregateRaw: JsonObject; +}[OperationName]; + +export declare function getRuntime(): GetRuntimeOutput; + +declare type GetRuntimeOutput = { + id: RuntimeName; + prettyName: string; + isEdge: boolean; +}; + +export declare type GetSelect, R extends InternalArgs['result'][string], KR extends keyof R = string extends keyof R ? never : keyof R> = { + [K in KR | keyof Base]?: K extends KR ? boolean : Base[K]; +}; + +declare type GlobalOmitOptions = { + [modelName: string]: { + [fieldName: string]: boolean; + }; +}; + +declare type HandleErrorParams = { + args: JsArgs; + error: any; + clientMethod: string; + callsite?: CallSite; + transaction?: PrismaPromiseTransaction; + modelName?: string; + globalOmit?: GlobalOmitOptions; +}; + +declare type HrTime = [number, number]; + +/** + * Defines High-Resolution Time. + * + * The first number, HrTime[0], is UNIX Epoch time in seconds since 00:00:00 UTC on 1 January 1970. + * The second number, HrTime[1], represents the partial second elapsed since Unix Epoch time represented by first number in nanoseconds. + * For example, 2021-01-01T12:30:10.150Z in UNIX Epoch time in milliseconds is represented as 1609504210150. + * The first number is calculated by converting and truncating the Epoch time in milliseconds to seconds: + * HrTime[0] = Math.trunc(1609504210150 / 1000) = 1609504210. + * The second number is calculated by converting the digits after the decimal point of the subtraction, (1609504210150 / 1000) - HrTime[0], to nanoseconds: + * HrTime[1] = Number((1609504210.150 - HrTime[0]).toFixed(9)) * 1e9 = 150000000. + * This is represented in HrTime format as [1609504210, 150000000]. + */ +declare type HrTime_2 = [number, number]; + +declare type Index = ReadonlyDeep_2<{ + model: string; + type: IndexType; + isDefinedOnField: boolean; + name?: string; + dbName?: string; + algorithm?: string; + clustered?: boolean; + fields: IndexField[]; +}>; + +declare type IndexField = ReadonlyDeep_2<{ + name: string; + sortOrder?: SortOrder; + length?: number; + operatorClass?: string; +}>; + +declare type IndexType = 'id' | 'normal' | 'unique' | 'fulltext'; + +declare type InMemoryOps = { + pagination: Pagination | null; + distinct: string[] | null; + reverse: boolean; + linkingFields: string[] | null; + nested: Record; +}; + +/** + * Matches a JSON array. + * Unlike \`JsonArray\`, readonly arrays are assignable to this type. + */ +export declare interface InputJsonArray extends ReadonlyArray { +} + +/** + * Matches a JSON object. + * Unlike \`JsonObject\`, this type allows undefined and read-only properties. + */ +export declare type InputJsonObject = { + readonly [Key in string]?: InputJsonValue | null; +}; + +/** + * Matches any valid value that can be used as an input for operations like + * create and update as the value of a JSON field. Unlike \`JsonValue\`, this + * type allows read-only arrays and read-only object properties and disallows + * \`null\` at the top level. + * + * \`null\` cannot be used as the value of a JSON field because its meaning + * would be ambiguous. Use \`Prisma.JsonNull\` to store the JSON null value or + * \`Prisma.DbNull\` to clear the JSON value and set the field to the database + * NULL value instead. + * + * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-by-null-values + */ +export declare type InputJsonValue = string | number | boolean | InputJsonObject | InputJsonArray | { + toJSON(): unknown; +}; + +declare type InputType = ReadonlyDeep_2<{ + name: string; + constraints: { + maxNumFields: number | null; + minNumFields: number | null; + fields?: string[]; + }; + meta?: { + source?: string; + grouping?: string; + }; + fields: SchemaArg[]; +}>; + +declare type InputTypeRef = TypeRef<'scalar' | 'inputObjectTypes' | 'enumTypes' | 'fieldRefTypes'>; + +declare type InteractiveTransactionInfo = { + /** + * Transaction ID returned by the query engine. + */ + id: string; + /** + * Arbitrary payload the meaning of which depends on the `Engine` implementation. + * For example, `DataProxyEngine` needs to associate different API endpoints with transactions. + * In `LibraryEngine` and `BinaryEngine` it is currently not used. + */ + payload: Payload; +}; + +declare type InteractiveTransactionOptions = Transaction_2.InteractiveTransactionInfo; + +export declare type InternalArgs = { + result: { + [K in keyof R]: { + [P in keyof R[K]]: () => R[K][P]; + }; + }; + model: { + [K in keyof M]: { + [P in keyof M[K]]: () => M[K][P]; + }; + }; + query: { + [K in keyof Q]: { + [P in keyof Q[K]]: () => Q[K][P]; + }; + }; + client: { + [K in keyof C]: () => C[K]; + }; +}; + +declare type InternalRequestParams = { + /** + * The original client method being called. + * Even though the rootField / operation can be changed, + * this method stays as it is, as it's what the user's + * code looks like + */ + clientMethod: string; + /** + * Name of js model that triggered the request. Might be used + * for warnings or error messages + */ + jsModelName?: string; + callsite?: CallSite; + transaction?: PrismaPromiseTransaction; + unpacker?: Unpacker; + otelParentCtx?: Context; + /** Used to "desugar" a user input into an "expanded" one */ + argsMapper?: (args?: UserArgs_2) => UserArgs_2; + /** Used to convert args for middleware and back */ + middlewareArgsMapper?: MiddlewareArgsMapper; + /** Used for Accelerate client extension via Data Proxy */ + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +} & Omit; + +declare type IsolationLevel = 'READ UNCOMMITTED' | 'READ COMMITTED' | 'REPEATABLE READ' | 'SNAPSHOT' | 'SERIALIZABLE'; + +declare type IsolationLevel_2 = 'ReadUncommitted' | 'ReadCommitted' | 'RepeatableRead' | 'Snapshot' | 'Serializable'; + +declare function isSkip(value: unknown): value is Skip; + +export declare function isTypedSql(value: unknown): value is UnknownTypedSql; + +export declare type ITXClientDenyList = (typeof denylist)[number]; + +export declare const itxClientDenyList: readonly (string | symbol)[]; + +declare interface Job { + resolve: (data: any) => void; + reject: (data: any) => void; + request: any; +} + +/** + * Create a SQL query for a list of values. + */ +export declare function join(values: readonly RawValue[], separator?: string, prefix?: string, suffix?: string): Sql; + +declare type JoinExpression = { + child: QueryPlanNode; + on: [left: string, right: string][]; + parentField: string; + isRelationUnique: boolean; +}; + +export declare type JsArgs = { + select?: Selection_2; + include?: Selection_2; + omit?: Omission; + [argName: string]: JsInputValue; +}; + +export declare type JsInputValue = null | undefined | string | number | boolean | bigint | Uint8Array | Date | DecimalJsLike | ObjectEnumValue | RawParameters | JsonConvertible | FieldRef | JsInputValue[] | Skip | { + [key: string]: JsInputValue; +}; + +declare type JsonArgumentValue = number | string | boolean | null | RawTaggedValue | JsonArgumentValue[] | { + [key: string]: JsonArgumentValue; +}; + +/** + * From https://github.com/sindresorhus/type-fest/ + * Matches a JSON array. + */ +export declare interface JsonArray extends Array { +} + +export declare type JsonBatchQuery = { + batch: JsonQuery[]; + transaction?: { + isolationLevel?: IsolationLevel_2; + }; +}; + +export declare interface JsonConvertible { + toJSON(): unknown; +} + +declare type JsonFieldSelection = { + arguments?: Record | RawTaggedValue; + selection: JsonSelectionSet; +}; + +declare class JsonNull extends NullTypesEnumValue { + #private; +} + +/** + * From https://github.com/sindresorhus/type-fest/ + * Matches a JSON object. + * This type can be useful to enforce some input to be JSON-compatible or as a super-type to be extended from. + */ +export declare type JsonObject = { + [Key in string]?: JsonValue; +}; + +export declare type JsonQuery = { + modelName?: string; + action: JsonQueryAction; + query: JsonFieldSelection; +}; + +declare type JsonQueryAction = 'findUnique' | 'findUniqueOrThrow' | 'findFirst' | 'findFirstOrThrow' | 'findMany' | 'createOne' | 'createMany' | 'createManyAndReturn' | 'updateOne' | 'updateMany' | 'updateManyAndReturn' | 'deleteOne' | 'deleteMany' | 'upsertOne' | 'aggregate' | 'groupBy' | 'executeRaw' | 'queryRaw' | 'runCommandRaw' | 'findRaw' | 'aggregateRaw'; + +declare type JsonSelectionSet = { + $scalars?: boolean; + $composites?: boolean; +} & { + [fieldName: string]: boolean | JsonFieldSelection; +}; + +/** + * From https://github.com/sindresorhus/type-fest/ + * Matches any valid JSON value. + */ +export declare type JsonValue = string | number | boolean | JsonObject | JsonArray | null; + +export declare type JsOutputValue = null | string | number | boolean | bigint | Uint8Array | Date | Decimal | JsOutputValue[] | { + [key: string]: JsOutputValue; +}; + +export declare type JsPromise = Promise & {}; + +declare type KnownErrorParams = { + code: string; + clientVersion: string; + meta?: Record; + batchRequestIdx?: number; +}; + +/** + * A pointer from the current {@link Span} to another span in the same trace or + * in a different trace. + * Few examples of Link usage. + * 1. Batch Processing: A batch of elements may contain elements associated + * with one or more traces/spans. Since there can only be one parent + * SpanContext, Link is used to keep reference to SpanContext of all + * elements in the batch. + * 2. Public Endpoint: A SpanContext in incoming client request on a public + * endpoint is untrusted from service provider perspective. In such case it + * is advisable to start a new trace with appropriate sampling decision. + * However, it is desirable to associate incoming SpanContext to new trace + * initiated on service provider side so two traces (from Client and from + * Service Provider) can be correlated. + */ +declare interface Link { + /** The {@link SpanContext} of a linked span. */ + context: SpanContext; + /** A set of {@link SpanAttributes} on the link. */ + attributes?: SpanAttributes; + /** Count of attributes of the link that were dropped due to collection limits */ + droppedAttributesCount?: number; +} + +declare type LoadedEnv = { + message?: string; + parsed: { + [x: string]: string; + }; +} | undefined; + +declare type LocationInFile = { + fileName: string; + lineNumber: number | null; + columnNumber: number | null; +}; + +declare type LogDefinition = { + level: LogLevel; + emit: 'stdout' | 'event'; +}; + +/** + * Typings for the events we emit. + * + * @remarks + * If this is updated, our edge runtime shim needs to be updated as well. + */ +declare type LogEmitter = { + on(event: E, listener: (event: EngineEvent) => void): LogEmitter; + emit(event: QueryEventType, payload: QueryEvent): boolean; + emit(event: LogEventType, payload: LogEvent): boolean; +}; + +declare type LogEvent = { + timestamp: Date; + message: string; + target: string; +}; + +declare type LogEventType = 'info' | 'warn' | 'error'; + +declare type LogLevel = 'info' | 'query' | 'warn' | 'error'; + +/** + * Generates more strict variant of an enum which, unlike regular enum, + * throws on non-existing property access. This can be useful in following situations: + * - we have an API, that accepts both `undefined` and `SomeEnumType` as an input + * - enum values are generated dynamically from DMMF. + * + * In that case, if using normal enums and no compile-time typechecking, using non-existing property + * will result in `undefined` value being used, which will be accepted. Using strict enum + * in this case will help to have a runtime exception, telling you that you are probably doing something wrong. + * + * Note: if you need to check for existence of a value in the enum you can still use either + * `in` operator or `hasOwnProperty` function. + * + * @param definition + * @returns + */ +export declare function makeStrictEnum>(definition: T): T; + +export declare function makeTypedQueryFactory(sql: string): (...values: any[]) => TypedSql; + +declare type MappedError = { + kind: 'GenericJs'; + id: number; +} | { + kind: 'UnsupportedNativeDataType'; + type: string; +} | { + kind: 'InvalidIsolationLevel'; + level: string; +} | { + kind: 'LengthMismatch'; + column?: string; +} | { + kind: 'UniqueConstraintViolation'; + constraint?: { + fields: string[]; + } | { + index: string; + } | { + foreignKey: {}; + }; +} | { + kind: 'NullConstraintViolation'; + constraint?: { + fields: string[]; + } | { + index: string; + } | { + foreignKey: {}; + }; +} | { + kind: 'ForeignKeyConstraintViolation'; + constraint?: { + fields: string[]; + } | { + index: string; + } | { + foreignKey: {}; + }; +} | { + kind: 'DatabaseNotReachable'; + host?: string; + port?: number; +} | { + kind: 'DatabaseDoesNotExist'; + db?: string; +} | { + kind: 'DatabaseAlreadyExists'; + db?: string; +} | { + kind: 'DatabaseAccessDenied'; + db?: string; +} | { + kind: 'ConnectionClosed'; +} | { + kind: 'TlsConnectionError'; + reason: string; +} | { + kind: 'AuthenticationFailed'; + user?: string; +} | { + kind: 'TransactionWriteConflict'; +} | { + kind: 'TableDoesNotExist'; + table?: string; +} | { + kind: 'ColumnNotFound'; + column?: string; +} | { + kind: 'TooManyConnections'; + cause: string; +} | { + kind: 'ValueOutOfRange'; + cause: string; +} | { + kind: 'MissingFullTextSearchIndex'; +} | { + kind: 'SocketTimeout'; +} | { + kind: 'InconsistentColumnData'; + cause: string; +} | { + kind: 'TransactionAlreadyClosed'; + cause: string; +} | { + kind: 'postgres'; + code: string; + severity: string; + message: string; + detail: string | undefined; + column: string | undefined; + hint: string | undefined; +} | { + kind: 'mysql'; + code: number; + message: string; + state: string; +} | { + kind: 'sqlite'; + /** + * Sqlite extended error code: https://www.sqlite.org/rescode.html + */ + extendedCode: number; + message: string; +} | { + kind: 'mssql'; + code: number; + message: string; +}; + +declare type Mappings = ReadonlyDeep_2<{ + modelOperations: ModelMapping[]; + otherOperations: { + read: string[]; + write: string[]; + }; +}>; + +/** + * Class that holds the list of all extensions, applied to particular instance, + * as well as resolved versions of the components that need to apply on + * different levels. Main idea of this class: avoid re-resolving as much of the + * stuff as possible when new extensions are added while also delaying the + * resolve until the point it is actually needed. For example, computed fields + * of the model won't be resolved unless the model is actually queried. Neither + * adding extensions with `client` component only cause other components to + * recompute. + */ +declare class MergedExtensionsList { + private head?; + private constructor(); + static empty(): MergedExtensionsList; + static single(extension: ExtensionArgs): MergedExtensionsList; + isEmpty(): boolean; + append(extension: ExtensionArgs): MergedExtensionsList; + getAllComputedFields(dmmfModelName: string): ComputedFieldsMap | undefined; + getAllClientExtensions(): ClientArg | undefined; + getAllModelExtensions(dmmfModelName: string): ModelArg | undefined; + getAllQueryCallbacks(jsModelName: string, operation: string): any; + getAllBatchQueryCallbacks(): BatchQueryOptionsCb[]; +} + +export declare type MergeExtArgs, Args extends Record> = ComputeDeep & AllModelsToStringIndex>; + +export declare type Metric = { + key: string; + value: T; + labels: Record; + description: string; +}; + +export declare type MetricHistogram = { + buckets: MetricHistogramBucket[]; + sum: number; + count: number; +}; + +export declare type MetricHistogramBucket = [maxValue: number, count: number]; + +export declare type Metrics = { + counters: Metric[]; + gauges: Metric[]; + histograms: Metric[]; +}; + +export declare class MetricsClient { + private _client; + constructor(client: Client); + /** + * Returns all metrics gathered up to this point in prometheus format. + * Result of this call can be exposed directly to prometheus scraping endpoint + * + * @param options + * @returns + */ + prometheus(options?: MetricsOptions): Promise; + /** + * Returns all metrics gathered up to this point in prometheus format. + * + * @param options + * @returns + */ + json(options?: MetricsOptions): Promise; +} + +declare type MetricsOptions = { + /** + * Labels to add to every metrics in key-value format + */ + globalLabels?: Record; +}; + +declare type MetricsOptionsCommon = { + globalLabels?: Record; +}; + +declare type MetricsOptionsJson = { + format: 'json'; +} & MetricsOptionsCommon; + +declare type MetricsOptionsPrometheus = { + format: 'prometheus'; +} & MetricsOptionsCommon; + +declare type MiddlewareArgsMapper = { + requestArgsToMiddlewareArgs(requestArgs: RequestArgs): MiddlewareArgs; + middlewareArgsToRequestArgs(middlewareArgs: MiddlewareArgs): RequestArgs; +}; + +declare type Model = ReadonlyDeep_2<{ + name: string; + dbName: string | null; + schema: string | null; + fields: Field[]; + uniqueFields: string[][]; + uniqueIndexes: uniqueIndex[]; + documentation?: string; + primaryKey: PrimaryKey | null; + isGenerated?: boolean; +}>; + +declare enum ModelAction { + findUnique = "findUnique", + findUniqueOrThrow = "findUniqueOrThrow", + findFirst = "findFirst", + findFirstOrThrow = "findFirstOrThrow", + findMany = "findMany", + create = "create", + createMany = "createMany", + createManyAndReturn = "createManyAndReturn", + update = "update", + updateMany = "updateMany", + updateManyAndReturn = "updateManyAndReturn", + upsert = "upsert", + delete = "delete", + deleteMany = "deleteMany", + groupBy = "groupBy", + count = "count",// TODO: count does not actually exist in DMMF + aggregate = "aggregate", + findRaw = "findRaw", + aggregateRaw = "aggregateRaw" +} + +export declare type ModelArg = { + [MethodName in string]: unknown; +}; + +export declare type ModelArgs = { + model: { + [ModelName in string]: ModelArg; + }; +}; + +export declare type ModelKey = M extends keyof TypeMap['model'] ? M : Capitalize; + +declare type ModelMapping = ReadonlyDeep_2<{ + model: string; + plural: string; + findUnique?: string | null; + findUniqueOrThrow?: string | null; + findFirst?: string | null; + findFirstOrThrow?: string | null; + findMany?: string | null; + create?: string | null; + createMany?: string | null; + createManyAndReturn?: string | null; + update?: string | null; + updateMany?: string | null; + updateManyAndReturn?: string | null; + upsert?: string | null; + delete?: string | null; + deleteMany?: string | null; + aggregate?: string | null; + groupBy?: string | null; + count?: string | null; + findRaw?: string | null; + aggregateRaw?: string | null; +}>; + +export declare type ModelQueryOptionsCb = (args: ModelQueryOptionsCbArgs) => Promise; + +export declare type ModelQueryOptionsCbArgs = { + model: string; + operation: string; + args: JsArgs; + query: (args: JsArgs) => Promise; +}; + +declare type MultiBatchResponse = { + type: 'multi'; + plans: QueryPlanNode[]; +}; + +export declare type NameArgs = { + name?: string; +}; + +export declare type Narrow = { + [K in keyof A]: A[K] extends Function ? A[K] : Narrow; +} | (A extends Narrowable ? A : never); + +export declare type Narrowable = string | number | bigint | boolean | []; + +export declare type NeverToUnknown = [T] extends [never] ? unknown : T; + +declare class NullTypesEnumValue extends ObjectEnumValue { + _getNamespace(): string; +} + +/** + * Base class for unique values of object-valued enums. + */ +export declare abstract class ObjectEnumValue { + constructor(arg?: symbol); + abstract _getNamespace(): string; + _getName(): string; + toString(): string; +} + +export declare const objectEnumValues: { + classes: { + DbNull: typeof DbNull; + JsonNull: typeof JsonNull; + AnyNull: typeof AnyNull; + }; + instances: { + DbNull: DbNull; + JsonNull: JsonNull; + AnyNull: AnyNull; + }; +}; + +declare const officialPrismaAdapters: readonly ["@prisma/adapter-planetscale", "@prisma/adapter-neon", "@prisma/adapter-libsql", "@prisma/adapter-better-sqlite3", "@prisma/adapter-d1", "@prisma/adapter-pg", "@prisma/adapter-mssql", "@prisma/adapter-mariadb"]; + +export declare type Omission = Record; + +declare type Omit_2 = { + [P in keyof T as P extends K ? never : P]: T[P]; +}; +export { Omit_2 as Omit } + +export declare type OmitValue = Key extends keyof Omit ? Omit[Key] : false; + +export declare type Operation = 'findFirst' | 'findFirstOrThrow' | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'updateManyAndReturn' | 'upsert' | 'delete' | 'deleteMany' | 'aggregate' | 'count' | 'groupBy' | '$queryRaw' | '$executeRaw' | '$queryRawUnsafe' | '$executeRawUnsafe' | 'findRaw' | 'aggregateRaw' | '$runCommandRaw'; + +export declare type OperationPayload = { + name: string; + scalars: { + [ScalarName in string]: unknown; + }; + objects: { + [ObjectName in string]: unknown; + }; + composites: { + [CompositeName in string]: unknown; + }; +}; + +export declare type Optional = { + [P in K & keyof O]?: O[P]; +} & { + [P in Exclude]: O[P]; +}; + +export declare type OptionalFlat = { + [K in keyof T]?: T[K]; +}; + +export declare type OptionalKeys = { + [K in keyof O]-?: {} extends Pick_2 ? K : never; +}[keyof O]; + +declare type Options = { + /** Timeout for starting the transaction */ + maxWait?: number; + /** Timeout for the transaction body */ + timeout?: number; + /** Transaction isolation level */ + isolationLevel?: IsolationLevel_2; +}; + +declare type Options_2 = { + clientVersion: string; +}; + +export declare type Or = { + 0: { + 0: 0; + 1: 1; + }; + 1: { + 0: 1; + 1: 1; + }; +}[A][B]; + +declare type OtherOperationMappings = ReadonlyDeep_2<{ + read: string[]; + write: string[]; +}>; + +declare type OutputType = ReadonlyDeep_2<{ + name: string; + fields: SchemaField[]; +}>; + +declare type OutputTypeRef = TypeRef<'scalar' | 'outputObjectTypes' | 'enumTypes'>; + +declare type Pagination = { + cursor: Record | null; + take: number | null; + skip: number | null; +}; + +export declare function Param<$Type, $Value extends string>(name: $Value): Param<$Type, $Value>; + +export declare type Param = { + readonly name: $Value; +}; + +export declare type PatchFlat = O1 & Omit_2; + +export declare type Path = O extends unknown ? P extends [infer K, ...infer R] ? K extends keyof O ? Path : Default : O : never; + +export declare type Payload = T extends { + [K: symbol]: { + types: { + payload: any; + }; + }; +} ? T[symbol]['types']['payload'] : any; + +export declare type PayloadToResult = RenameAndNestPayloadKeys

> = { + [K in keyof O]?: O[K][K] extends any[] ? PayloadToResult[] : O[K][K] extends object ? PayloadToResult : O[K][K]; +}; + +declare type Pick_2 = { + [P in keyof T as P extends K ? P : never]: T[P]; +}; +export { Pick_2 as Pick } + +declare interface PlaceholderFormat { + prefix: string; + hasNumbering: boolean; +} + +declare type PrimaryKey = ReadonlyDeep_2<{ + name: string | null; + fields: string[]; +}>; + +export declare class PrismaClientInitializationError extends Error { + clientVersion: string; + errorCode?: string; + retryable?: boolean; + constructor(message: string, clientVersion: string, errorCode?: string); + get [Symbol.toStringTag](): string; +} + +export declare class PrismaClientKnownRequestError extends Error implements ErrorWithBatchIndex { + code: string; + meta?: Record; + clientVersion: string; + batchRequestIdx?: number; + constructor(message: string, { code, clientVersion, meta, batchRequestIdx }: KnownErrorParams); + get [Symbol.toStringTag](): string; +} + +export declare type PrismaClientOptions = { + /** + * Overwrites the primary datasource url from your schema.prisma file + */ + datasourceUrl?: string; + /** + * Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale. + */ + adapter?: SqlDriverAdapterFactory | null; + /** + * Overwrites the datasource url from your schema.prisma file + */ + datasources?: Datasources; + /** + * @default "colorless" + */ + errorFormat?: ErrorFormat; + /** + * The default values for Transaction options + * maxWait ?= 2000 + * timeout ?= 5000 + */ + transactionOptions?: Transaction_2.Options; + /** + * @example + * \`\`\` + * // Defaults to stdout + * log: ['query', 'info', 'warn'] + * + * // Emit as events + * log: [ + * { emit: 'stdout', level: 'query' }, + * { emit: 'stdout', level: 'info' }, + * { emit: 'stdout', level: 'warn' } + * ] + * \`\`\` + * Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option). + */ + log?: Array; + omit?: GlobalOmitOptions; + /** + * @internal + * You probably don't want to use this. \`__internal\` is used by internal tooling. + */ + __internal?: { + debug?: boolean; + engine?: { + cwd?: string; + binaryPath?: string; + endpoint?: string; + allowTriggerPanic?: boolean; + }; + /** This can be used for testing purposes */ + configOverride?: (config: GetPrismaClientConfig) => GetPrismaClientConfig; + }; +}; + +export declare class PrismaClientRustPanicError extends Error { + clientVersion: string; + constructor(message: string, clientVersion: string); + get [Symbol.toStringTag](): string; +} + +export declare class PrismaClientUnknownRequestError extends Error implements ErrorWithBatchIndex { + clientVersion: string; + batchRequestIdx?: number; + constructor(message: string, { clientVersion, batchRequestIdx }: UnknownErrorParams); + get [Symbol.toStringTag](): string; +} + +export declare class PrismaClientValidationError extends Error { + name: string; + clientVersion: string; + constructor(message: string, { clientVersion }: Options_2); + get [Symbol.toStringTag](): string; +} + +declare function prismaGraphQLToJSError({ error, user_facing_error }: RequestError, clientVersion: string, activeProvider: string): PrismaClientKnownRequestError | PrismaClientUnknownRequestError; + +declare type PrismaOperationSpec = { + args: TArgs; + action: TAction; + model: string; +}; + +export declare interface PrismaPromise extends Promise { + [Symbol.toStringTag]: 'PrismaPromise'; +} + +/** + * Prisma's `Promise` that is backwards-compatible. All additions on top of the + * original `Promise` are optional so that it can be backwards-compatible. + * @see [[createPrismaPromise]] + */ +declare interface PrismaPromise_2 = any> extends Promise { + get spec(): TSpec; + /** + * Extension of the original `.then` function + * @param onfulfilled same as regular promises + * @param onrejected same as regular promises + * @param transaction transaction options + */ + then(onfulfilled?: (value: TResult) => R1 | PromiseLike, onrejected?: (error: unknown) => R2 | PromiseLike, transaction?: PrismaPromiseTransaction): Promise; + /** + * Extension of the original `.catch` function + * @param onrejected same as regular promises + * @param transaction transaction options + */ + catch(onrejected?: ((reason: any) => R | PromiseLike) | undefined | null, transaction?: PrismaPromiseTransaction): Promise; + /** + * Extension of the original `.finally` function + * @param onfinally same as regular promises + * @param transaction transaction options + */ + finally(onfinally?: (() => void) | undefined | null, transaction?: PrismaPromiseTransaction): Promise; + /** + * Called when executing a batch of regular tx + * @param transaction transaction options for batch tx + */ + requestTransaction?(transaction: PrismaPromiseBatchTransaction): PromiseLike; +} + +declare type PrismaPromiseBatchTransaction = { + kind: 'batch'; + id: number; + isolationLevel?: IsolationLevel_2; + index: number; + lock: PromiseLike; +}; + +declare type PrismaPromiseCallback = (transaction?: PrismaPromiseTransaction) => Promise; + +/** + * Creates a [[PrismaPromise]]. It is Prisma's implementation of `Promise` which + * is essentially a proxy for `Promise`. All the transaction-compatible client + * methods return one, this allows for pre-preparing queries without executing + * them until `.then` is called. It's the foundation of Prisma's query batching. + * @param callback that will be wrapped within our promise implementation + * @see [[PrismaPromise]] + * @returns + */ +declare type PrismaPromiseFactory = >(callback: PrismaPromiseCallback, op?: T) => PrismaPromise_2; + +declare type PrismaPromiseInteractiveTransaction = { + kind: 'itx'; + id: string; + payload: PayloadType; +}; + +declare type PrismaPromiseTransaction = PrismaPromiseBatchTransaction | PrismaPromiseInteractiveTransaction; + +declare type PrismaValue = string | boolean | number | PrismaValue[] | null | Record | PrismaValuePlaceholder | PrismaValueGenerator; + +declare type PrismaValueGenerator = { + prisma__type: 'generatorCall'; + prisma__value: { + name: string; + args: PrismaValue[]; + }; +}; + +declare type PrismaValuePlaceholder = { + prisma__type: 'param'; + prisma__value: { + name: string; + type: string; + }; +}; + +export declare const PrivateResultType: unique symbol; + +declare type Provider = 'mysql' | 'postgres' | 'sqlite' | 'sqlserver'; + +declare namespace Public { + export { + validator + } +} +export { Public } + +declare namespace Public_2 { + export { + Args, + Result, + Payload, + PrismaPromise, + Operation, + Exact + } +} + +declare type Query = ReadonlyDeep_2<{ + name: string; + args: SchemaArg[]; + output: QueryOutput; +}>; + +declare interface Queryable extends AdapterInfo { + /** + * Execute a query and return its result. + */ + queryRaw(params: Query): Promise; + /** + * Execute a query and return the number of affected rows. + */ + executeRaw(params: Query): Promise; +} + +declare type QueryCompiler = { + compile(request: string): {}; + compileBatch(batchRequest: string): BatchResponse; + free(): void; +}; + +declare interface QueryCompilerConstructor { + new (options: QueryCompilerOptions): QueryCompiler; +} + +declare type QueryCompilerOptions = { + datamodel: string; + provider: Provider; + connectionInfo: ConnectionInfo; +}; + +declare type QueryEngineBatchGraphQLRequest = { + batch: QueryEngineRequest[]; + transaction?: boolean; + isolationLevel?: IsolationLevel_2; +}; + +declare type QueryEngineBatchRequest = QueryEngineBatchGraphQLRequest | JsonBatchQuery; + +declare type QueryEngineConfig = { + datamodel: string; + configDir: string; + logQueries: boolean; + ignoreEnvVarErrors: boolean; + datasourceOverrides: Record; + env: Record; + logLevel: QueryEngineLogLevel; + engineProtocol: QueryEngineProtocol; + enableTracing: boolean; +}; + +declare interface QueryEngineConstructor { + new (config: QueryEngineConfig, logger: (log: string) => void, adapter?: ErrorCapturingSqlDriverAdapter): QueryEngineInstance; +} + +declare type QueryEngineInstance = { + connect(headers: string, requestId: string): Promise; + disconnect(headers: string, requestId: string): Promise; + /** + * Frees any resources allocated by the engine's WASM instance. This method is automatically created by WASM bindgen. + * Noop for other engines. + */ + free?(): void; + /** + * @param requestStr JSON.stringified `QueryEngineRequest | QueryEngineBatchRequest` + * @param headersStr JSON.stringified `QueryEngineRequestHeaders` + */ + query(requestStr: string, headersStr: string, transactionId: string | undefined, requestId: string): Promise; + sdlSchema?(): Promise; + startTransaction(options: string, traceHeaders: string, requestId: string): Promise; + commitTransaction(id: string, traceHeaders: string, requestId: string): Promise; + rollbackTransaction(id: string, traceHeaders: string, requestId: string): Promise; + metrics?(options: string): Promise; + applyPendingMigrations?(): Promise; + trace(requestId: string): Promise; +}; + +declare type QueryEngineLogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'off'; + +declare type QueryEngineProtocol = 'graphql' | 'json'; + +declare type QueryEngineRequest = { + query: string; + variables: Object; +}; + +declare type QueryEngineResultData = { + data: T; +}; + +declare type QueryEvent = { + timestamp: Date; + query: string; + params: string; + duration: number; + target: string; +}; + +declare type QueryEventType = 'query'; + +declare type QueryIntrospectionBuiltinType = 'int' | 'bigint' | 'float' | 'double' | 'string' | 'enum' | 'bytes' | 'bool' | 'char' | 'decimal' | 'json' | 'xml' | 'uuid' | 'datetime' | 'date' | 'time' | 'int-array' | 'bigint-array' | 'float-array' | 'double-array' | 'string-array' | 'char-array' | 'bytes-array' | 'bool-array' | 'decimal-array' | 'json-array' | 'xml-array' | 'uuid-array' | 'datetime-array' | 'date-array' | 'time-array' | 'null' | 'unknown'; + +declare type QueryMiddlewareParams = { + /** The model this is executed on */ + model?: string; + /** The action that is being handled */ + action: Action; + /** TODO what is this */ + dataPath: string[]; + /** TODO what is this */ + runInTransaction: boolean; + args?: UserArgs_2; +}; + +export declare type QueryOptions = { + query: { + [ModelName in string]: { + [ModelAction in string]: ModelQueryOptionsCb; + } | QueryOptionsCb; + }; +}; + +export declare type QueryOptionsCb = (args: QueryOptionsCbArgs) => Promise; + +export declare type QueryOptionsCbArgs = { + model?: string; + operation: string; + args: JsArgs | RawQueryArgs; + query: (args: JsArgs | RawQueryArgs) => Promise; +}; + +declare type QueryOutput = ReadonlyDeep_2<{ + name: string; + isRequired: boolean; + isList: boolean; +}>; + +declare type QueryPlanBinding = { + name: string; + expr: QueryPlanNode; +}; + +declare type QueryPlanDbQuery = { + type: 'rawSql'; + sql: string; + args: PrismaValue[]; + argTypes: ArgType[]; +} | { + type: 'templateSql'; + fragments: Fragment[]; + placeholderFormat: PlaceholderFormat; + args: PrismaValue[]; + argTypes: DynamicArgType[]; + chunkable: boolean; +}; + +declare type QueryPlanNode = { + type: 'value'; + args: PrismaValue; +} | { + type: 'seq'; + args: QueryPlanNode[]; +} | { + type: 'get'; + args: { + name: string; + }; +} | { + type: 'let'; + args: { + bindings: QueryPlanBinding[]; + expr: QueryPlanNode; + }; +} | { + type: 'getFirstNonEmpty'; + args: { + names: string[]; + }; +} | { + type: 'query'; + args: QueryPlanDbQuery; +} | { + type: 'execute'; + args: QueryPlanDbQuery; +} | { + type: 'reverse'; + args: QueryPlanNode; +} | { + type: 'sum'; + args: QueryPlanNode[]; +} | { + type: 'concat'; + args: QueryPlanNode[]; +} | { + type: 'unique'; + args: QueryPlanNode; +} | { + type: 'required'; + args: QueryPlanNode; +} | { + type: 'join'; + args: { + parent: QueryPlanNode; + children: JoinExpression[]; + }; +} | { + type: 'mapField'; + args: { + field: string; + records: QueryPlanNode; + }; +} | { + type: 'transaction'; + args: QueryPlanNode; +} | { + type: 'dataMap'; + args: { + expr: QueryPlanNode; + structure: ResultNode; + enums: Record>; + }; +} | { + type: 'validate'; + args: { + expr: QueryPlanNode; + rules: DataRule[]; + } & ValidationError; +} | { + type: 'if'; + args: { + value: QueryPlanNode; + rule: DataRule; + then: QueryPlanNode; + else: QueryPlanNode; + }; +} | { + type: 'unit'; +} | { + type: 'diff'; + args: { + from: QueryPlanNode; + to: QueryPlanNode; + fields: string[]; + }; +} | { + type: 'initializeRecord'; + args: { + expr: QueryPlanNode; + fields: Record; + }; +} | { + type: 'mapRecord'; + args: { + expr: QueryPlanNode; + fields: Record; + }; +} | { + type: 'process'; + args: { + expr: QueryPlanNode; + operations: InMemoryOps; + }; +}; + +/** + * Create raw SQL statement. + */ +export declare function raw(value: string): Sql; + +export declare type RawParameters = { + __prismaRawParameters__: true; + values: string; +}; + +export declare type RawQueryArgs = Sql | UnknownTypedSql | [query: string, ...values: RawValue[]]; + +declare type RawResponse = { + columns: string[]; + types: QueryIntrospectionBuiltinType[]; + rows: unknown[][]; +}; + +declare type RawTaggedValue = { + $type: 'Raw'; + value: unknown; +}; + +/** + * Supported value or SQL instance. + */ +export declare type RawValue = Value | Sql; + +export declare type ReadonlyDeep = { + readonly [K in keyof T]: ReadonlyDeep; +}; + +declare type ReadonlyDeep_2 = { + +readonly [K in keyof O]: ReadonlyDeep_2; +}; + +declare type Record_2 = { + [P in T]: U; +}; +export { Record_2 as Record } + +export declare type RenameAndNestPayloadKeys

= { + [K in keyof P as K extends 'scalars' | 'objects' | 'composites' ? keyof P[K] : never]: P[K]; +}; + +declare type RequestBatchOptions = { + transaction?: TransactionOptions_2; + traceparent?: string; + numTry?: number; + containsWrite: boolean; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare interface RequestError { + error: string; + user_facing_error: { + is_panic: boolean; + message: string; + meta?: Record; + error_code?: string; + batch_request_idx?: number; + }; +} + +declare class RequestHandler { + client: Client; + dataloader: DataLoader; + private logEmitter?; + constructor(client: Client, logEmitter?: LogEmitter); + request(params: RequestParams): Promise; + mapQueryEngineResult({ dataPath, unpacker }: RequestParams, response: QueryEngineResultData): any; + /** + * Handles the error and logs it, logging the error is done synchronously waiting for the event + * handlers to finish. + */ + handleAndLogRequestError(params: HandleErrorParams): never; + handleRequestError({ error, clientMethod, callsite, transaction, args, modelName, globalOmit, }: HandleErrorParams): never; + sanitizeMessage(message: any): any; + unpack(data: unknown, dataPath: string[], unpacker?: Unpacker): any; + get [Symbol.toStringTag](): string; +} + +declare type RequestOptions = { + traceparent?: string; + numTry?: number; + interactiveTransaction?: InteractiveTransactionOptions; + isWrite: boolean; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare type RequestParams = { + modelName?: string; + action: Action; + protocolQuery: JsonQuery; + dataPath: string[]; + clientMethod: string; + callsite?: CallSite; + transaction?: PrismaPromiseTransaction; + extensions: MergedExtensionsList; + args?: any; + headers?: Record; + unpacker?: Unpacker; + otelParentCtx?: Context; + otelChildCtx?: Context; + globalOmit?: GlobalOmitOptions; + customDataProxyFetch?: AccelerateExtensionFetchDecorator; +}; + +declare type RequiredExtensionArgs = NameArgs & ResultArgs & ModelArgs & ClientArgs & QueryOptions; +export { RequiredExtensionArgs } +export { RequiredExtensionArgs as UserArgs } + +export declare type RequiredKeys = { + [K in keyof O]-?: {} extends Pick_2 ? never : K; +}[keyof O]; + +declare function resolveDatasourceUrl({ inlineDatasources, overrideDatasources, env, clientVersion, }: { + inlineDatasources: GetPrismaClientConfig['inlineDatasources']; + overrideDatasources: Datasources; + env: Record; + clientVersion: string; +}): string; + +export declare type Result = T extends { + [K: symbol]: { + types: { + payload: any; + }; + }; +} ? GetResult : GetResult<{ + composites: {}; + objects: {}; + scalars: {}; + name: ''; +}, {}, F>; + +export declare type Result_2 = Result; + +declare namespace Result_3 { + export { + Count, + GetFindResult, + SelectablePayloadFields, + SelectField, + DefaultSelection, + UnwrapPayload, + ApplyOmit, + OmitValue, + GetCountResult, + Aggregate, + GetAggregateResult, + GetBatchResult, + GetGroupByResult, + GetResult, + ExtractGlobalOmit + } +} + +declare type Result_4 = { + map(fn: (value: T) => U): Result_4; + flatMap(fn: (value: T) => Result_4): Result_4; +} & ({ + readonly ok: true; + readonly value: T; +} | { + readonly ok: false; + readonly error: Error_2; +}); + +export declare type ResultArg = { + [FieldName in string]: ResultFieldDefinition; +}; + +export declare type ResultArgs = { + result: { + [ModelName in string]: ResultArg; + }; +}; + +export declare type ResultArgsFieldCompute = (model: any) => unknown; + +export declare type ResultFieldDefinition = { + needs?: { + [FieldName in string]: boolean; + }; + compute: ResultArgsFieldCompute; +}; + +declare type ResultNode = { + type: 'affectedRows'; +} | { + type: 'object'; + fields: Record; + serializedName: string | null; + skipNulls: boolean; +} | { + type: 'field'; + dbName: string; + fieldType: FieldType; +}; + +export declare type Return = T extends (...args: any[]) => infer R ? R : T; + +export declare type RuntimeDataModel = { + readonly models: Record; + readonly enums: Record; + readonly types: Record; +}; + +declare type RuntimeEnum = Omit; + +declare type RuntimeModel = Omit; + +declare type RuntimeName = 'workerd' | 'deno' | 'netlify' | 'node' | 'bun' | 'edge-light' | ''; + +declare type Schema = ReadonlyDeep_2<{ + rootQueryType?: string; + rootMutationType?: string; + inputObjectTypes: { + model?: InputType[]; + prisma?: InputType[]; + }; + outputObjectTypes: { + model: OutputType[]; + prisma: OutputType[]; + }; + enumTypes: { + model?: SchemaEnum[]; + prisma: SchemaEnum[]; + }; + fieldRefTypes: { + prisma?: FieldRefType[]; + }; +}>; + +declare type SchemaArg = ReadonlyDeep_2<{ + name: string; + comment?: string; + isNullable: boolean; + isRequired: boolean; + inputTypes: InputTypeRef[]; + requiresOtherFields?: string[]; + deprecation?: Deprecation; +}>; + +declare type SchemaEnum = ReadonlyDeep_2<{ + name: string; + values: string[]; +}>; + +declare type SchemaField = ReadonlyDeep_2<{ + name: string; + isNullable?: boolean; + outputType: OutputTypeRef; + args: SchemaArg[]; + deprecation?: Deprecation; + documentation?: string; +}>; + +export declare type Select = T extends U ? T : never; + +export declare type SelectablePayloadFields = { + objects: { + [k in K]: O; + }; +} | { + composites: { + [k in K]: O; + }; +}; + +export declare type SelectField

, K extends PropertyKey> = P extends { + objects: Record; +} ? P['objects'][K] : P extends { + composites: Record; +} ? P['composites'][K] : never; + +declare type Selection_2 = Record; +export { Selection_2 as Selection } + +export declare function serializeJsonQuery({ modelName, action, args, runtimeDataModel, extensions, callsite, clientMethod, errorFormat, clientVersion, previewFeatures, globalOmit, }: SerializeParams): JsonQuery; + +declare type SerializeParams = { + runtimeDataModel: RuntimeDataModel; + modelName?: string; + action: Action; + args?: JsArgs; + extensions?: MergedExtensionsList; + callsite?: CallSite; + clientMethod: string; + clientVersion: string; + errorFormat: ErrorFormat; + previewFeatures: string[]; + globalOmit?: GlobalOmitOptions; +}; + +declare class Skip { + constructor(param?: symbol); + ifUndefined(value: T | undefined): T | Skip; +} + +export declare const skip: Skip; + +declare type SortOrder = 'asc' | 'desc'; + +/** + * An interface that represents a span. A span represents a single operation + * within a trace. Examples of span might include remote procedure calls or a + * in-process function calls to sub-components. A Trace has a single, top-level + * "root" Span that in turn may have zero or more child Spans, which in turn + * may have children. + * + * Spans are created by the {@link Tracer.startSpan} method. + */ +declare interface Span { + /** + * Returns the {@link SpanContext} object associated with this Span. + * + * Get an immutable, serializable identifier for this span that can be used + * to create new child spans. Returned SpanContext is usable even after the + * span ends. + * + * @returns the SpanContext object associated with this Span. + */ + spanContext(): SpanContext; + /** + * Sets an attribute to the span. + * + * Sets a single Attribute with the key and value passed as arguments. + * + * @param key the key for this attribute. + * @param value the value for this attribute. Setting a value null or + * undefined is invalid and will result in undefined behavior. + */ + setAttribute(key: string, value: SpanAttributeValue): this; + /** + * Sets attributes to the span. + * + * @param attributes the attributes that will be added. + * null or undefined attribute values + * are invalid and will result in undefined behavior. + */ + setAttributes(attributes: SpanAttributes): this; + /** + * Adds an event to the Span. + * + * @param name the name of the event. + * @param [attributesOrStartTime] the attributes that will be added; these are + * associated with this event. Can be also a start time + * if type is {@type TimeInput} and 3rd param is undefined + * @param [startTime] start time of the event. + */ + addEvent(name: string, attributesOrStartTime?: SpanAttributes | TimeInput, startTime?: TimeInput): this; + /** + * Adds a single link to the span. + * + * Links added after the creation will not affect the sampling decision. + * It is preferred span links be added at span creation. + * + * @param link the link to add. + */ + addLink(link: Link): this; + /** + * Adds multiple links to the span. + * + * Links added after the creation will not affect the sampling decision. + * It is preferred span links be added at span creation. + * + * @param links the links to add. + */ + addLinks(links: Link[]): this; + /** + * Sets a status to the span. If used, this will override the default Span + * status. Default is {@link SpanStatusCode.UNSET}. SetStatus overrides the value + * of previous calls to SetStatus on the Span. + * + * @param status the SpanStatus to set. + */ + setStatus(status: SpanStatus): this; + /** + * Updates the Span name. + * + * This will override the name provided via {@link Tracer.startSpan}. + * + * Upon this update, any sampling behavior based on Span name will depend on + * the implementation. + * + * @param name the Span name. + */ + updateName(name: string): this; + /** + * Marks the end of Span execution. + * + * Call to End of a Span MUST not have any effects on child spans. Those may + * still be running and can be ended later. + * + * Do not return `this`. The Span generally should not be used after it + * is ended so chaining is not desired in this context. + * + * @param [endTime] the time to set as Span's end time. If not provided, + * use the current time as the span's end time. + */ + end(endTime?: TimeInput): void; + /** + * Returns the flag whether this span will be recorded. + * + * @returns true if this Span is active and recording information like events + * with the `AddEvent` operation and attributes using `setAttributes`. + */ + isRecording(): boolean; + /** + * Sets exception as a span event + * @param exception the exception the only accepted values are string or Error + * @param [time] the time to set as Span's event time. If not provided, + * use the current time. + */ + recordException(exception: Exception, time?: TimeInput): void; +} + +/** + * @deprecated please use {@link Attributes} + */ +declare type SpanAttributes = Attributes; + +/** + * @deprecated please use {@link AttributeValue} + */ +declare type SpanAttributeValue = AttributeValue; + +declare type SpanCallback = (span?: Span, context?: Context) => R; + +/** + * A SpanContext represents the portion of a {@link Span} which must be + * serialized and propagated along side of a {@link Baggage}. + */ +declare interface SpanContext { + /** + * The ID of the trace that this span belongs to. It is worldwide unique + * with practically sufficient probability by being made as 16 randomly + * generated bytes, encoded as a 32 lowercase hex characters corresponding to + * 128 bits. + */ + traceId: string; + /** + * The ID of the Span. It is globally unique with practically sufficient + * probability by being made as 8 randomly generated bytes, encoded as a 16 + * lowercase hex characters corresponding to 64 bits. + */ + spanId: string; + /** + * Only true if the SpanContext was propagated from a remote parent. + */ + isRemote?: boolean; + /** + * Trace flags to propagate. + * + * It is represented as 1 byte (bitmap). Bit to represent whether trace is + * sampled or not. When set, the least significant bit documents that the + * caller may have recorded trace data. A caller who does not record trace + * data out-of-band leaves this flag unset. + * + * see {@link TraceFlags} for valid flag values. + */ + traceFlags: number; + /** + * Tracing-system-specific info to propagate. + * + * The tracestate field value is a `list` as defined below. The `list` is a + * series of `list-members` separated by commas `,`, and a list-member is a + * key/value pair separated by an equals sign `=`. Spaces and horizontal tabs + * surrounding `list-members` are ignored. There can be a maximum of 32 + * `list-members` in a `list`. + * More Info: https://www.w3.org/TR/trace-context/#tracestate-field + * + * Examples: + * Single tracing system (generic format): + * tracestate: rojo=00f067aa0ba902b7 + * Multiple tracing systems (with different formatting): + * tracestate: rojo=00f067aa0ba902b7,congo=t61rcWkgMzE + */ + traceState?: TraceState; +} + +declare enum SpanKind { + /** Default value. Indicates that the span is used internally. */ + INTERNAL = 0, + /** + * Indicates that the span covers server-side handling of an RPC or other + * remote request. + */ + SERVER = 1, + /** + * Indicates that the span covers the client-side wrapper around an RPC or + * other remote request. + */ + CLIENT = 2, + /** + * Indicates that the span describes producer sending a message to a + * broker. Unlike client and server, there is no direct critical path latency + * relationship between producer and consumer spans. + */ + PRODUCER = 3, + /** + * Indicates that the span describes consumer receiving a message from a + * broker. Unlike client and server, there is no direct critical path latency + * relationship between producer and consumer spans. + */ + CONSUMER = 4 +} + +/** + * Options needed for span creation + */ +declare interface SpanOptions { + /** + * The SpanKind of a span + * @default {@link SpanKind.INTERNAL} + */ + kind?: SpanKind; + /** A span's attributes */ + attributes?: SpanAttributes; + /** {@link Link}s span to other spans */ + links?: Link[]; + /** A manually specified start time for the created `Span` object. */ + startTime?: TimeInput; + /** The new span should be a root span. (Ignore parent from context). */ + root?: boolean; +} + +declare interface SpanStatus { + /** The status code of this message. */ + code: SpanStatusCode; + /** A developer-facing error message. */ + message?: string; +} + +/** + * An enumeration of status codes. + */ +declare enum SpanStatusCode { + /** + * The default status. + */ + UNSET = 0, + /** + * The operation has been validated by an Application developer or + * Operator to have completed successfully. + */ + OK = 1, + /** + * The operation contains an error. + */ + ERROR = 2 +} + +/** + * A SQL instance can be nested within each other to build SQL strings. + */ +export declare class Sql { + readonly values: Value[]; + readonly strings: string[]; + constructor(rawStrings: readonly string[], rawValues: readonly RawValue[]); + get sql(): string; + get statement(): string; + get text(): string; + inspect(): { + sql: string; + statement: string; + text: string; + values: unknown[]; + }; +} + +declare interface SqlDriverAdapter extends SqlQueryable { + /** + * Execute multiple SQL statements separated by semicolon. + */ + executeScript(script: string): Promise; + /** + * Start new transaction. + */ + startTransaction(isolationLevel?: IsolationLevel): Promise; + /** + * Optional method that returns extra connection info + */ + getConnectionInfo?(): ConnectionInfo; + /** + * Dispose of the connection and release any resources. + */ + dispose(): Promise; +} + +export declare interface SqlDriverAdapterFactory extends DriverAdapterFactory { + connect(): Promise; +} + +declare type SqlQuery = { + sql: string; + args: Array; + argTypes: Array; +}; + +declare interface SqlQueryable extends Queryable { +} + +declare interface SqlResultSet { + /** + * List of column types appearing in a database query, in the same order as `columnNames`. + * They are used within the Query Engine to convert values from JS to Quaint values. + */ + columnTypes: Array; + /** + * List of column names appearing in a database query, in the same order as `columnTypes`. + */ + columnNames: Array; + /** + * List of rows retrieved from a database query. + * Each row is a list of values, whose length matches `columnNames` and `columnTypes`. + */ + rows: Array>; + /** + * The last ID of an `INSERT` statement, if any. + * This is required for `AUTO_INCREMENT` columns in databases based on MySQL and SQLite. + */ + lastInsertId?: string; +} + +/** + * Create a SQL object from a template string. + */ +export declare function sqltag(strings: readonly string[], ...values: readonly RawValue[]): Sql; + +/** + * Defines TimeInput. + * + * hrtime, epoch milliseconds, performance.now() or Date + */ +declare type TimeInput = HrTime_2 | number | Date; + +export declare type ToTuple = T extends any[] ? T : [T]; + +declare interface TraceState { + /** + * Create a new TraceState which inherits from this TraceState and has the + * given key set. + * The new entry will always be added in the front of the list of states. + * + * @param key key of the TraceState entry. + * @param value value of the TraceState entry. + */ + set(key: string, value: string): TraceState; + /** + * Return a new TraceState which inherits from this TraceState but does not + * contain the given key. + * + * @param key the key for the TraceState entry to be removed. + */ + unset(key: string): TraceState; + /** + * Returns the value to which the specified key is mapped, or `undefined` if + * this map contains no mapping for the key. + * + * @param key with which the specified value is to be associated. + * @returns the value to which the specified key is mapped, or `undefined` if + * this map contains no mapping for the key. + */ + get(key: string): string | undefined; + /** + * Serializes the TraceState to a `list` as defined below. The `list` is a + * series of `list-members` separated by commas `,`, and a list-member is a + * key/value pair separated by an equals sign `=`. Spaces and horizontal tabs + * surrounding `list-members` are ignored. There can be a maximum of 32 + * `list-members` in a `list`. + * + * @returns the serialized string. + */ + serialize(): string; +} + +declare interface TracingHelper { + isEnabled(): boolean; + getTraceParent(context?: Context): string; + dispatchEngineSpans(spans: EngineSpan[]): void; + getActiveContext(): Context | undefined; + runInChildSpan(nameOrOptions: string | ExtendedSpanOptions, callback: SpanCallback): R; +} + +declare interface Transaction extends AdapterInfo, SqlQueryable { + /** + * Transaction options. + */ + readonly options: TransactionOptions; + /** + * Commit the transaction. + */ + commit(): Promise; + /** + * Roll back the transaction. + */ + rollback(): Promise; +} + +declare namespace Transaction_2 { + export { + Options, + IsolationLevel_2 as IsolationLevel, + InteractiveTransactionInfo, + TransactionHeaders + } +} + +declare type TransactionHeaders = { + traceparent?: string; +}; + +declare type TransactionOptions = { + usePhantomQuery: boolean; +}; + +declare type TransactionOptions_2 = { + kind: 'itx'; + options: InteractiveTransactionOptions; +} | { + kind: 'batch'; + options: BatchTransactionOptions; +}; + +export declare class TypedSql { + [PrivateResultType]: Result; + constructor(sql: string, values: Values); + get sql(): string; + get values(): Values; +} + +export declare type TypeMapCbDef = Fn<{ + extArgs: InternalArgs; +}, TypeMapDef>; + +/** Shared */ +export declare type TypeMapDef = Record; + +declare type TypeRef = { + isList: boolean; + type: string; + location: AllowedLocations; + namespace?: FieldNamespace; +}; + +declare namespace Types { + export { + Result_3 as Result, + Extensions_2 as Extensions, + Utils, + Public_2 as Public, + isSkip, + Skip, + skip, + UnknownTypedSql, + OperationPayload as Payload + } +} +export { Types } + +declare type uniqueIndex = ReadonlyDeep_2<{ + name: string; + fields: string[]; +}>; + +declare type UnknownErrorParams = { + clientVersion: string; + batchRequestIdx?: number; +}; + +export declare type UnknownTypedSql = TypedSql; + +declare type Unpacker = (data: any) => any; + +export declare type UnwrapPayload

= {} extends P ? unknown : { + [K in keyof P]: P[K] extends { + scalars: infer S; + composites: infer C; + }[] ? Array> : P[K] extends { + scalars: infer S; + composites: infer C; + } | null ? S & UnwrapPayload | Select : never; +}; + +export declare type UnwrapPromise

= P extends Promise ? R : P; + +export declare type UnwrapTuple = { + [K in keyof Tuple]: K extends `${number}` ? Tuple[K] extends PrismaPromise ? X : UnwrapPromise : UnwrapPromise; +}; + +/** + * Input that flows from the user into the Client. + */ +declare type UserArgs_2 = any; + +declare namespace Utils { + export { + EmptyToUnknown, + NeverToUnknown, + PatchFlat, + Omit_2 as Omit, + Pick_2 as Pick, + ComputeDeep, + Compute, + OptionalFlat, + ReadonlyDeep, + Narrowable, + Narrow, + Exact, + Cast, + Record_2 as Record, + UnwrapPromise, + UnwrapTuple, + Path, + Fn, + Call, + RequiredKeys, + OptionalKeys, + Optional, + Return, + ToTuple, + RenameAndNestPayloadKeys, + PayloadToResult, + Select, + Equals, + Or, + JsPromise + } +} + +declare type ValidationError = { + error_identifier: 'RELATION_VIOLATION'; + context: { + relation: string; + modelA: string; + modelB: string; + }; +} | { + error_identifier: 'MISSING_RELATED_RECORD'; + context: { + model: string; + relation: string; + relationType: string; + operation: string; + neededFor?: string; + }; +} | { + error_identifier: 'MISSING_RECORD'; + context: { + operation: string; + }; +} | { + error_identifier: 'INCOMPLETE_CONNECT_INPUT'; + context: { + expectedRows: number; + }; +} | { + error_identifier: 'INCOMPLETE_CONNECT_OUTPUT'; + context: { + expectedRows: number; + relation: string; + relationType: string; + }; +} | { + error_identifier: 'RECORDS_NOT_CONNECTED'; + context: { + relation: string; + parent: string; + child: string; + }; +}; + +declare function validator(): (select: Exact) => S; + +declare function validator, O extends keyof C[M] & Operation>(client: C, model: M, operation: O): (select: Exact>) => S; + +declare function validator, O extends keyof C[M] & Operation, P extends keyof Args>(client: C, model: M, operation: O, prop: P): (select: Exact[P]>) => S; + +/** + * Values supported by SQL engine. + */ +export declare type Value = unknown; + +export declare function warnEnvConflicts(envPaths: any): void; + +export declare const warnOnce: (key: string, message: string, ...args: unknown[]) => void; + +export { } diff --git a/packages/identity-prisma-client/runtime/library.js b/packages/identity-prisma-client/runtime/library.js new file mode 100644 index 0000000..deb2352 --- /dev/null +++ b/packages/identity-prisma-client/runtime/library.js @@ -0,0 +1,147 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +"use strict";var yu=Object.create;var jt=Object.defineProperty;var bu=Object.getOwnPropertyDescriptor;var Eu=Object.getOwnPropertyNames;var wu=Object.getPrototypeOf,xu=Object.prototype.hasOwnProperty;var Do=(e,r)=>()=>(e&&(r=e(e=0)),r);var ue=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),tr=(e,r)=>{for(var t in r)jt(e,t,{get:r[t],enumerable:!0})},Oo=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of Eu(r))!xu.call(e,i)&&i!==t&&jt(e,i,{get:()=>r[i],enumerable:!(n=bu(r,i))||n.enumerable});return e};var O=(e,r,t)=>(t=e!=null?yu(wu(e)):{},Oo(r||!e||!e.__esModule?jt(t,"default",{value:e,enumerable:!0}):t,e)),vu=e=>Oo(jt({},"__esModule",{value:!0}),e);var hi=ue((_g,is)=>{"use strict";is.exports=(e,r=process.argv)=>{let t=e.startsWith("-")?"":e.length===1?"-":"--",n=r.indexOf(t+e),i=r.indexOf("--");return n!==-1&&(i===-1||n{"use strict";var Fc=require("node:os"),os=require("node:tty"),de=hi(),{env:G}=process,Qe;de("no-color")||de("no-colors")||de("color=false")||de("color=never")?Qe=0:(de("color")||de("colors")||de("color=true")||de("color=always"))&&(Qe=1);"FORCE_COLOR"in G&&(G.FORCE_COLOR==="true"?Qe=1:G.FORCE_COLOR==="false"?Qe=0:Qe=G.FORCE_COLOR.length===0?1:Math.min(parseInt(G.FORCE_COLOR,10),3));function yi(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function bi(e,r){if(Qe===0)return 0;if(de("color=16m")||de("color=full")||de("color=truecolor"))return 3;if(de("color=256"))return 2;if(e&&!r&&Qe===void 0)return 0;let t=Qe||0;if(G.TERM==="dumb")return t;if(process.platform==="win32"){let n=Fc.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in G)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in G)||G.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in G)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(G.TEAMCITY_VERSION)?1:0;if(G.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in G){let n=parseInt((G.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(G.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(G.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(G.TERM)||"COLORTERM"in G?1:t}function Mc(e){let r=bi(e,e&&e.isTTY);return yi(r)}ss.exports={supportsColor:Mc,stdout:yi(bi(!0,os.isatty(1))),stderr:yi(bi(!0,os.isatty(2)))}});var cs=ue((Lg,us)=>{"use strict";var $c=as(),br=hi();function ls(e){if(/^\d{3,4}$/.test(e)){let t=/(\d{1,2})(\d{2})/.exec(e)||[];return{major:0,minor:parseInt(t[1],10),patch:parseInt(t[2],10)}}let r=(e||"").split(".").map(t=>parseInt(t,10));return{major:r[0],minor:r[1],patch:r[2]}}function Ei(e){let{CI:r,FORCE_HYPERLINK:t,NETLIFY:n,TEAMCITY_VERSION:i,TERM_PROGRAM:o,TERM_PROGRAM_VERSION:s,VTE_VERSION:a,TERM:l}=process.env;if(t)return!(t.length>0&&parseInt(t,10)===0);if(br("no-hyperlink")||br("no-hyperlinks")||br("hyperlink=false")||br("hyperlink=never"))return!1;if(br("hyperlink=true")||br("hyperlink=always")||n)return!0;if(!$c.supportsColor(e)||e&&!e.isTTY)return!1;if("WT_SESSION"in process.env)return!0;if(process.platform==="win32"||r||i)return!1;if(o){let u=ls(s||"");switch(o){case"iTerm.app":return u.major===3?u.minor>=1:u.major>3;case"WezTerm":return u.major>=20200620;case"vscode":return u.major>1||u.major===1&&u.minor>=72;case"ghostty":return!0}}if(a){if(a==="0.50.0")return!1;let u=ls(a);return u.major>0||u.minor>=50}switch(l){case"alacritty":return!0}return!1}us.exports={supportsHyperlink:Ei,stdout:Ei(process.stdout),stderr:Ei(process.stderr)}});var ps=ue((Kg,qc)=>{qc.exports={name:"@prisma/internals",version:"6.19.1",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});var Ti=ue((gh,Qc)=>{Qc.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var on=ue(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.enginesVersion=void 0;nn.enginesVersion=Ti().prisma.enginesVersion});var hs=ue((Ih,gs)=>{"use strict";gs.exports=e=>{let r=e.match(/^[ \t]*(?=\S)/gm);return r?r.reduce((t,n)=>Math.min(t,n.length),1/0):0}});var Di=ue((kh,Es)=>{"use strict";Es.exports=(e,r=1,t)=>{if(t={indent:" ",includeEmptyLines:!1,...t},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof r!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof r}\``);if(typeof t.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof t.indent}\``);if(r===0)return e;let n=t.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,t.indent.repeat(r))}});var vs=ue((jh,tp)=>{tp.exports={name:"dotenv",version:"16.5.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var As=ue((Bh,_e)=>{"use strict";var Fi=require("node:fs"),Mi=require("node:path"),np=require("node:os"),ip=require("node:crypto"),op=vs(),Ts=op.version,sp=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function ap(e){let r={},t=e.toString();t=t.replace(/\r\n?/mg,` +`);let n;for(;(n=sp.exec(t))!=null;){let i=n[1],o=n[2]||"";o=o.trim();let s=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),s==='"'&&(o=o.replace(/\\n/g,` +`),o=o.replace(/\\r/g,"\r")),r[i]=o}return r}function lp(e){let r=Rs(e),t=B.configDotenv({path:r});if(!t.parsed){let s=new Error(`MISSING_DATA: Cannot parse ${r} for an unknown reason`);throw s.code="MISSING_DATA",s}let n=Ss(e).split(","),i=n.length,o;for(let s=0;s=i)throw a}return B.parse(o)}function up(e){console.log(`[dotenv@${Ts}][WARN] ${e}`)}function ot(e){console.log(`[dotenv@${Ts}][DEBUG] ${e}`)}function Ss(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function cp(e,r){let t;try{t=new URL(r)}catch(a){if(a.code==="ERR_INVALID_URL"){let l=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw l.code="INVALID_DOTENV_KEY",l}throw a}let n=t.password;if(!n){let a=new Error("INVALID_DOTENV_KEY: Missing key part");throw a.code="INVALID_DOTENV_KEY",a}let i=t.searchParams.get("environment");if(!i){let a=new Error("INVALID_DOTENV_KEY: Missing environment part");throw a.code="INVALID_DOTENV_KEY",a}let o=`DOTENV_VAULT_${i.toUpperCase()}`,s=e.parsed[o];if(!s){let a=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw a.code="NOT_FOUND_DOTENV_ENVIRONMENT",a}return{ciphertext:s,key:n}}function Rs(e){let r=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let t of e.path)Fi.existsSync(t)&&(r=t.endsWith(".vault")?t:`${t}.vault`);else r=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else r=Mi.resolve(process.cwd(),".env.vault");return Fi.existsSync(r)?r:null}function Ps(e){return e[0]==="~"?Mi.join(np.homedir(),e.slice(1)):e}function pp(e){!!(e&&e.debug)&&ot("Loading env from encrypted .env.vault");let t=B._parseVault(e),n=process.env;return e&&e.processEnv!=null&&(n=e.processEnv),B.populate(n,t,e),{parsed:t}}function dp(e){let r=Mi.resolve(process.cwd(),".env"),t="utf8",n=!!(e&&e.debug);e&&e.encoding?t=e.encoding:n&&ot("No encoding is specified. UTF-8 is used by default");let i=[r];if(e&&e.path)if(!Array.isArray(e.path))i=[Ps(e.path)];else{i=[];for(let l of e.path)i.push(Ps(l))}let o,s={};for(let l of i)try{let u=B.parse(Fi.readFileSync(l,{encoding:t}));B.populate(s,u,e)}catch(u){n&&ot(`Failed to load ${l} ${u.message}`),o=u}let a=process.env;return e&&e.processEnv!=null&&(a=e.processEnv),B.populate(a,s,e),o?{parsed:s,error:o}:{parsed:s}}function mp(e){if(Ss(e).length===0)return B.configDotenv(e);let r=Rs(e);return r?B._configVault(e):(up(`You set DOTENV_KEY but you are missing a .env.vault file at ${r}. Did you forget to build it?`),B.configDotenv(e))}function fp(e,r){let t=Buffer.from(r.slice(-64),"hex"),n=Buffer.from(e,"base64"),i=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let s=ip.createDecipheriv("aes-256-gcm",t,i);return s.setAuthTag(o),`${s.update(n)}${s.final()}`}catch(s){let a=s instanceof RangeError,l=s.message==="Invalid key length",u=s.message==="Unsupported state or unable to authenticate data";if(a||l){let c=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw c.code="INVALID_DOTENV_KEY",c}else if(u){let c=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw c.code="DECRYPTION_FAILED",c}else throw s}}function gp(e,r,t={}){let n=!!(t&&t.debug),i=!!(t&&t.override);if(typeof r!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(r))Object.prototype.hasOwnProperty.call(e,o)?(i===!0&&(e[o]=r[o]),n&&ot(i===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=r[o]}var B={configDotenv:dp,_configVault:pp,_parseVault:lp,config:mp,decrypt:fp,parse:ap,populate:gp};_e.exports.configDotenv=B.configDotenv;_e.exports._configVault=B._configVault;_e.exports._parseVault=B._parseVault;_e.exports.config=B.config;_e.exports.decrypt=B.decrypt;_e.exports.parse=B.parse;_e.exports.populate=B.populate;_e.exports=B});var Os=ue((Kh,cn)=>{"use strict";cn.exports=(e={})=>{let r;if(e.repoUrl)r=e.repoUrl;else if(e.user&&e.repo)r=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let t=new URL(`${r}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}t.searchParams.set(i,o)}}return t.toString()};cn.exports.default=cn.exports});var Ki=ue((vb,ea)=>{"use strict";ea.exports=function(){function e(r,t,n,i,o){return rn?n+1:r+1:i===o?t:t+1}return function(r,t){if(r===t)return 0;if(r.length>t.length){var n=r;r=t,t=n}for(var i=r.length,o=t.length;i>0&&r.charCodeAt(i-1)===t.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict"});var sa=Do(()=>{"use strict"});var jf={};tr(jf,{DMMF:()=>ct,Debug:()=>N,Decimal:()=>Fe,Extensions:()=>ni,MetricsClient:()=>Lr,PrismaClientInitializationError:()=>P,PrismaClientKnownRequestError:()=>z,PrismaClientRustPanicError:()=>ae,PrismaClientUnknownRequestError:()=>V,PrismaClientValidationError:()=>Z,Public:()=>ii,Sql:()=>ie,createParam:()=>va,defineDmmfProperty:()=>Ca,deserializeJsonResponse:()=>Vr,deserializeRawResult:()=>Xn,dmmfToRuntimeDataModel:()=>Ns,empty:()=>Oa,getPrismaClient:()=>fu,getRuntime:()=>Kn,join:()=>Da,makeStrictEnum:()=>gu,makeTypedQueryFactory:()=>Ia,objectEnumValues:()=>On,raw:()=>no,serializeJsonQuery:()=>$n,skip:()=>Mn,sqltag:()=>io,warnEnvConflicts:()=>hu,warnOnce:()=>at});module.exports=vu(jf);var ni={};tr(ni,{defineExtension:()=>ko,getExtensionContext:()=>_o});function ko(e){return typeof e=="function"?e:r=>r.$extends(e)}function _o(e){return e}var ii={};tr(ii,{validator:()=>No});function No(...e){return r=>r}var Bt={};tr(Bt,{$:()=>qo,bgBlack:()=>ku,bgBlue:()=>Fu,bgCyan:()=>$u,bgGreen:()=>Nu,bgMagenta:()=>Mu,bgRed:()=>_u,bgWhite:()=>qu,bgYellow:()=>Lu,black:()=>Cu,blue:()=>nr,bold:()=>W,cyan:()=>De,dim:()=>Ce,gray:()=>Hr,green:()=>qe,grey:()=>Ou,hidden:()=>Ru,inverse:()=>Su,italic:()=>Tu,magenta:()=>Iu,red:()=>ce,reset:()=>Pu,strikethrough:()=>Au,underline:()=>Y,white:()=>Du,yellow:()=>Ie});var oi,Lo,Fo,Mo,$o=!0;typeof process<"u"&&({FORCE_COLOR:oi,NODE_DISABLE_COLORS:Lo,NO_COLOR:Fo,TERM:Mo}=process.env||{},$o=process.stdout&&process.stdout.isTTY);var qo={enabled:!Lo&&Fo==null&&Mo!=="dumb"&&(oi!=null&&oi!=="0"||$o)};function F(e,r){let t=new RegExp(`\\x1b\\[${r}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${r}m`;return function(o){return!qo.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(t,i+n):o)+i}}var Pu=F(0,0),W=F(1,22),Ce=F(2,22),Tu=F(3,23),Y=F(4,24),Su=F(7,27),Ru=F(8,28),Au=F(9,29),Cu=F(30,39),ce=F(31,39),qe=F(32,39),Ie=F(33,39),nr=F(34,39),Iu=F(35,39),De=F(36,39),Du=F(37,39),Hr=F(90,39),Ou=F(90,39),ku=F(40,49),_u=F(41,49),Nu=F(42,49),Lu=F(43,49),Fu=F(44,49),Mu=F(45,49),$u=F(46,49),qu=F(47,49);var Vu=100,Vo=["green","yellow","blue","magenta","cyan","red"],Yr=[],jo=Date.now(),ju=0,si=typeof process<"u"?process.env:{};globalThis.DEBUG??=si.DEBUG??"";globalThis.DEBUG_COLORS??=si.DEBUG_COLORS?si.DEBUG_COLORS==="true":!0;var zr={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let r=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),t=r.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=r.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return t&&!n},log:(...e)=>{let[r,t,...n]=e;(console.warn??console.log)(`${r} ${t}`,...n)},formatters:{}};function Bu(e){let r={color:Vo[ju++%Vo.length],enabled:zr.enabled(e),namespace:e,log:zr.log,extend:()=>{}},t=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=r;if(n.length!==0&&Yr.push([o,...n]),Yr.length>Vu&&Yr.shift(),zr.enabled(o)||i){let l=n.map(c=>typeof c=="string"?c:Uu(c)),u=`+${Date.now()-jo}ms`;jo=Date.now(),globalThis.DEBUG_COLORS?a(Bt[s](W(o)),...l,Bt[s](u)):a(o,...l,u)}};return new Proxy(t,{get:(n,i)=>r[i],set:(n,i,o)=>r[i]=o})}var N=new Proxy(Bu,{get:(e,r)=>zr[r],set:(e,r,t)=>zr[r]=t});function Uu(e,r=2){let t=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(t.has(i))return"[Circular *]";t.add(i)}else if(typeof i=="bigint")return i.toString();return i},r)}function Bo(e=7500){let r=Yr.map(([t,...n])=>`${t} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(` +`);return r.length!!(e&&typeof e=="object"),Qt=e=>e&&!!e[Oe],Ee=(e,r,t)=>{if(Qt(e)){let n=e[Oe](),{matched:i,selections:o}=n.match(r);return i&&o&&Object.keys(o).forEach(s=>t(s,o[s])),i}if(ui(e)){if(!ui(r))return!1;if(Array.isArray(e)){if(!Array.isArray(r))return!1;let n=[],i=[],o=[];for(let s of e.keys()){let a=e[s];Qt(a)&&a[Gu]?o.push(a):o.length?i.push(a):n.push(a)}if(o.length){if(o.length>1)throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");if(r.lengthEe(u,s[c],t))&&i.every((u,c)=>Ee(u,a[c],t))&&(o.length===0||Ee(o[0],l,t))}return e.length===r.length&&e.every((s,a)=>Ee(s,r[a],t))}return Reflect.ownKeys(e).every(n=>{let i=e[n];return(n in r||Qt(o=i)&&o[Oe]().matcherType==="optional")&&Ee(i,r[n],t);var o})}return Object.is(r,e)},Ge=e=>{var r,t,n;return ui(e)?Qt(e)?(r=(t=(n=e[Oe]()).getSelectionKeys)==null?void 0:t.call(n))!=null?r:[]:Array.isArray(e)?Zr(e,Ge):Zr(Object.values(e),Ge):[]},Zr=(e,r)=>e.reduce((t,n)=>t.concat(r(n)),[]);function pe(e){return Object.assign(e,{optional:()=>Qu(e),and:r=>q(e,r),or:r=>Wu(e,r),select:r=>r===void 0?Qo(e):Qo(r,e)})}function Qu(e){return pe({[Oe]:()=>({match:r=>{let t={},n=(i,o)=>{t[i]=o};return r===void 0?(Ge(e).forEach(i=>n(i,void 0)),{matched:!0,selections:t}):{matched:Ee(e,r,n),selections:t}},getSelectionKeys:()=>Ge(e),matcherType:"optional"})})}function q(...e){return pe({[Oe]:()=>({match:r=>{let t={},n=(i,o)=>{t[i]=o};return{matched:e.every(i=>Ee(i,r,n)),selections:t}},getSelectionKeys:()=>Zr(e,Ge),matcherType:"and"})})}function Wu(...e){return pe({[Oe]:()=>({match:r=>{let t={},n=(i,o)=>{t[i]=o};return Zr(e,Ge).forEach(i=>n(i,void 0)),{matched:e.some(i=>Ee(i,r,n)),selections:t}},getSelectionKeys:()=>Zr(e,Ge),matcherType:"or"})})}function A(e){return{[Oe]:()=>({match:r=>({matched:!!e(r)})})}}function Qo(...e){let r=typeof e[0]=="string"?e[0]:void 0,t=e.length===2?e[1]:typeof e[0]=="string"?void 0:e[0];return pe({[Oe]:()=>({match:n=>{let i={[r??Wt]:n};return{matched:t===void 0||Ee(t,n,(o,s)=>{i[o]=s}),selections:i}},getSelectionKeys:()=>[r??Wt].concat(t===void 0?[]:Ge(t))})})}function ye(e){return typeof e=="number"}function Ve(e){return typeof e=="string"}function je(e){return typeof e=="bigint"}var eg=pe(A(function(e){return!0}));var Be=e=>Object.assign(pe(e),{startsWith:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&n.startsWith(t)))));var t},endsWith:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&n.endsWith(t)))));var t},minLength:r=>Be(q(e,(t=>A(n=>Ve(n)&&n.length>=t))(r))),length:r=>Be(q(e,(t=>A(n=>Ve(n)&&n.length===t))(r))),maxLength:r=>Be(q(e,(t=>A(n=>Ve(n)&&n.length<=t))(r))),includes:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&n.includes(t)))));var t},regex:r=>{return Be(q(e,(t=r,A(n=>Ve(n)&&!!n.match(t)))));var t}}),rg=Be(A(Ve)),be=e=>Object.assign(pe(e),{between:(r,t)=>be(q(e,((n,i)=>A(o=>ye(o)&&n<=o&&i>=o))(r,t))),lt:r=>be(q(e,(t=>A(n=>ye(n)&&nbe(q(e,(t=>A(n=>ye(n)&&n>t))(r))),lte:r=>be(q(e,(t=>A(n=>ye(n)&&n<=t))(r))),gte:r=>be(q(e,(t=>A(n=>ye(n)&&n>=t))(r))),int:()=>be(q(e,A(r=>ye(r)&&Number.isInteger(r)))),finite:()=>be(q(e,A(r=>ye(r)&&Number.isFinite(r)))),positive:()=>be(q(e,A(r=>ye(r)&&r>0))),negative:()=>be(q(e,A(r=>ye(r)&&r<0)))}),tg=be(A(ye)),Ue=e=>Object.assign(pe(e),{between:(r,t)=>Ue(q(e,((n,i)=>A(o=>je(o)&&n<=o&&i>=o))(r,t))),lt:r=>Ue(q(e,(t=>A(n=>je(n)&&nUe(q(e,(t=>A(n=>je(n)&&n>t))(r))),lte:r=>Ue(q(e,(t=>A(n=>je(n)&&n<=t))(r))),gte:r=>Ue(q(e,(t=>A(n=>je(n)&&n>=t))(r))),positive:()=>Ue(q(e,A(r=>je(r)&&r>0))),negative:()=>Ue(q(e,A(r=>je(r)&&r<0)))}),ng=Ue(A(je)),ig=pe(A(function(e){return typeof e=="boolean"})),og=pe(A(function(e){return typeof e=="symbol"})),sg=pe(A(function(e){return e==null})),ag=pe(A(function(e){return e!=null}));var ci=class extends Error{constructor(r){let t;try{t=JSON.stringify(r)}catch{t=r}super(`Pattern matching error: no pattern matches value ${t}`),this.input=void 0,this.input=r}},pi={matched:!1,value:void 0};function hr(e){return new di(e,pi)}var di=class e{constructor(r,t){this.input=void 0,this.state=void 0,this.input=r,this.state=t}with(...r){if(this.state.matched)return this;let t=r[r.length-1],n=[r[0]],i;r.length===3&&typeof r[1]=="function"?i=r[1]:r.length>2&&n.push(...r.slice(1,r.length-1));let o=!1,s={},a=(u,c)=>{o=!0,s[u]=c},l=!n.some(u=>Ee(u,this.input,a))||i&&!i(this.input)?pi:{matched:!0,value:t(o?Wt in s?s[Wt]:s:this.input,this.input)};return new e(this.input,l)}when(r,t){if(this.state.matched)return this;let n=!!r(this.input);return new e(this.input,n?{matched:!0,value:t(this.input,this.input)}:pi)}otherwise(r){return this.state.matched?this.state.value:r(this.input)}exhaustive(){if(this.state.matched)return this.state.value;throw new ci(this.input)}run(){return this.exhaustive()}returnType(){return this}};var Ho=require("node:util");var Ju={warn:Ie("prisma:warn")},Ku={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function Jt(e,...r){Ku.warn()&&console.warn(`${Ju.warn} ${e}`,...r)}var Hu=(0,Ho.promisify)(Ko.default.exec),ee=gr("prisma:get-platform"),Yu=["1.0.x","1.1.x","3.0.x"];async function Yo(){let e=Ht.default.platform(),r=process.arch;if(e==="freebsd"){let s=await Yt("freebsd-version");if(s&&s.trim().length>0){let l=/^(\d+)\.?/.exec(s);if(l)return{platform:"freebsd",targetDistro:`freebsd${l[1]}`,arch:r}}}if(e!=="linux")return{platform:e,arch:r};let t=await Zu(),n=await sc(),i=ec({arch:r,archFromUname:n,familyDistro:t.familyDistro}),{libssl:o}=await rc(i);return{platform:"linux",libssl:o,arch:r,archFromUname:n,...t}}function zu(e){let r=/^ID="?([^"\n]*)"?$/im,t=/^ID_LIKE="?([^"\n]*)"?$/im,n=r.exec(e),i=n&&n[1]&&n[1].toLowerCase()||"",o=t.exec(e),s=o&&o[1]&&o[1].toLowerCase()||"",a=hr({id:i,idLike:s}).with({id:"alpine"},({id:l})=>({targetDistro:"musl",familyDistro:l,originalDistro:l})).with({id:"raspbian"},({id:l})=>({targetDistro:"arm",familyDistro:"debian",originalDistro:l})).with({id:"nixos"},({id:l})=>({targetDistro:"nixos",originalDistro:l,familyDistro:"nixos"})).with({id:"debian"},{id:"ubuntu"},({id:l})=>({targetDistro:"debian",familyDistro:"debian",originalDistro:l})).with({id:"rhel"},{id:"centos"},{id:"fedora"},({id:l})=>({targetDistro:"rhel",familyDistro:"rhel",originalDistro:l})).when(({idLike:l})=>l.includes("debian")||l.includes("ubuntu"),({id:l})=>({targetDistro:"debian",familyDistro:"debian",originalDistro:l})).when(({idLike:l})=>i==="arch"||l.includes("arch"),({id:l})=>({targetDistro:"debian",familyDistro:"arch",originalDistro:l})).when(({idLike:l})=>l.includes("centos")||l.includes("fedora")||l.includes("rhel")||l.includes("suse"),({id:l})=>({targetDistro:"rhel",familyDistro:"rhel",originalDistro:l})).otherwise(({id:l})=>({targetDistro:void 0,familyDistro:void 0,originalDistro:l}));return ee(`Found distro info: +${JSON.stringify(a,null,2)}`),a}async function Zu(){let e="/etc/os-release";try{let r=await mi.default.readFile(e,{encoding:"utf-8"});return zu(r)}catch{return{targetDistro:void 0,familyDistro:void 0,originalDistro:void 0}}}function Xu(e){let r=/^OpenSSL\s(\d+\.\d+)\.\d+/.exec(e);if(r){let t=`${r[1]}.x`;return zo(t)}}function Wo(e){let r=/libssl\.so\.(\d)(\.\d)?/.exec(e);if(r){let t=`${r[1]}${r[2]??".0"}.x`;return zo(t)}}function zo(e){let r=(()=>{if(Xo(e))return e;let t=e.split(".");return t[1]="0",t.join(".")})();if(Yu.includes(r))return r}function ec(e){return hr(e).with({familyDistro:"musl"},()=>(ee('Trying platform-specific paths for "alpine"'),["/lib","/usr/lib"])).with({familyDistro:"debian"},({archFromUname:r})=>(ee('Trying platform-specific paths for "debian" (and "ubuntu")'),[`/usr/lib/${r}-linux-gnu`,`/lib/${r}-linux-gnu`])).with({familyDistro:"rhel"},()=>(ee('Trying platform-specific paths for "rhel"'),["/lib64","/usr/lib64"])).otherwise(({familyDistro:r,arch:t,archFromUname:n})=>(ee(`Don't know any platform-specific paths for "${r}" on ${t} (${n})`),[]))}async function rc(e){let r='grep -v "libssl.so.0"',t=await Jo(e);if(t){ee(`Found libssl.so file using platform-specific paths: ${t}`);let o=Wo(t);if(ee(`The parsed libssl version is: ${o}`),o)return{libssl:o,strategy:"libssl-specific-path"}}ee('Falling back to "ldconfig" and other generic paths');let n=await Yt(`ldconfig -p | sed "s/.*=>s*//" | sed "s|.*/||" | grep libssl | sort | ${r}`);if(n||(n=await Jo(["/lib64","/usr/lib64","/lib","/usr/lib"])),n){ee(`Found libssl.so file using "ldconfig" or other generic paths: ${n}`);let o=Wo(n);if(ee(`The parsed libssl version is: ${o}`),o)return{libssl:o,strategy:"ldconfig"}}let i=await Yt("openssl version -v");if(i){ee(`Found openssl binary with version: ${i}`);let o=Xu(i);if(ee(`The parsed openssl version is: ${o}`),o)return{libssl:o,strategy:"openssl-binary"}}return ee("Couldn't find any version of libssl or OpenSSL in the system"),{}}async function Jo(e){for(let r of e){let t=await tc(r);if(t)return t}}async function tc(e){try{return(await mi.default.readdir(e)).find(t=>t.startsWith("libssl.so.")&&!t.startsWith("libssl.so.0"))}catch(r){if(r.code==="ENOENT")return;throw r}}async function ir(){let{binaryTarget:e}=await Zo();return e}function nc(e){return e.binaryTarget!==void 0}async function fi(){let{memoized:e,...r}=await Zo();return r}var Kt={};async function Zo(){if(nc(Kt))return Promise.resolve({...Kt,memoized:!0});let e=await Yo(),r=ic(e);return Kt={...e,binaryTarget:r},{...Kt,memoized:!1}}function ic(e){let{platform:r,arch:t,archFromUname:n,libssl:i,targetDistro:o,familyDistro:s,originalDistro:a}=e;r==="linux"&&!["x64","arm64"].includes(t)&&Jt(`Prisma only officially supports Linux on amd64 (x86_64) and arm64 (aarch64) system architectures (detected "${t}" instead). If you are using your own custom Prisma engines, you can ignore this warning, as long as you've compiled the engines for your system architecture "${n}".`);let l="1.1.x";if(r==="linux"&&i===void 0){let c=hr({familyDistro:s}).with({familyDistro:"debian"},()=>"Please manually install OpenSSL via `apt-get update -y && apt-get install -y openssl` and try installing Prisma again. If you're running Prisma on Docker, add this command to your Dockerfile, or switch to an image that already has OpenSSL installed.").otherwise(()=>"Please manually install OpenSSL and try installing Prisma again.");Jt(`Prisma failed to detect the libssl/openssl version to use, and may not work as expected. Defaulting to "openssl-${l}". +${c}`)}let u="debian";if(r==="linux"&&o===void 0&&ee(`Distro is "${a}". Falling back to Prisma engines built for "${u}".`),r==="darwin"&&t==="arm64")return"darwin-arm64";if(r==="darwin")return"darwin";if(r==="win32")return"windows";if(r==="freebsd")return o;if(r==="openbsd")return"openbsd";if(r==="netbsd")return"netbsd";if(r==="linux"&&o==="nixos")return"linux-nixos";if(r==="linux"&&t==="arm64")return`${o==="musl"?"linux-musl-arm64":"linux-arm64"}-openssl-${i||l}`;if(r==="linux"&&t==="arm")return`linux-arm-openssl-${i||l}`;if(r==="linux"&&o==="musl"){let c="linux-musl";return!i||Xo(i)?c:`${c}-openssl-${i}`}return r==="linux"&&o&&i?`${o}-openssl-${i}`:(r!=="linux"&&Jt(`Prisma detected unknown OS "${r}" and may not work as expected. Defaulting to "linux".`),i?`${u}-openssl-${i}`:o?`${o}-openssl-${l}`:`${u}-openssl-${l}`)}async function oc(e){try{return await e()}catch{return}}function Yt(e){return oc(async()=>{let r=await Hu(e);return ee(`Command "${e}" successfully returned "${r.stdout}"`),r.stdout})}async function sc(){return typeof Ht.default.machine=="function"?Ht.default.machine():(await Yt("uname -m"))?.trim()}function Xo(e){return e.startsWith("1.")}var Xt={};tr(Xt,{beep:()=>kc,clearScreen:()=>Cc,clearTerminal:()=>Ic,cursorBackward:()=>mc,cursorDown:()=>pc,cursorForward:()=>dc,cursorGetPosition:()=>hc,cursorHide:()=>Ec,cursorLeft:()=>ts,cursorMove:()=>cc,cursorNextLine:()=>yc,cursorPrevLine:()=>bc,cursorRestorePosition:()=>gc,cursorSavePosition:()=>fc,cursorShow:()=>wc,cursorTo:()=>uc,cursorUp:()=>rs,enterAlternativeScreen:()=>Dc,eraseDown:()=>Tc,eraseEndLine:()=>vc,eraseLine:()=>ns,eraseLines:()=>xc,eraseScreen:()=>gi,eraseStartLine:()=>Pc,eraseUp:()=>Sc,exitAlternativeScreen:()=>Oc,iTerm:()=>Lc,image:()=>Nc,link:()=>_c,scrollDown:()=>Ac,scrollUp:()=>Rc});var Zt=O(require("node:process"),1);var zt=globalThis.window?.document!==void 0,gg=globalThis.process?.versions?.node!==void 0,hg=globalThis.process?.versions?.bun!==void 0,yg=globalThis.Deno?.version?.deno!==void 0,bg=globalThis.process?.versions?.electron!==void 0,Eg=globalThis.navigator?.userAgent?.includes("jsdom")===!0,wg=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,xg=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,vg=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,Pg=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,Xr=globalThis.navigator?.userAgentData?.platform,Tg=Xr==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",Sg=Xr==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",Rg=Xr==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",Ag=Xr==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),Cg=Xr==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android";var C="\x1B[",rt="\x1B]",yr="\x07",et=";",es=!zt&&Zt.default.env.TERM_PROGRAM==="Apple_Terminal",ac=!zt&&Zt.default.platform==="win32",lc=zt?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:Zt.default.cwd,uc=(e,r)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");return typeof r!="number"?C+(e+1)+"G":C+(r+1)+et+(e+1)+"H"},cc=(e,r)=>{if(typeof e!="number")throw new TypeError("The `x` argument is required");let t="";return e<0?t+=C+-e+"D":e>0&&(t+=C+e+"C"),r<0?t+=C+-r+"A":r>0&&(t+=C+r+"B"),t},rs=(e=1)=>C+e+"A",pc=(e=1)=>C+e+"B",dc=(e=1)=>C+e+"C",mc=(e=1)=>C+e+"D",ts=C+"G",fc=es?"\x1B7":C+"s",gc=es?"\x1B8":C+"u",hc=C+"6n",yc=C+"E",bc=C+"F",Ec=C+"?25l",wc=C+"?25h",xc=e=>{let r="";for(let t=0;t[rt,"8",et,et,r,yr,e,rt,"8",et,et,yr].join(""),Nc=(e,r={})=>{let t=`${rt}1337;File=inline=1`;return r.width&&(t+=`;width=${r.width}`),r.height&&(t+=`;height=${r.height}`),r.preserveAspectRatio===!1&&(t+=";preserveAspectRatio=0"),t+":"+Buffer.from(e).toString("base64")+yr},Lc={setCwd:(e=lc())=>`${rt}50;CurrentDir=${e}${yr}`,annotation(e,r={}){let t=`${rt}1337;`,n=r.x!==void 0,i=r.y!==void 0;if((n||i)&&!(n&&i&&r.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return e=e.replaceAll("|",""),t+=r.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",r.length>0?t+=(n?[e,r.length,r.x,r.y]:[r.length,e]).join("|"):t+=e,t+yr}};var en=O(cs(),1);function or(e,r,{target:t="stdout",...n}={}){return en.default[t]?Xt.link(e,r):n.fallback===!1?e:typeof n.fallback=="function"?n.fallback(e,r):`${e} (\u200B${r}\u200B)`}or.isSupported=en.default.stdout;or.stderr=(e,r,t={})=>or(e,r,{target:"stderr",...t});or.stderr.isSupported=en.default.stderr;function wi(e){return or(e,e,{fallback:Y})}var Vc=ps(),xi=Vc.version;function Er(e){let r=jc();return r||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Bc())}function jc(){let e=process.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Bc(){return"library"}function vi(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}function rn(e){return{ok:!0,value:e,map(r){return rn(r(e))},flatMap(r){return r(e)}}}function sr(e){return{ok:!1,error:e,map(){return sr(e)},flatMap(){return sr(e)}}}var ds=N("driver-adapter-utils"),Pi=class{registeredErrors=[];consumeError(r){return this.registeredErrors[r]}registerNewError(r){let t=0;for(;this.registeredErrors[t]!==void 0;)t++;return this.registeredErrors[t]={error:r},t}};var tn=(e,r=new Pi)=>{let t={adapterName:e.adapterName,errorRegistry:r,queryRaw:ke(r,e.queryRaw.bind(e)),executeRaw:ke(r,e.executeRaw.bind(e)),executeScript:ke(r,e.executeScript.bind(e)),dispose:ke(r,e.dispose.bind(e)),provider:e.provider,startTransaction:async(...n)=>(await ke(r,e.startTransaction.bind(e))(...n)).map(o=>Uc(r,o))};return e.getConnectionInfo&&(t.getConnectionInfo=Gc(r,e.getConnectionInfo.bind(e))),t},Uc=(e,r)=>({adapterName:r.adapterName,provider:r.provider,options:r.options,queryRaw:ke(e,r.queryRaw.bind(r)),executeRaw:ke(e,r.executeRaw.bind(r)),commit:ke(e,r.commit.bind(r)),rollback:ke(e,r.rollback.bind(r))});function ke(e,r){return async(...t)=>{try{return rn(await r(...t))}catch(n){if(ds("[error@wrapAsync]",n),vi(n))return sr(n.cause);let i=e.registerNewError(n);return sr({kind:"GenericJs",id:i})}}}function Gc(e,r){return(...t)=>{try{return rn(r(...t))}catch(n){if(ds("[error@wrapSync]",n),vi(n))return sr(n.cause);let i=e.registerNewError(n);return sr({kind:"GenericJs",id:i})}}}var Wc=O(on());var M=O(require("node:path")),Jc=O(on()),wh=N("prisma:engines");function ms(){return M.default.join(__dirname,"../")}var xh="libquery-engine";M.default.join(__dirname,"../query-engine-darwin");M.default.join(__dirname,"../query-engine-darwin-arm64");M.default.join(__dirname,"../query-engine-debian-openssl-1.0.x");M.default.join(__dirname,"../query-engine-debian-openssl-1.1.x");M.default.join(__dirname,"../query-engine-debian-openssl-3.0.x");M.default.join(__dirname,"../query-engine-linux-static-x64");M.default.join(__dirname,"../query-engine-linux-static-arm64");M.default.join(__dirname,"../query-engine-rhel-openssl-1.0.x");M.default.join(__dirname,"../query-engine-rhel-openssl-1.1.x");M.default.join(__dirname,"../query-engine-rhel-openssl-3.0.x");M.default.join(__dirname,"../libquery_engine-darwin.dylib.node");M.default.join(__dirname,"../libquery_engine-darwin-arm64.dylib.node");M.default.join(__dirname,"../libquery_engine-debian-openssl-1.0.x.so.node");M.default.join(__dirname,"../libquery_engine-debian-openssl-1.1.x.so.node");M.default.join(__dirname,"../libquery_engine-debian-openssl-3.0.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-arm64-openssl-1.0.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-arm64-openssl-1.1.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-arm64-openssl-3.0.x.so.node");M.default.join(__dirname,"../libquery_engine-linux-musl.so.node");M.default.join(__dirname,"../libquery_engine-linux-musl-openssl-3.0.x.so.node");M.default.join(__dirname,"../libquery_engine-rhel-openssl-1.0.x.so.node");M.default.join(__dirname,"../libquery_engine-rhel-openssl-1.1.x.so.node");M.default.join(__dirname,"../libquery_engine-rhel-openssl-3.0.x.so.node");M.default.join(__dirname,"../query_engine-windows.dll.node");var Si=O(require("node:fs")),fs=gr("chmodPlusX");function Ri(e){if(process.platform==="win32")return;let r=Si.default.statSync(e),t=r.mode|64|8|1;if(r.mode===t){fs(`Execution permissions of ${e} are fine`);return}let n=t.toString(8).slice(-3);fs(`Have to call chmodPlusX on ${e}`),Si.default.chmodSync(e,n)}function Ai(e){let r=e.e,t=a=>`Prisma cannot find the required \`${a}\` system library in your system`,n=r.message.includes("cannot open shared object file"),i=`Please refer to the documentation about Prisma's system requirements: ${wi("https://pris.ly/d/system-requirements")}`,o=`Unable to require(\`${Ce(e.id)}\`).`,s=hr({message:r.message,code:r.code}).with({code:"ENOENT"},()=>"File does not exist.").when(({message:a})=>n&&a.includes("libz"),()=>`${t("libz")}. Please install it and try again.`).when(({message:a})=>n&&a.includes("libgcc_s"),()=>`${t("libgcc_s")}. Please install it and try again.`).when(({message:a})=>n&&a.includes("libssl"),()=>{let a=e.platformInfo.libssl?`openssl-${e.platformInfo.libssl}`:"openssl";return`${t("libssl")}. Please install ${a} and try again.`}).when(({message:a})=>a.includes("GLIBC"),()=>`Prisma has detected an incompatible version of the \`glibc\` C standard library installed in your system. This probably means your system may be too old to run Prisma. ${i}`).when(({message:a})=>e.platformInfo.platform==="linux"&&a.includes("symbol not found"),()=>`The Prisma engines are not compatible with your system ${e.platformInfo.originalDistro} on (${e.platformInfo.archFromUname}) which uses the \`${e.platformInfo.binaryTarget}\` binaryTarget by default. ${i}`).otherwise(()=>`The Prisma engines do not seem to be compatible with your system. ${i}`);return`${o} +${s} + +Details: ${r.message}`}var ys=O(hs(),1);function Ci(e){let r=(0,ys.default)(e);if(r===0)return e;let t=new RegExp(`^[ \\t]{${r}}`,"gm");return e.replace(t,"")}var bs="prisma+postgres",sn=`${bs}:`;function an(e){return e?.toString().startsWith(`${sn}//`)??!1}function Ii(e){if(!an(e))return!1;let{host:r}=new URL(e);return r.includes("localhost")||r.includes("127.0.0.1")||r.includes("[::1]")}var ws=O(Di());function ki(e){return String(new Oi(e))}var Oi=class{constructor(r){this.config=r}toString(){let{config:r}=this,t=r.provider.fromEnvVar?`env("${r.provider.fromEnvVar}")`:r.provider.value,n=JSON.parse(JSON.stringify({provider:t,binaryTargets:Kc(r.binaryTargets)}));return`generator ${r.name} { +${(0,ws.default)(Hc(n),2)} +}`}};function Kc(e){let r;if(e.length>0){let t=e.find(n=>n.fromEnvVar!==null);t?r=`env("${t.fromEnvVar}")`:r=e.map(n=>n.native?"native":n.value)}else r=void 0;return r}function Hc(e){let r=Object.keys(e).reduce((t,n)=>Math.max(t,n.length),0);return Object.entries(e).map(([t,n])=>`${t.padEnd(r)} = ${Yc(n)}`).join(` +`)}function Yc(e){return JSON.parse(JSON.stringify(e,(r,t)=>Array.isArray(t)?`[${t.map(n=>JSON.stringify(n)).join(", ")}]`:JSON.stringify(t)))}var nt={};tr(nt,{error:()=>Xc,info:()=>Zc,log:()=>zc,query:()=>ep,should:()=>xs,tags:()=>tt,warn:()=>_i});var tt={error:ce("prisma:error"),warn:Ie("prisma:warn"),info:De("prisma:info"),query:nr("prisma:query")},xs={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function zc(...e){console.log(...e)}function _i(e,...r){xs.warn()&&console.warn(`${tt.warn} ${e}`,...r)}function Zc(e,...r){console.info(`${tt.info} ${e}`,...r)}function Xc(e,...r){console.error(`${tt.error} ${e}`,...r)}function ep(e,...r){console.log(`${tt.query} ${e}`,...r)}function ln(e,r){if(!e)throw new Error(`${r}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`)}function ar(e,r){throw new Error(r)}function Ni({onlyFirst:e=!1}={}){let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}var rp=Ni();function wr(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(rp,"")}var it=O(require("node:path"));function Li(e){return it.default.sep===it.default.posix.sep?e:e.split(it.default.sep).join(it.default.posix.sep)}var qi=O(As()),un=O(require("node:fs"));var xr=O(require("node:path"));function Cs(e){let r=e.ignoreProcessEnv?{}:process.env,t=n=>n.match(/(.?\${(?:[a-zA-Z0-9_]+)?})/g)?.reduce(function(o,s){let a=/(.?)\${([a-zA-Z0-9_]+)?}/g.exec(s);if(!a)return o;let l=a[1],u,c;if(l==="\\")c=a[0],u=c.replace("\\$","$");else{let p=a[2];c=a[0].substring(l.length),u=Object.hasOwnProperty.call(r,p)?r[p]:e.parsed[p]||"",u=t(u)}return o.replace(c,u)},n)??n;for(let n in e.parsed){let i=Object.hasOwnProperty.call(r,n)?r[n]:e.parsed[n];e.parsed[n]=t(i)}for(let n in e.parsed)r[n]=e.parsed[n];return e}var $i=gr("prisma:tryLoadEnv");function st({rootEnvPath:e,schemaEnvPath:r},t={conflictCheck:"none"}){let n=Is(e);t.conflictCheck!=="none"&&hp(n,r,t.conflictCheck);let i=null;return Ds(n?.path,r)||(i=Is(r)),!n&&!i&&$i("No Environment variables loaded"),i?.dotenvResult.error?console.error(ce(W("Schema Env Error: "))+i.dotenvResult.error):{message:[n?.message,i?.message].filter(Boolean).join(` +`),parsed:{...n?.dotenvResult?.parsed,...i?.dotenvResult?.parsed}}}function hp(e,r,t){let n=e?.dotenvResult.parsed,i=!Ds(e?.path,r);if(n&&r&&i&&un.default.existsSync(r)){let o=qi.default.parse(un.default.readFileSync(r)),s=[];for(let a in o)n[a]===o[a]&&s.push(a);if(s.length>0){let a=xr.default.relative(process.cwd(),e.path),l=xr.default.relative(process.cwd(),r);if(t==="error"){let u=`There is a conflict between env var${s.length>1?"s":""} in ${Y(a)} and ${Y(l)} +Conflicting env vars: +${s.map(c=>` ${W(c)}`).join(` +`)} + +We suggest to move the contents of ${Y(l)} to ${Y(a)} to consolidate your env vars. +`;throw new Error(u)}else if(t==="warn"){let u=`Conflict for env var${s.length>1?"s":""} ${s.map(c=>W(c)).join(", ")} in ${Y(a)} and ${Y(l)} +Env vars from ${Y(l)} overwrite the ones from ${Y(a)} + `;console.warn(`${Ie("warn(prisma)")} ${u}`)}}}}function Is(e){if(yp(e)){$i(`Environment variables loaded from ${e}`);let r=qi.default.config({path:e,debug:process.env.DOTENV_CONFIG_DEBUG?!0:void 0});return{dotenvResult:Cs(r),message:Ce(`Environment variables loaded from ${xr.default.relative(process.cwd(),e)}`),path:e}}else $i(`Environment variables not found at ${e}`);return null}function Ds(e,r){return e&&r&&xr.default.resolve(e)===xr.default.resolve(r)}function yp(e){return!!(e&&un.default.existsSync(e))}function Vi(e,r){return Object.prototype.hasOwnProperty.call(e,r)}function pn(e,r){let t={};for(let n of Object.keys(e))t[n]=r(e[n],n);return t}function ji(e,r){if(e.length===0)return;let t=e[0];for(let n=1;n{ks.has(e)||(ks.add(e),_i(r,...t))};var P=class e extends Error{clientVersion;errorCode;retryable;constructor(r,t,n){super(r),this.name="PrismaClientInitializationError",this.clientVersion=t,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};x(P,"PrismaClientInitializationError");var z=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(r,{code:t,clientVersion:n,meta:i,batchRequestIdx:o}){super(r),this.name="PrismaClientKnownRequestError",this.code=t,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};x(z,"PrismaClientKnownRequestError");var ae=class extends Error{clientVersion;constructor(r,t){super(r),this.name="PrismaClientRustPanicError",this.clientVersion=t}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};x(ae,"PrismaClientRustPanicError");var V=class extends Error{clientVersion;batchRequestIdx;constructor(r,{clientVersion:t,batchRequestIdx:n}){super(r),this.name="PrismaClientUnknownRequestError",this.clientVersion=t,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};x(V,"PrismaClientUnknownRequestError");var Z=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(r,{clientVersion:t}){super(r),this.clientVersion=t}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};x(Z,"PrismaClientValidationError");var we=class{_map=new Map;get(r){return this._map.get(r)?.value}set(r,t){this._map.set(r,{value:t})}getOrCreate(r,t){let n=this._map.get(r);if(n)return n.value;let i=t();return this.set(r,i),i}};function We(e){return e.substring(0,1).toLowerCase()+e.substring(1)}function _s(e,r){let t={};for(let n of e){let i=n[r];t[i]=n}return t}function lt(e){let r;return{get(){return r||(r={value:e()}),r.value}}}function Ns(e){return{models:Bi(e.models),enums:Bi(e.enums),types:Bi(e.types)}}function Bi(e){let r={};for(let{name:t,...n}of e)r[t]=n;return r}function vr(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function mn(e){return e.toString()!=="Invalid Date"}var Pr=9e15,Ye=1e9,Ui="0123456789abcdef",hn="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",yn="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Gi={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Pr,maxE:Pr,crypto:!1},$s,Ne,w=!0,En="[DecimalError] ",He=En+"Invalid argument: ",qs=En+"Precision limit exceeded",Vs=En+"crypto unavailable",js="[object Decimal]",X=Math.floor,U=Math.pow,bp=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Ep=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,wp=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,Bs=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,fe=1e7,E=7,xp=9007199254740991,vp=hn.length-1,Qi=yn.length-1,m={toStringTag:js};m.absoluteValue=m.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),y(e)};m.ceil=function(){return y(new this.constructor(this),this.e+1,2)};m.clampedTo=m.clamp=function(e,r){var t,n=this,i=n.constructor;if(e=new i(e),r=new i(r),!e.s||!r.s)return new i(NaN);if(e.gt(r))throw Error(He+r);return t=n.cmp(e),t<0?e:n.cmp(r)>0?r:new i(n)};m.comparedTo=m.cmp=function(e){var r,t,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,u=e.s;if(!s||!a)return!l||!u?NaN:l!==u?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-u:0;if(l!==u)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,r=0,t=na[r]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};m.cosine=m.cos=function(){var e,r,t=this,n=t.constructor;return t.d?t.d[0]?(e=n.precision,r=n.rounding,n.precision=e+Math.max(t.e,t.sd())+E,n.rounding=1,t=Pp(n,Js(n,t)),n.precision=e,n.rounding=r,y(Ne==2||Ne==3?t.neg():t,e,r,!0)):new n(1):new n(NaN)};m.cubeRoot=m.cbrt=function(){var e,r,t,n,i,o,s,a,l,u,c=this,p=c.constructor;if(!c.isFinite()||c.isZero())return new p(c);for(w=!1,o=c.s*U(c.s*c,1/3),!o||Math.abs(o)==1/0?(t=J(c.d),e=c.e,(o=(e-t.length+1)%3)&&(t+=o==1||o==-2?"0":"00"),o=U(t,1/3),e=X((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?t="5e"+e:(t=o.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new p(t),n.s=c.s):n=new p(o.toString()),s=(e=p.precision)+3;;)if(a=n,l=a.times(a).times(a),u=l.plus(c),n=L(u.plus(c).times(a),u.plus(l),s+2,1),J(a.d).slice(0,s)===(t=J(n.d)).slice(0,s))if(t=t.slice(s-3,s+1),t=="9999"||!i&&t=="4999"){if(!i&&(y(a,e+1,0),a.times(a).times(a).eq(c))){n=a;break}s+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(y(n,e+1,1),r=!n.times(n).times(n).eq(c));break}return w=!0,y(n,e,p.rounding,r)};m.decimalPlaces=m.dp=function(){var e,r=this.d,t=NaN;if(r){if(e=r.length-1,t=(e-X(this.e/E))*E,e=r[e],e)for(;e%10==0;e/=10)t--;t<0&&(t=0)}return t};m.dividedBy=m.div=function(e){return L(this,new this.constructor(e))};m.dividedToIntegerBy=m.divToInt=function(e){var r=this,t=r.constructor;return y(L(r,new t(e),0,1,1),t.precision,t.rounding)};m.equals=m.eq=function(e){return this.cmp(e)===0};m.floor=function(){return y(new this.constructor(this),this.e+1,3)};m.greaterThan=m.gt=function(e){return this.cmp(e)>0};m.greaterThanOrEqualTo=m.gte=function(e){var r=this.cmp(e);return r==1||r===0};m.hyperbolicCosine=m.cosh=function(){var e,r,t,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;t=s.precision,n=s.rounding,s.precision=t+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),r=(1/xn(4,e)).toString()):(e=16,r="2.3283064365386962890625e-10"),o=Tr(s,1,o.times(r),new s(1),!0);for(var l,u=e,c=new s(8);u--;)l=o.times(o),o=a.minus(l.times(c.minus(l.times(c))));return y(o,s.precision=t,s.rounding=n,!0)};m.hyperbolicSine=m.sinh=function(){var e,r,t,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(r=o.precision,t=o.rounding,o.precision=r+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=Tr(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/xn(5,e)),i=Tr(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(u))))}return o.precision=r,o.rounding=t,y(i,r,t,!0)};m.hyperbolicTangent=m.tanh=function(){var e,r,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+7,n.rounding=1,L(t.sinh(),t.cosh(),n.precision=e,n.rounding=r)):new n(t.s)};m.inverseCosine=m.acos=function(){var e=this,r=e.constructor,t=e.abs().cmp(1),n=r.precision,i=r.rounding;return t!==-1?t===0?e.isNeg()?xe(r,n,i):new r(0):new r(NaN):e.isZero()?xe(r,n+4,i).times(.5):(r.precision=n+6,r.rounding=1,e=new r(1).minus(e).div(e.plus(1)).sqrt().atan(),r.precision=n,r.rounding=i,e.times(2))};m.inverseHyperbolicCosine=m.acosh=function(){var e,r,t=this,n=t.constructor;return t.lte(1)?new n(t.eq(1)?0:NaN):t.isFinite()?(e=n.precision,r=n.rounding,n.precision=e+Math.max(Math.abs(t.e),t.sd())+4,n.rounding=1,w=!1,t=t.times(t).minus(1).sqrt().plus(t),w=!0,n.precision=e,n.rounding=r,t.ln()):new n(t)};m.inverseHyperbolicSine=m.asinh=function(){var e,r,t=this,n=t.constructor;return!t.isFinite()||t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+2*Math.max(Math.abs(t.e),t.sd())+6,n.rounding=1,w=!1,t=t.times(t).plus(1).sqrt().plus(t),w=!0,n.precision=e,n.rounding=r,t.ln())};m.inverseHyperbolicTangent=m.atanh=function(){var e,r,t,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,r=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?y(new o(i),e,r,!0):(o.precision=t=n-i.e,i=L(i.plus(1),new o(1).minus(i),t+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=r,i.times(.5))):new o(NaN)};m.inverseSine=m.asin=function(){var e,r,t,n,i=this,o=i.constructor;return i.isZero()?new o(i):(r=i.abs().cmp(1),t=o.precision,n=o.rounding,r!==-1?r===0?(e=xe(o,t+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=t+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=t,o.rounding=n,i.times(2)))};m.inverseTangent=m.atan=function(){var e,r,t,n,i,o,s,a,l,u=this,c=u.constructor,p=c.precision,d=c.rounding;if(u.isFinite()){if(u.isZero())return new c(u);if(u.abs().eq(1)&&p+4<=Qi)return s=xe(c,p+4,d).times(.25),s.s=u.s,s}else{if(!u.s)return new c(NaN);if(p+4<=Qi)return s=xe(c,p+4,d).times(.5),s.s=u.s,s}for(c.precision=a=p+10,c.rounding=1,t=Math.min(28,a/E+2|0),e=t;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(w=!1,r=Math.ceil(a/E),n=1,l=u.times(u),s=new c(u),i=u;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[r]!==void 0)for(e=r;s.d[e]===o.d[e]&&e--;);return t&&(s=s.times(2<this.d.length-2};m.isNaN=function(){return!this.s};m.isNegative=m.isNeg=function(){return this.s<0};m.isPositive=m.isPos=function(){return this.s>0};m.isZero=function(){return!!this.d&&this.d[0]===0};m.lessThan=m.lt=function(e){return this.cmp(e)<0};m.lessThanOrEqualTo=m.lte=function(e){return this.cmp(e)<1};m.logarithm=m.log=function(e){var r,t,n,i,o,s,a,l,u=this,c=u.constructor,p=c.precision,d=c.rounding,f=5;if(e==null)e=new c(10),r=!0;else{if(e=new c(e),t=e.d,e.s<0||!t||!t[0]||e.eq(1))return new c(NaN);r=e.eq(10)}if(t=u.d,u.s<0||!t||!t[0]||u.eq(1))return new c(t&&!t[0]?-1/0:u.s!=1?NaN:t?0:1/0);if(r)if(t.length>1)o=!0;else{for(i=t[0];i%10===0;)i/=10;o=i!==1}if(w=!1,a=p+f,s=Ke(u,a),n=r?bn(c,a+10):Ke(e,a),l=L(s,n,a,1),ut(l.d,i=p,d))do if(a+=10,s=Ke(u,a),n=r?bn(c,a+10):Ke(e,a),l=L(s,n,a,1),!o){+J(l.d).slice(i+1,i+15)+1==1e14&&(l=y(l,p+1,0));break}while(ut(l.d,i+=10,d));return w=!0,y(l,p,d)};m.minus=m.sub=function(e){var r,t,n,i,o,s,a,l,u,c,p,d,f=this,h=f.constructor;if(e=new h(e),!f.d||!e.d)return!f.s||!e.s?e=new h(NaN):f.d?e.s=-e.s:e=new h(e.d||f.s!==e.s?f:NaN),e;if(f.s!=e.s)return e.s=-e.s,f.plus(e);if(u=f.d,d=e.d,a=h.precision,l=h.rounding,!u[0]||!d[0]){if(d[0])e.s=-e.s;else if(u[0])e=new h(f);else return new h(l===3?-0:0);return w?y(e,a,l):e}if(t=X(e.e/E),c=X(f.e/E),u=u.slice(),o=c-t,o){for(p=o<0,p?(r=u,o=-o,s=d.length):(r=d,t=c,s=u.length),n=Math.max(Math.ceil(a/E),s)+2,o>n&&(o=n,r.length=1),r.reverse(),n=o;n--;)r.push(0);r.reverse()}else{for(n=u.length,s=d.length,p=n0;--n)u[s++]=0;for(n=d.length;n>o;){if(u[--n]s?o+1:s+1,i>s&&(i=s,t.length=1),t.reverse();i--;)t.push(0);t.reverse()}for(s=u.length,i=c.length,s-i<0&&(i=s,t=c,c=u,u=t),r=0;i;)r=(u[--i]=u[i]+c[i]+r)/fe|0,u[i]%=fe;for(r&&(u.unshift(r),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=wn(u,n),w?y(e,a,l):e};m.precision=m.sd=function(e){var r,t=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(He+e);return t.d?(r=Us(t.d),e&&t.e+1>r&&(r=t.e+1)):r=NaN,r};m.round=function(){var e=this,r=e.constructor;return y(new r(e),e.e+1,r.rounding)};m.sine=m.sin=function(){var e,r,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+Math.max(t.e,t.sd())+E,n.rounding=1,t=Sp(n,Js(n,t)),n.precision=e,n.rounding=r,y(Ne>2?t.neg():t,e,r,!0)):new n(NaN)};m.squareRoot=m.sqrt=function(){var e,r,t,n,i,o,s=this,a=s.d,l=s.e,u=s.s,c=s.constructor;if(u!==1||!a||!a[0])return new c(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(w=!1,u=Math.sqrt(+s),u==0||u==1/0?(r=J(a),(r.length+l)%2==0&&(r+="0"),u=Math.sqrt(r),l=X((l+1)/2)-(l<0||l%2),u==1/0?r="5e"+l:(r=u.toExponential(),r=r.slice(0,r.indexOf("e")+1)+l),n=new c(r)):n=new c(u.toString()),t=(l=c.precision)+3;;)if(o=n,n=o.plus(L(s,o,t+2,1)).times(.5),J(o.d).slice(0,t)===(r=J(n.d)).slice(0,t))if(r=r.slice(t-3,t+1),r=="9999"||!i&&r=="4999"){if(!i&&(y(o,l+1,0),o.times(o).eq(s))){n=o;break}t+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(y(n,l+1,1),e=!n.times(n).eq(s));break}return w=!0,y(n,l,c.rounding,e)};m.tangent=m.tan=function(){var e,r,t=this,n=t.constructor;return t.isFinite()?t.isZero()?new n(t):(e=n.precision,r=n.rounding,n.precision=e+10,n.rounding=1,t=t.sin(),t.s=1,t=L(t,new n(1).minus(t.times(t)).sqrt(),e+10,0),n.precision=e,n.rounding=r,y(Ne==2||Ne==4?t.neg():t,e,r,!0)):new n(NaN)};m.times=m.mul=function(e){var r,t,n,i,o,s,a,l,u,c=this,p=c.constructor,d=c.d,f=(e=new p(e)).d;if(e.s*=c.s,!d||!d[0]||!f||!f[0])return new p(!e.s||d&&!d[0]&&!f||f&&!f[0]&&!d?NaN:!d||!f?e.s/0:e.s*0);for(t=X(c.e/E)+X(e.e/E),l=d.length,u=f.length,l=0;){for(r=0,i=l+n;i>n;)a=o[i]+f[n]*d[i-n-1]+r,o[i--]=a%fe|0,r=a/fe|0;o[i]=(o[i]+r)%fe|0}for(;!o[--s];)o.pop();return r?++t:o.shift(),e.d=o,e.e=wn(o,t),w?y(e,p.precision,p.rounding):e};m.toBinary=function(e,r){return Ji(this,2,e,r)};m.toDecimalPlaces=m.toDP=function(e,r){var t=this,n=t.constructor;return t=new n(t),e===void 0?t:(ne(e,0,Ye),r===void 0?r=n.rounding:ne(r,0,8),y(t,e+t.e+1,r))};m.toExponential=function(e,r){var t,n=this,i=n.constructor;return e===void 0?t=ve(n,!0):(ne(e,0,Ye),r===void 0?r=i.rounding:ne(r,0,8),n=y(new i(n),e+1,r),t=ve(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+t:t};m.toFixed=function(e,r){var t,n,i=this,o=i.constructor;return e===void 0?t=ve(i):(ne(e,0,Ye),r===void 0?r=o.rounding:ne(r,0,8),n=y(new o(i),e+i.e+1,r),t=ve(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+t:t};m.toFraction=function(e){var r,t,n,i,o,s,a,l,u,c,p,d,f=this,h=f.d,g=f.constructor;if(!h)return new g(f);if(u=t=new g(1),n=l=new g(0),r=new g(n),o=r.e=Us(h)-f.e-1,s=o%E,r.d[0]=U(10,s<0?E+s:s),e==null)e=o>0?r:u;else{if(a=new g(e),!a.isInt()||a.lt(u))throw Error(He+a);e=a.gt(r)?o>0?r:u:a}for(w=!1,a=new g(J(h)),c=g.precision,g.precision=o=h.length*E*2;p=L(a,r,0,1,1),i=t.plus(p.times(n)),i.cmp(e)!=1;)t=n,n=i,i=u,u=l.plus(p.times(i)),l=i,i=r,r=a.minus(p.times(i)),a=i;return i=L(e.minus(t),n,0,1,1),l=l.plus(i.times(u)),t=t.plus(i.times(n)),l.s=u.s=f.s,d=L(u,n,o,1).minus(f).abs().cmp(L(l,t,o,1).minus(f).abs())<1?[u,n]:[l,t],g.precision=c,w=!0,d};m.toHexadecimal=m.toHex=function(e,r){return Ji(this,16,e,r)};m.toNearest=function(e,r){var t=this,n=t.constructor;if(t=new n(t),e==null){if(!t.d)return t;e=new n(1),r=n.rounding}else{if(e=new n(e),r===void 0?r=n.rounding:ne(r,0,8),!t.d)return e.s?t:e;if(!e.d)return e.s&&(e.s=t.s),e}return e.d[0]?(w=!1,t=L(t,e,0,r,1).times(e),w=!0,y(t)):(e.s=t.s,t=e),t};m.toNumber=function(){return+this};m.toOctal=function(e,r){return Ji(this,8,e,r)};m.toPower=m.pow=function(e){var r,t,n,i,o,s,a=this,l=a.constructor,u=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(U(+a,u));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return y(a,n,o);if(r=X(e.e/E),r>=e.d.length-1&&(t=u<0?-u:u)<=xp)return i=Gs(l,a,t,n),e.s<0?new l(1).div(i):y(i,n,o);if(s=a.s,s<0){if(rl.maxE+1||r0?s/0:0):(w=!1,l.rounding=a.s=1,t=Math.min(12,(r+"").length),i=Wi(e.times(Ke(a,n+t)),n),i.d&&(i=y(i,n+5,1),ut(i.d,n,o)&&(r=n+10,i=y(Wi(e.times(Ke(a,r+t)),r),r+5,1),+J(i.d).slice(n+1,n+15)+1==1e14&&(i=y(i,n+1,0)))),i.s=s,w=!0,l.rounding=o,y(i,n,o))};m.toPrecision=function(e,r){var t,n=this,i=n.constructor;return e===void 0?t=ve(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ne(e,1,Ye),r===void 0?r=i.rounding:ne(r,0,8),n=y(new i(n),e,r),t=ve(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+t:t};m.toSignificantDigits=m.toSD=function(e,r){var t=this,n=t.constructor;return e===void 0?(e=n.precision,r=n.rounding):(ne(e,1,Ye),r===void 0?r=n.rounding:ne(r,0,8)),y(new n(t),e,r)};m.toString=function(){var e=this,r=e.constructor,t=ve(e,e.e<=r.toExpNeg||e.e>=r.toExpPos);return e.isNeg()&&!e.isZero()?"-"+t:t};m.truncated=m.trunc=function(){return y(new this.constructor(this),this.e+1,1)};m.valueOf=m.toJSON=function(){var e=this,r=e.constructor,t=ve(e,e.e<=r.toExpNeg||e.e>=r.toExpPos);return e.isNeg()?"-"+t:t};function J(e){var r,t,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,r=1;rt)throw Error(He+e)}function ut(e,r,t,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--r;return--r<0?(r+=E,i=0):(i=Math.ceil((r+1)/E),r%=E),o=U(10,E-r),a=e[i]%o|0,n==null?r<3?(r==0?a=a/100|0:r==1&&(a=a/10|0),s=t<4&&a==99999||t>3&&a==49999||a==5e4||a==0):s=(t<4&&a+1==o||t>3&&a+1==o/2)&&(e[i+1]/o/100|0)==U(10,r-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:r<4?(r==0?a=a/1e3|0:r==1?a=a/100|0:r==2&&(a=a/10|0),s=(n||t<4)&&a==9999||!n&&t>3&&a==4999):s=((n||t<4)&&a+1==o||!n&&t>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==U(10,r-3)-1,s}function fn(e,r,t){for(var n,i=[0],o,s=0,a=e.length;st-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/t|0,i[n]%=t)}return i.reverse()}function Pp(e,r){var t,n,i;if(r.isZero())return r;n=r.d.length,n<32?(t=Math.ceil(n/3),i=(1/xn(4,t)).toString()):(t=16,i="2.3283064365386962890625e-10"),e.precision+=t,r=Tr(e,1,r.times(i),new e(1));for(var o=t;o--;){var s=r.times(r);r=s.times(s).minus(s).times(8).plus(1)}return e.precision-=t,r}var L=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function r(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function t(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var u,c,p,d,f,h,g,I,T,S,b,D,me,se,Kr,j,te,Ae,K,fr,Vt=n.constructor,ti=n.s==i.s?1:-1,H=n.d,k=i.d;if(!H||!H[0]||!k||!k[0])return new Vt(!n.s||!i.s||(H?k&&H[0]==k[0]:!k)?NaN:H&&H[0]==0||!k?ti*0:ti/0);for(l?(f=1,c=n.e-i.e):(l=fe,f=E,c=X(n.e/f)-X(i.e/f)),K=k.length,te=H.length,T=new Vt(ti),S=T.d=[],p=0;k[p]==(H[p]||0);p++);if(k[p]>(H[p]||0)&&c--,o==null?(se=o=Vt.precision,s=Vt.rounding):a?se=o+(n.e-i.e)+1:se=o,se<0)S.push(1),h=!0;else{if(se=se/f+2|0,p=0,K==1){for(d=0,k=k[0],se++;(p1&&(k=e(k,d,l),H=e(H,d,l),K=k.length,te=H.length),j=K,b=H.slice(0,K),D=b.length;D=l/2&&++Ae;do d=0,u=r(k,b,K,D),u<0?(me=b[0],K!=D&&(me=me*l+(b[1]||0)),d=me/Ae|0,d>1?(d>=l&&(d=l-1),g=e(k,d,l),I=g.length,D=b.length,u=r(g,b,I,D),u==1&&(d--,t(g,K=10;d/=10)p++;T.e=p+c*f-1,y(T,a?o+T.e+1:o,s,h)}return T}}();function y(e,r,t,n){var i,o,s,a,l,u,c,p,d,f=e.constructor;e:if(r!=null){if(p=e.d,!p)return e;for(i=1,a=p[0];a>=10;a/=10)i++;if(o=r-i,o<0)o+=E,s=r,c=p[d=0],l=c/U(10,i-s-1)%10|0;else if(d=Math.ceil((o+1)/E),a=p.length,d>=a)if(n){for(;a++<=d;)p.push(0);c=l=0,i=1,o%=E,s=o-E+1}else break e;else{for(c=a=p[d],i=1;a>=10;a/=10)i++;o%=E,s=o-E+i,l=s<0?0:c/U(10,i-s-1)%10|0}if(n=n||r<0||p[d+1]!==void 0||(s<0?c:c%U(10,i-s-1)),u=t<4?(l||n)&&(t==0||t==(e.s<0?3:2)):l>5||l==5&&(t==4||n||t==6&&(o>0?s>0?c/U(10,i-s):0:p[d-1])%10&1||t==(e.s<0?8:7)),r<1||!p[0])return p.length=0,u?(r-=e.e+1,p[0]=U(10,(E-r%E)%E),e.e=-r||0):p[0]=e.e=0,e;if(o==0?(p.length=d,a=1,d--):(p.length=d+1,a=U(10,E-o),p[d]=s>0?(c/U(10,i-s)%U(10,s)|0)*a:0),u)for(;;)if(d==0){for(o=1,s=p[0];s>=10;s/=10)o++;for(s=p[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,p[0]==fe&&(p[0]=1));break}else{if(p[d]+=a,p[d]!=fe)break;p[d--]=0,a=1}for(o=p.length;p[--o]===0;)p.pop()}return w&&(e.e>f.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Je(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Je(-i-1)+o,t&&(n=t-s)>0&&(o+=Je(n))):i>=s?(o+=Je(i+1-s),t&&(n=t-i-1)>0&&(o=o+"."+Je(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Je(n))),o}function wn(e,r){var t=e[0];for(r*=E;t>=10;t/=10)r++;return r}function bn(e,r,t){if(r>vp)throw w=!0,t&&(e.precision=t),Error(qs);return y(new e(hn),r,1,!0)}function xe(e,r,t){if(r>Qi)throw Error(qs);return y(new e(yn),r,t,!0)}function Us(e){var r=e.length-1,t=r*E+1;if(r=e[r],r){for(;r%10==0;r/=10)t--;for(r=e[0];r>=10;r/=10)t++}return t}function Je(e){for(var r="";e--;)r+="0";return r}function Gs(e,r,t,n){var i,o=new e(1),s=Math.ceil(n/E+4);for(w=!1;;){if(t%2&&(o=o.times(r),Fs(o.d,s)&&(i=!0)),t=X(t/2),t===0){t=o.d.length-1,i&&o.d[t]===0&&++o.d[t];break}r=r.times(r),Fs(r.d,s)}return w=!0,o}function Ls(e){return e.d[e.d.length-1]&1}function Qs(e,r,t){for(var n,i,o=new e(r[0]),s=0;++s17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(r==null?(w=!1,l=h):l=r,a=new d(.03125);e.e>-2;)e=e.times(a),p+=5;for(n=Math.log(U(2,p))/Math.LN10*2+5|0,l+=n,t=o=s=new d(1),d.precision=l;;){if(o=y(o.times(e),l,1),t=t.times(++c),a=s.plus(L(o,t,l,1)),J(a.d).slice(0,l)===J(s.d).slice(0,l)){for(i=p;i--;)s=y(s.times(s),l,1);if(r==null)if(u<3&&ut(s.d,l-n,f,u))d.precision=l+=10,t=o=a=new d(1),c=0,u++;else return y(s,d.precision=h,f,w=!0);else return d.precision=h,s}s=a}}function Ke(e,r){var t,n,i,o,s,a,l,u,c,p,d,f=1,h=10,g=e,I=g.d,T=g.constructor,S=T.rounding,b=T.precision;if(g.s<0||!I||!I[0]||!g.e&&I[0]==1&&I.length==1)return new T(I&&!I[0]?-1/0:g.s!=1?NaN:I?0:g);if(r==null?(w=!1,c=b):c=r,T.precision=c+=h,t=J(I),n=t.charAt(0),Math.abs(o=g.e)<15e14){for(;n<7&&n!=1||n==1&&t.charAt(1)>3;)g=g.times(e),t=J(g.d),n=t.charAt(0),f++;o=g.e,n>1?(g=new T("0."+t),o++):g=new T(n+"."+t.slice(1))}else return u=bn(T,c+2,b).times(o+""),g=Ke(new T(n+"."+t.slice(1)),c-h).plus(u),T.precision=b,r==null?y(g,b,S,w=!0):g;for(p=g,l=s=g=L(g.minus(1),g.plus(1),c,1),d=y(g.times(g),c,1),i=3;;){if(s=y(s.times(d),c,1),u=l.plus(L(s,new T(i),c,1)),J(u.d).slice(0,c)===J(l.d).slice(0,c))if(l=l.times(2),o!==0&&(l=l.plus(bn(T,c+2,b).times(o+""))),l=L(l,new T(f),c,1),r==null)if(ut(l.d,c-h,S,a))T.precision=c+=h,u=s=g=L(p.minus(1),p.plus(1),c,1),d=y(g.times(g),c,1),i=a=1;else return y(l,T.precision=b,S,w=!0);else return T.precision=b,l;l=u,i+=2}}function Ws(e){return String(e.s*e.s/0)}function gn(e,r){var t,n,i;for((t=r.indexOf("."))>-1&&(r=r.replace(".","")),(n=r.search(/e/i))>0?(t<0&&(t=n),t+=+r.slice(n+1),r=r.substring(0,n)):t<0&&(t=r.length),n=0;r.charCodeAt(n)===48;n++);for(i=r.length;r.charCodeAt(i-1)===48;--i);if(r=r.slice(n,i),r){if(i-=n,e.e=t=t-n-1,e.d=[],n=(t+1)%E,t<0&&(n+=E),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(r=r.replace(/(\d)_(?=\d)/g,"$1"),Bs.test(r))return gn(e,r)}else if(r==="Infinity"||r==="NaN")return+r||(e.s=NaN),e.e=NaN,e.d=null,e;if(Ep.test(r))t=16,r=r.toLowerCase();else if(bp.test(r))t=2;else if(wp.test(r))t=8;else throw Error(He+r);for(o=r.search(/p/i),o>0?(l=+r.slice(o+1),r=r.substring(2,o)):r=r.slice(2),o=r.indexOf("."),s=o>=0,n=e.constructor,s&&(r=r.replace(".",""),a=r.length,o=a-o,i=Gs(n,new n(t),o,o*2)),u=fn(r,t,fe),c=u.length-1,o=c;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=wn(u,c),e.d=u,w=!1,s&&(e=L(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?U(2,l):Le.pow(2,l))),w=!0,e)}function Sp(e,r){var t,n=r.d.length;if(n<3)return r.isZero()?r:Tr(e,2,r,r);t=1.4*Math.sqrt(n),t=t>16?16:t|0,r=r.times(1/xn(5,t)),r=Tr(e,2,r,r);for(var i,o=new e(5),s=new e(16),a=new e(20);t--;)i=r.times(r),r=r.times(o.plus(i.times(s.times(i).minus(a))));return r}function Tr(e,r,t,n,i){var o,s,a,l,u=1,c=e.precision,p=Math.ceil(c/E);for(w=!1,l=t.times(t),a=new e(n);;){if(s=L(a.times(l),new e(r++*r++),c,1),a=i?n.plus(s):n.minus(s),n=L(s.times(l),new e(r++*r++),c,1),s=a.plus(n),s.d[p]!==void 0){for(o=p;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return w=!0,s.d.length=p+1,s}function xn(e,r){for(var t=e;--r;)t*=e;return t}function Js(e,r){var t,n=r.s<0,i=xe(e,e.precision,1),o=i.times(.5);if(r=r.abs(),r.lte(o))return Ne=n?4:1,r;if(t=r.divToInt(i),t.isZero())Ne=n?3:2;else{if(r=r.minus(t.times(i)),r.lte(o))return Ne=Ls(t)?n?2:3:n?4:1,r;Ne=Ls(t)?n?1:4:n?3:2}return r.minus(i).abs()}function Ji(e,r,t,n){var i,o,s,a,l,u,c,p,d,f=e.constructor,h=t!==void 0;if(h?(ne(t,1,Ye),n===void 0?n=f.rounding:ne(n,0,8)):(t=f.precision,n=f.rounding),!e.isFinite())c=Ws(e);else{for(c=ve(e),s=c.indexOf("."),h?(i=2,r==16?t=t*4-3:r==8&&(t=t*3-2)):i=r,s>=0&&(c=c.replace(".",""),d=new f(1),d.e=c.length-s,d.d=fn(ve(d),10,i),d.e=d.d.length),p=fn(c,10,i),o=l=p.length;p[--l]==0;)p.pop();if(!p[0])c=h?"0p+0":"0";else{if(s<0?o--:(e=new f(e),e.d=p,e.e=o,e=L(e,d,t,n,0,i),p=e.d,o=e.e,u=$s),s=p[t],a=i/2,u=u||p[t+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&p[t-1]&1||n===(e.s<0?8:7)),p.length=t,u)for(;++p[--t]>i-1;)p[t]=0,t||(++o,p.unshift(1));for(l=p.length;!p[l-1];--l);for(s=0,c="";s1)if(r==16||r==8){for(s=r==16?4:3,--l;l%s;l++)c+="0";for(p=fn(c,i,r),l=p.length;!p[l-1];--l);for(s=1,c="1.";sl)for(o-=l;o--;)c+="0";else or)return e.length=r,!0}function Rp(e){return new this(e).abs()}function Ap(e){return new this(e).acos()}function Cp(e){return new this(e).acosh()}function Ip(e,r){return new this(e).plus(r)}function Dp(e){return new this(e).asin()}function Op(e){return new this(e).asinh()}function kp(e){return new this(e).atan()}function _p(e){return new this(e).atanh()}function Np(e,r){e=new this(e),r=new this(r);var t,n=this.precision,i=this.rounding,o=n+4;return!e.s||!r.s?t=new this(NaN):!e.d&&!r.d?(t=xe(this,o,1).times(r.s>0?.25:.75),t.s=e.s):!r.d||e.isZero()?(t=r.s<0?xe(this,n,i):new this(0),t.s=e.s):!e.d||r.isZero()?(t=xe(this,o,1).times(.5),t.s=e.s):r.s<0?(this.precision=o,this.rounding=1,t=this.atan(L(e,r,o,1)),r=xe(this,o,1),this.precision=n,this.rounding=i,t=e.s<0?t.minus(r):t.plus(r)):t=this.atan(L(e,r,o,1)),t}function Lp(e){return new this(e).cbrt()}function Fp(e){return y(e=new this(e),e.e+1,2)}function Mp(e,r,t){return new this(e).clamp(r,t)}function $p(e){if(!e||typeof e!="object")throw Error(En+"Object expected");var r,t,n,i=e.defaults===!0,o=["precision",1,Ye,"rounding",0,8,"toExpNeg",-Pr,0,"toExpPos",0,Pr,"maxE",0,Pr,"minE",-Pr,0,"modulo",0,9];for(r=0;r=o[r+1]&&n<=o[r+2])this[t]=n;else throw Error(He+t+": "+n);if(t="crypto",i&&(this[t]=Gi[t]),(n=e[t])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[t]=!0;else throw Error(Vs);else this[t]=!1;else throw Error(He+t+": "+n);return this}function qp(e){return new this(e).cos()}function Vp(e){return new this(e).cosh()}function Ks(e){var r,t,n;function i(o){var s,a,l,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,Ms(o)){u.s=o.s,w?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e=10;a/=10)s++;w?s>i.maxE?(u.e=NaN,u.d=null):s=429e7?r[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(r=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(r,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(Vs);else for(;o=10;i/=10)n++;nRr,datamodelEnumToSchemaEnum:()=>pd});function pd(e){return{name:e.name,values:e.values.map(r=>r.name)}}var Rr=(b=>(b.findUnique="findUnique",b.findUniqueOrThrow="findUniqueOrThrow",b.findFirst="findFirst",b.findFirstOrThrow="findFirstOrThrow",b.findMany="findMany",b.create="create",b.createMany="createMany",b.createManyAndReturn="createManyAndReturn",b.update="update",b.updateMany="updateMany",b.updateManyAndReturn="updateManyAndReturn",b.upsert="upsert",b.delete="delete",b.deleteMany="deleteMany",b.groupBy="groupBy",b.count="count",b.aggregate="aggregate",b.findRaw="findRaw",b.aggregateRaw="aggregateRaw",b))(Rr||{});var Xs=O(Di());var Zs=O(require("node:fs"));var Hs={keyword:De,entity:De,value:e=>W(nr(e)),punctuation:nr,directive:De,function:De,variable:e=>W(nr(e)),string:e=>W(qe(e)),boolean:Ie,number:De,comment:Hr};var dd=e=>e,vn={},md=0,v={manual:vn.Prism&&vn.Prism.manual,disableWorkerMessageHandler:vn.Prism&&vn.Prism.disableWorkerMessageHandler,util:{encode:function(e){if(e instanceof ge){let r=e;return new ge(r.type,v.util.encode(r.content),r.alias)}else return Array.isArray(e)?e.map(v.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(Ae instanceof ge)continue;if(me&&j!=r.length-1){S.lastIndex=te;var p=S.exec(e);if(!p)break;var c=p.index+(D?p[1].length:0),d=p.index+p[0].length,a=j,l=te;for(let k=r.length;a=l&&(++j,te=l);if(r[j]instanceof ge)continue;u=a-j,Ae=e.slice(te,l),p.index-=te}else{S.lastIndex=0;var p=S.exec(Ae),u=1}if(!p){if(o)break;continue}D&&(se=p[1]?p[1].length:0);var c=p.index+se,p=p[0].slice(se),d=c+p.length,f=Ae.slice(0,c),h=Ae.slice(d);let K=[j,u];f&&(++j,te+=f.length,K.push(f));let fr=new ge(g,b?v.tokenize(p,b):p,Kr,p,me);if(K.push(fr),h&&K.push(h),Array.prototype.splice.apply(r,K),u!=1&&v.matchGrammar(e,r,t,j,te,!0,g),o)break}}}},tokenize:function(e,r){let t=[e],n=r.rest;if(n){for(let i in n)r[i]=n[i];delete r.rest}return v.matchGrammar(e,t,r,0,0,!1),t},hooks:{all:{},add:function(e,r){let t=v.hooks.all;t[e]=t[e]||[],t[e].push(r)},run:function(e,r){let t=v.hooks.all[e];if(!(!t||!t.length))for(var n=0,i;i=t[n++];)i(r)}},Token:ge};v.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/};v.languages.javascript=v.languages.extend("clike",{"class-name":[v.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/});v.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/;v.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:v.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:v.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:v.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:v.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});v.languages.markup&&v.languages.markup.tag.addInlined("script","javascript");v.languages.js=v.languages.javascript;v.languages.typescript=v.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/});v.languages.ts=v.languages.typescript;function ge(e,r,t,n,i){this.type=e,this.content=r,this.alias=t,this.length=(n||"").length|0,this.greedy=!!i}ge.stringify=function(e,r){return typeof e=="string"?e:Array.isArray(e)?e.map(function(t){return ge.stringify(t,r)}).join(""):fd(e.type)(e.content)};function fd(e){return Hs[e]||dd}function Ys(e){return gd(e,v.languages.javascript)}function gd(e,r){return v.tokenize(e,r).map(n=>ge.stringify(n)).join("")}function zs(e){return Ci(e)}var Pn=class e{firstLineNumber;lines;static read(r){let t;try{t=Zs.default.readFileSync(r,"utf-8")}catch{return null}return e.fromContent(t)}static fromContent(r){let t=r.split(/\r?\n/);return new e(1,t)}constructor(r,t){this.firstLineNumber=r,this.lines=t}get lastLineNumber(){return this.firstLineNumber+this.lines.length-1}mapLineAt(r,t){if(rthis.lines.length+this.firstLineNumber)return this;let n=r-this.firstLineNumber,i=[...this.lines];return i[n]=t(i[n]),new e(this.firstLineNumber,i)}mapLines(r){return new e(this.firstLineNumber,this.lines.map((t,n)=>r(t,this.firstLineNumber+n)))}lineAt(r){return this.lines[r-this.firstLineNumber]}prependSymbolAt(r,t){return this.mapLines((n,i)=>i===r?`${t} ${n}`:` ${n}`)}slice(r,t){let n=this.lines.slice(r-1,t).join(` +`);return new e(r,zs(n).split(` +`))}highlight(){let r=Ys(this.toString());return new e(this.firstLineNumber,r.split(` +`))}toString(){return this.lines.join(` +`)}};var hd={red:ce,gray:Hr,dim:Ce,bold:W,underline:Y,highlightSource:e=>e.highlight()},yd={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function bd({message:e,originalMethod:r,isPanic:t,callArguments:n}){return{functionName:`prisma.${r}()`,message:e,isPanic:t??!1,callArguments:n}}function Ed({callsite:e,message:r,originalMethod:t,isPanic:n,callArguments:i},o){let s=bd({message:r,originalMethod:t,isPanic:n,callArguments:i});if(!e||typeof window<"u"||process.env.NODE_ENV==="production")return s;let a=e.getLocation();if(!a||!a.lineNumber||!a.columnNumber)return s;let l=Math.max(1,a.lineNumber-3),u=Pn.read(a.fileName)?.slice(l,a.lineNumber),c=u?.lineAt(a.lineNumber);if(u&&c){let p=xd(c),d=wd(c);if(!d)return s;s.functionName=`${d.code})`,s.location=a,n||(u=u.mapLineAt(a.lineNumber,h=>h.slice(0,d.openingBraceIndex))),u=o.highlightSource(u);let f=String(u.lastLineNumber).length;if(s.contextLines=u.mapLines((h,g)=>o.gray(String(g).padStart(f))+" "+h).mapLines(h=>o.dim(h)).prependSymbolAt(a.lineNumber,o.bold(o.red("\u2192"))),i){let h=p+f+1;h+=2,s.callArguments=(0,Xs.default)(i,h).slice(h)}}return s}function wd(e){let r=Object.keys(Rr).join("|"),n=new RegExp(String.raw`\.(${r})\(`).exec(e);if(n){let i=n.index+n[0].length,o=e.lastIndexOf(" ",n.index)+1;return{code:e.slice(o,i),openingBraceIndex:i}}return null}function xd(e){let r=0;for(let t=0;t"Unknown error")}function ia(e){return e.errors.flatMap(r=>r.kind==="Union"?ia(r):[r])}function Td(e){let r=new Map,t=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){t.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=r.get(i);o?r.set(i,{...n,argument:{...n.argument,typeNames:Sd(o.argument.typeNames,n.argument.typeNames)}}):r.set(i,n)}return t.push(...r.values()),t}function Sd(e,r){return[...new Set(e.concat(r))]}function Rd(e){return ji(e,(r,t)=>{let n=ra(r),i=ra(t);return n!==i?n-i:ta(r)-ta(t)})}function ra(e){let r=0;return Array.isArray(e.selectionPath)&&(r+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(r+=e.argumentPath.length),r}function ta(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}var le=class{constructor(r,t){this.name=r;this.value=t}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(r){let{colors:{green:t}}=r.context;r.addMarginSymbol(t(this.isRequired?"+":"?")),r.write(t(this.name)),this.isRequired||r.write(t("?")),r.write(t(": ")),typeof this.value=="string"?r.write(t(this.value)):r.write(this.value)}};sa();var Ar=class{constructor(r=0,t){this.context=t;this.currentIndent=r}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(r){return typeof r=="string"?this.currentLine+=r:r.write(this),this}writeJoined(r,t,n=(i,o)=>o.write(i)){let i=t.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(r){return this.marginSymbol=r,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let r=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+r.slice(1):r}};oa();var Rn=class{constructor(r){this.value=r}write(r){r.write(this.value)}markAsError(){this.value.markAsError()}};var An=e=>e,Cn={bold:An,red:An,green:An,dim:An,enabled:!1},aa={bold:W,red:ce,green:qe,dim:Ce,enabled:!0},Cr={write(e){e.writeLine(",")}};var Pe=class{constructor(r){this.contents=r}isUnderlined=!1;color=r=>r;underline(){return this.isUnderlined=!0,this}setColor(r){return this.color=r,this}write(r){let t=r.getCurrentLineLength();r.write(this.color(this.contents)),this.isUnderlined&&r.afterNextNewline(()=>{r.write(" ".repeat(t)).writeLine(this.color("~".repeat(this.contents.length)))})}};var ze=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var Ir=class extends ze{items=[];addItem(r){return this.items.push(new Rn(r)),this}getField(r){return this.items[r]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(t=>t.value.getPrintWidth()))+2}write(r){if(this.items.length===0){this.writeEmpty(r);return}this.writeWithItems(r)}writeEmpty(r){let t=new Pe("[]");this.hasError&&t.setColor(r.context.colors.red).underline(),r.write(t)}writeWithItems(r){let{colors:t}=r.context;r.writeLine("[").withIndent(()=>r.writeJoined(Cr,this.items).newLine()).write("]"),this.hasError&&r.afterNextNewline(()=>{r.writeLine(t.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var Dr=class e extends ze{fields={};suggestions=[];addField(r){this.fields[r.name]=r}addSuggestion(r){this.suggestions.push(r)}getField(r){return this.fields[r]}getDeepField(r){let[t,...n]=r,i=this.getField(t);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof Ir&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(r){return r.length===0?this:this.getDeepField(r)?.value}hasField(r){return!!this.getField(r)}removeAllFields(){this.fields={}}removeField(r){delete this.fields[r]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(r){return this.getField(r)?.value}getDeepSubSelectionValue(r){let t=this;for(let n of r){if(!(t instanceof e))return;let i=t.getSubSelectionValue(n);if(!i)return;t=i}return t}getDeepSelectionParent(r){let t=this.getSelectionParent();if(!t)return;let n=t;for(let i of r){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let r=this.getField("select")?.value.asObject();if(r)return{kind:"select",value:r};let t=this.getField("include")?.value.asObject();if(t)return{kind:"include",value:t}}getSubSelectionValue(r){return this.getSelectionParent()?.value.fields[r].value}getPrintWidth(){let r=Object.values(this.fields);return r.length==0?2:Math.max(...r.map(n=>n.getPrintWidth()))+2}write(r){let t=Object.values(this.fields);if(t.length===0&&this.suggestions.length===0){this.writeEmpty(r);return}this.writeWithContents(r,t)}asObject(){return this}writeEmpty(r){let t=new Pe("{}");this.hasError&&t.setColor(r.context.colors.red).underline(),r.write(t)}writeWithContents(r,t){r.writeLine("{").withIndent(()=>{r.writeJoined(Cr,[...t,...this.suggestions]).newLine()}),r.write("}"),this.hasError&&r.afterNextNewline(()=>{r.writeLine(r.context.colors.red("~".repeat(this.getPrintWidth())))})}};var Q=class extends ze{constructor(t){super();this.text=t}getPrintWidth(){return this.text.length}write(t){let n=new Pe(this.text);this.hasError&&n.underline().setColor(t.context.colors.red),t.write(n)}asObject(){}};var pt=class{fields=[];addField(r,t){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${r}: ${t}`))).addMarginSymbol(i(o("+")))}}),this}write(r){let{colors:{green:t}}=r.context;r.writeLine(t("{")).withIndent(()=>{r.writeJoined(Cr,this.fields).newLine()}).write(t("}")).addMarginSymbol(t("+"))}};function Sn(e,r,t){switch(e.kind){case"MutuallyExclusiveFields":Ad(e,r);break;case"IncludeOnScalar":Cd(e,r);break;case"EmptySelection":Id(e,r,t);break;case"UnknownSelectionField":_d(e,r);break;case"InvalidSelectionValue":Nd(e,r);break;case"UnknownArgument":Ld(e,r);break;case"UnknownInputField":Fd(e,r);break;case"RequiredArgumentMissing":Md(e,r);break;case"InvalidArgumentType":$d(e,r);break;case"InvalidArgumentValue":qd(e,r);break;case"ValueTooLarge":Vd(e,r);break;case"SomeFieldsMissing":jd(e,r);break;case"TooManyFieldsGiven":Bd(e,r);break;case"Union":na(e,r,t);break;default:throw new Error("not implemented: "+e.kind)}}function Ad(e,r){let t=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();t&&(t.getField(e.firstField)?.markAsError(),t.getField(e.secondField)?.markAsError()),r.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function Cd(e,r){let[t,n]=Or(e.selectionPath),i=e.outputType,o=r.arguments.getDeepSelectionParent(t)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new le(s.name,"true"));r.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${dt(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function Id(e,r,t){let n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Dd(e,r,i);return}if(n.hasField("select")){Od(e,r);return}}if(t?.[We(e.outputType.name)]){kd(e,r);return}r.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Dd(e,r,t){t.removeAllFields();for(let n of e.outputType.fields)t.addSuggestion(new le(n.name,"false"));r.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function Od(e,r){let t=e.outputType,n=r.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),pa(n,t)),r.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(t.name)} must not be empty. ${dt(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(t.name)} needs ${o.bold("at least one truthy value")}.`)}function kd(e,r){let t=new pt;for(let i of e.outputType.fields)i.isRelation||t.addField(i.name,"false");let n=new le("omit",t).makeRequired();if(e.selectionPath.length===0)r.arguments.addSuggestion(n);else{let[i,o]=Or(e.selectionPath),a=r.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new Dr;l.addSuggestion(n),a.value=l}}r.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function _d(e,r){let t=da(e.selectionPath,r);if(t.parentKind!=="unknown"){t.field.markAsError();let n=t.parent;switch(t.parentKind){case"select":pa(n,e.outputType);break;case"include":Ud(n,e.outputType);break;case"omit":Gd(n,e.outputType);break}}r.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${t.fieldName}\``)}`];return t.parentKind!=="unknown"&&i.push(`for ${n.bold(t.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(dt(n)),i.join(" ")})}function Nd(e,r){let t=da(e.selectionPath,r);t.parentKind!=="unknown"&&t.field.value.markAsError(),r.addErrorMessage(n=>`Invalid value for selection field \`${n.red(t.fieldName)}\`: ${e.underlyingError}`)}function Ld(e,r){let t=e.argumentPath[0],n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(t)?.markAsError(),Qd(n,e.arguments)),r.addErrorMessage(i=>ua(i,t,e.arguments.map(o=>o.name)))}function Fd(e,r){let[t,n]=Or(e.argumentPath),i=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(t)?.asObject();o&&ma(o,e.inputType)}r.addErrorMessage(o=>ua(o,n,e.inputType.fields.map(s=>s.name)))}function ua(e,r,t){let n=[`Unknown argument \`${e.red(r)}\`.`],i=Jd(r,t);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),t.length>0&&n.push(dt(e)),n.join(" ")}function Md(e,r){let t;r.addErrorMessage(l=>t?.value instanceof Q&&t.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=Or(e.argumentPath),s=new pt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(t=a.getField(o),t&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new le(o,s).makeRequired())}else{let l=e.inputTypes.map(ca).join(" | ");a.addSuggestion(new le(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=Or(e.dependentArgumentPath);r.addErrorMessage(u=>`Argument \`${u.green(o)}\` is required because argument \`${u.green(l)}\` was provided.`)}}}function ca(e){return e.kind==="list"?`${ca(e.elementType)}[]`:e.name}function $d(e,r){let t=e.argument.name,n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),r.addErrorMessage(i=>{let o=In("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(t)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function qd(e,r){let t=e.argument.name,n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),r.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(t)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=In("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function Vd(e,r){let t=e.argument.name,n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof Q&&(i=s.text)}r.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(t)}\``),s.join(" ")})}function jd(e,r){let t=e.argumentPath[e.argumentPath.length-1],n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&ma(i,e.inputType)}r.addErrorMessage(i=>{let o=[`Argument \`${i.bold(t)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${In("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(dt(i)),o.join(" ")})}function Bd(e,r){let t=e.argumentPath[e.argumentPath.length-1],n=r.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}r.addErrorMessage(o=>{let s=[`Argument \`${o.bold(t)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${In("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function pa(e,r){for(let t of r.fields)e.hasField(t.name)||e.addSuggestion(new le(t.name,"true"))}function Ud(e,r){for(let t of r.fields)t.isRelation&&!e.hasField(t.name)&&e.addSuggestion(new le(t.name,"true"))}function Gd(e,r){for(let t of r.fields)!e.hasField(t.name)&&!t.isRelation&&e.addSuggestion(new le(t.name,"true"))}function Qd(e,r){for(let t of r)e.hasField(t.name)||e.addSuggestion(new le(t.name,t.typeNames.join(" | ")))}function da(e,r){let[t,n]=Or(e),i=r.arguments.getDeepSubSelectionValue(t)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function ma(e,r){if(r.kind==="object")for(let t of r.fields)e.hasField(t.name)||e.addSuggestion(new le(t.name,t.typeNames.join(" | ")))}function Or(e){let r=[...e],t=r.pop();if(!t)throw new Error("unexpected empty path");return[r,t]}function dt({green:e,enabled:r}){return"Available options are "+(r?`listed in ${e("green")}`:"marked with ?")+"."}function In(e,r){if(r.length===1)return r[0];let t=[...r],n=t.pop();return`${t.join(", ")} ${e} ${n}`}var Wd=3;function Jd(e,r){let t=1/0,n;for(let i of r){let o=(0,la.default)(e,i);o>Wd||o`}};function kr(e){return e instanceof mt}var Dn=Symbol(),Yi=new WeakMap,Me=class{constructor(r){r===Dn?Yi.set(this,`Prisma.${this._getName()}`):Yi.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Yi.get(this)}},ft=class extends Me{_getNamespace(){return"NullTypes"}},gt=class extends ft{#e};zi(gt,"DbNull");var ht=class extends ft{#e};zi(ht,"JsonNull");var yt=class extends ft{#e};zi(yt,"AnyNull");var On={classes:{DbNull:gt,JsonNull:ht,AnyNull:yt},instances:{DbNull:new gt(Dn),JsonNull:new ht(Dn),AnyNull:new yt(Dn)}};function zi(e,r){Object.defineProperty(e,"name",{value:r,configurable:!0})}var fa=": ",kn=class{constructor(r,t){this.name=r;this.value=t}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+fa.length}write(r){let t=new Pe(this.name);this.hasError&&t.underline().setColor(r.context.colors.red),r.write(t).write(fa).write(this.value)}};var Zi=class{arguments;errorMessages=[];constructor(r){this.arguments=r}write(r){r.write(this.arguments)}addErrorMessage(r){this.errorMessages.push(r)}renderAllMessages(r){return this.errorMessages.map(t=>t(r)).join(` +`)}};function _r(e){return new Zi(ga(e))}function ga(e){let r=new Dr;for(let[t,n]of Object.entries(e)){let i=new kn(t,ha(n));r.addField(i)}return r}function ha(e){if(typeof e=="string")return new Q(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new Q(String(e));if(typeof e=="bigint")return new Q(`${e}n`);if(e===null)return new Q("null");if(e===void 0)return new Q("undefined");if(Sr(e))return new Q(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return Buffer.isBuffer(e)?new Q(`Buffer.alloc(${e.byteLength})`):new Q(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let r=mn(e)?e.toISOString():"Invalid Date";return new Q(`new Date("${r}")`)}return e instanceof Me?new Q(`Prisma.${e._getName()}`):kr(e)?new Q(`prisma.${We(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?Kd(e):typeof e=="object"?ga(e):new Q(Object.prototype.toString.call(e))}function Kd(e){let r=new Ir;for(let t of e)r.addItem(ha(t));return r}function _n(e,r){let t=r==="pretty"?aa:Cn,n=e.renderAllMessages(t),i=new Ar(0,{colors:t}).write(e).toString();return{message:n,args:i}}function Nn({args:e,errors:r,errorFormat:t,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=_r(e);for(let p of r)Sn(p,a,s);let{message:l,args:u}=_n(a,t),c=Tn({message:l,callsite:n,originalMethod:i,showColors:t==="pretty",callArguments:u});throw new Z(c,{clientVersion:o})}function Te(e){return e.replace(/^./,r=>r.toLowerCase())}function ba(e,r,t){let n=Te(t);return!r.result||!(r.result.$allModels||r.result[n])?e:Hd({...e,...ya(r.name,e,r.result.$allModels),...ya(r.name,e,r.result[n])})}function Hd(e){let r=new we,t=(n,i)=>r.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>t(o,i)):[n]));return pn(e,n=>({...n,needs:t(n.name,new Set)}))}function ya(e,r,t){return t?pn(t,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:Yd(r,o,i)})):{}}function Yd(e,r,t){let n=e?.[r]?.compute;return n?i=>t({...i,[r]:n(i)}):t}function Ea(e,r){if(!r)return e;let t={...e};for(let n of Object.values(r))if(e[n.name])for(let i of n.needs)t[i]=!0;return t}function wa(e,r){if(!r)return e;let t={...e};for(let n of Object.values(r))if(!e[n.name])for(let i of n.needs)delete t[i];return t}var Ln=class{constructor(r,t){this.extension=r;this.previous=t}computedFieldsCache=new we;modelExtensionsCache=new we;queryCallbacksCache=new we;clientExtensions=lt(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=lt(()=>{let r=this.previous?.getAllBatchQueryCallbacks()??[],t=this.extension.query?.$__internalBatch;return t?r.concat(t):r});getAllComputedFields(r){return this.computedFieldsCache.getOrCreate(r,()=>ba(this.previous?.getAllComputedFields(r),this.extension,r))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(r){return this.modelExtensionsCache.getOrCreate(r,()=>{let t=Te(r);return!this.extension.model||!(this.extension.model[t]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(r):{...this.previous?.getAllModelExtensions(r),...this.extension.model.$allModels,...this.extension.model[t]}})}getAllQueryCallbacks(r,t){return this.queryCallbacksCache.getOrCreate(`${r}:${t}`,()=>{let n=this.previous?.getAllQueryCallbacks(r,t)??[],i=[],o=this.extension.query;return!o||!(o[r]||o.$allModels||o[t]||o.$allOperations)?n:(o[r]!==void 0&&(o[r][t]!==void 0&&i.push(o[r][t]),o[r].$allOperations!==void 0&&i.push(o[r].$allOperations)),r!=="$none"&&o.$allModels!==void 0&&(o.$allModels[t]!==void 0&&i.push(o.$allModels[t]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[t]!==void 0&&i.push(o[t]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},Nr=class e{constructor(r){this.head=r}static empty(){return new e}static single(r){return new e(new Ln(r))}isEmpty(){return this.head===void 0}append(r){return new e(new Ln(r,this.head))}getAllComputedFields(r){return this.head?.getAllComputedFields(r)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(r){return this.head?.getAllModelExtensions(r)}getAllQueryCallbacks(r,t){return this.head?.getAllQueryCallbacks(r,t)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};var Fn=class{constructor(r){this.name=r}};function xa(e){return e instanceof Fn}function va(e){return new Fn(e)}var Pa=Symbol(),bt=class{constructor(r){if(r!==Pa)throw new Error("Skip instance can not be constructed directly")}ifUndefined(r){return r===void 0?Mn:r}},Mn=new bt(Pa);function Se(e){return e instanceof bt}var zd={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},Ta="explicitly `undefined` values are not allowed";function $n({modelName:e,action:r,args:t,runtimeDataModel:n,extensions:i=Nr.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:c}){let p=new Xi({runtimeDataModel:n,modelName:e,action:r,rootArgs:t,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:c});return{modelName:e,action:zd[r],query:Et(t,p)}}function Et({select:e,include:r,...t}={},n){let i=t.omit;return delete t.omit,{arguments:Ra(t,n),selection:Zd(e,r,i,n)}}function Zd(e,r,t,n){return e?(r?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):t&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),tm(e,n)):Xd(n,r,t)}function Xd(e,r,t){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),r&&em(n,r,e),rm(n,t,e),n}function em(e,r,t){for(let[n,i]of Object.entries(r)){if(Se(i))continue;let o=t.nestSelection(n);if(eo(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=t.findField(n);if(s&&s.kind!=="object"&&t.throwValidationError({kind:"IncludeOnScalar",selectionPath:t.getSelectionPath().concat(n),outputType:t.getOutputTypeDescription()}),s){e[n]=Et(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Et(i,o)}}function rm(e,r,t){let n=t.getComputedFields(),i={...t.getGlobalOmit(),...r},o=wa(i,n);for(let[s,a]of Object.entries(o)){if(Se(a))continue;eo(a,t.nestSelection(s));let l=t.findField(s);n?.[s]&&!l||(e[s]=!a)}}function tm(e,r){let t={},n=r.getComputedFields(),i=Ea(e,n);for(let[o,s]of Object.entries(i)){if(Se(s))continue;let a=r.nestSelection(o);eo(s,a);let l=r.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||Se(s)){t[o]=!1;continue}if(s===!0){l?.kind==="object"?t[o]=Et({},a):t[o]=!0;continue}t[o]=Et(s,a)}}return t}function Sa(e,r){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(vr(e)){if(mn(e))return{$type:"DateTime",value:e.toISOString()};r.throwValidationError({kind:"InvalidArgumentValue",selectionPath:r.getSelectionPath(),argumentPath:r.getArgumentPath(),argument:{name:r.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(xa(e))return{$type:"Param",value:e.name};if(kr(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return nm(e,r);if(ArrayBuffer.isView(e)){let{buffer:t,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:Buffer.from(t,n,i).toString("base64")}}if(im(e))return e.values;if(Sr(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Me){if(e!==On.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(om(e))return e.toJSON();if(typeof e=="object")return Ra(e,r);r.throwValidationError({kind:"InvalidArgumentValue",selectionPath:r.getSelectionPath(),argumentPath:r.getArgumentPath(),argument:{name:r.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Ra(e,r){if(e.$type)return{$type:"Raw",value:e};let t={};for(let n in e){let i=e[n],o=r.nestArgument(n);Se(i)||(i!==void 0?t[n]=Sa(i,o):r.isPreviewFeatureOn("strictUndefinedChecks")&&r.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:r.getSelectionPath(),argument:{name:r.getArgumentName(),typeNames:[]},underlyingError:Ta}))}return t}function nm(e,r){let t=[];for(let n=0;n({name:r.name,typeName:"boolean",isRelation:r.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(r){return this.params.previewFeatures.includes(r)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(r){return this.modelOrType?.fields.find(t=>t.name===r)}nestSelection(r){let t=this.findField(r),n=t?.kind==="object"?t.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(r)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[We(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:ar(this.params.action,"Unknown action")}}nestArgument(r){return new e({...this.params,argumentPath:this.params.argumentPath.concat(r)})}};function Aa(e){if(!e._hasPreviewFlag("metrics"))throw new Z("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var Lr=class{_client;constructor(r){this._client=r}prometheus(r){return Aa(this._client),this._client._engine.metrics({format:"prometheus",...r})}json(r){return Aa(this._client),this._client._engine.metrics({format:"json",...r})}};function Ca(e,r){let t=lt(()=>sm(r));Object.defineProperty(e,"dmmf",{get:()=>t.get()})}function sm(e){return{datamodel:{models:ro(e.models),enums:ro(e.enums),types:ro(e.types)}}}function ro(e){return Object.entries(e).map(([r,t])=>({name:r,...t}))}var to=new WeakMap,qn="$$PrismaTypedSql",wt=class{constructor(r,t){to.set(this,{sql:r,values:t}),Object.defineProperty(this,qn,{value:qn})}get sql(){return to.get(this).sql}get values(){return to.get(this).values}};function Ia(e){return(...r)=>new wt(e,r)}function Vn(e){return e!=null&&e[qn]===qn}var cu=O(Ti());var pu=require("node:async_hooks"),du=require("node:events"),mu=O(require("node:fs")),ri=O(require("node:path"));var ie=class e{constructor(r,t){if(r.length-1!==t.length)throw r.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${r.length} strings to have ${r.length-1} values`);let n=t.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=r[0];let i=0,o=0;for(;ie.getPropertyValue(t))},getPropertyDescriptor(t){return e.getPropertyDescriptor?.(t)}}}var jn={enumerable:!0,configurable:!0,writable:!0};function Bn(e){let r=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>jn,has:(t,n)=>r.has(n),set:(t,n,i)=>r.add(n)&&Reflect.set(t,n,i),ownKeys:()=>[...r]}}var ka=Symbol.for("nodejs.util.inspect.custom");function he(e,r){let t=am(r),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=t.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=t.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=_a(Reflect.ownKeys(o),t),a=_a(Array.from(t.keys()),t);return[...new Set([...s,...a,...n])]},set(o,s,a){return t.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=t.get(s);return l?l.getPropertyDescriptor?{...jn,...l?.getPropertyDescriptor(s)}:jn:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[ka]=function(){let o={...this};return delete o[ka],o},i}function am(e){let r=new Map;for(let t of e){let n=t.getKeys();for(let i of n)r.set(i,t)}return r}function _a(e,r){return e.filter(t=>r.get(t)?.has?.(t)??!0)}function Fr(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}function Mr(e,r){return{batch:e,transaction:r?.kind==="batch"?{isolationLevel:r.options.isolationLevel}:void 0}}function Na(e){if(e===void 0)return"";let r=_r(e);return new Ar(0,{colors:Cn}).write(r).toString()}var lm="P2037";function $r({error:e,user_facing_error:r},t,n){return r.error_code?new z(um(r,n),{code:r.error_code,clientVersion:t,meta:r.meta,batchRequestIdx:r.batch_request_idx}):new V(e,{clientVersion:t,batchRequestIdx:r.batch_request_idx})}function um(e,r){let t=e.message;return(r==="postgresql"||r==="postgres"||r==="mysql")&&e.error_code===lm&&(t+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),t}var vt="";function La(e){var r=e.split(` +`);return r.reduce(function(t,n){var i=dm(n)||fm(n)||ym(n)||xm(n)||Em(n);return i&&t.push(i),t},[])}var cm=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|rsc||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,pm=/\((\S*)(?::(\d+))(?::(\d+))\)/;function dm(e){var r=cm.exec(e);if(!r)return null;var t=r[2]&&r[2].indexOf("native")===0,n=r[2]&&r[2].indexOf("eval")===0,i=pm.exec(r[2]);return n&&i!=null&&(r[2]=i[1],r[3]=i[2],r[4]=i[3]),{file:t?null:r[2],methodName:r[1]||vt,arguments:t?[r[2]]:[],lineNumber:r[3]?+r[3]:null,column:r[4]?+r[4]:null}}var mm=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|rsc|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;function fm(e){var r=mm.exec(e);return r?{file:r[2],methodName:r[1]||vt,arguments:[],lineNumber:+r[3],column:r[4]?+r[4]:null}:null}var gm=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|rsc|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,hm=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function ym(e){var r=gm.exec(e);if(!r)return null;var t=r[3]&&r[3].indexOf(" > eval")>-1,n=hm.exec(r[3]);return t&&n!=null&&(r[3]=n[1],r[4]=n[2],r[5]=null),{file:r[3],methodName:r[1]||vt,arguments:r[2]?r[2].split(","):[],lineNumber:r[4]?+r[4]:null,column:r[5]?+r[5]:null}}var bm=/^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i;function Em(e){var r=bm.exec(e);return r?{file:r[3],methodName:r[1]||vt,arguments:[],lineNumber:+r[4],column:r[5]?+r[5]:null}:null}var wm=/^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i;function xm(e){var r=wm.exec(e);return r?{file:r[2],methodName:r[1]||vt,arguments:[],lineNumber:+r[3],column:r[4]?+r[4]:null}:null}var oo=class{getLocation(){return null}},so=class{_error;constructor(){this._error=new Error}getLocation(){let r=this._error.stack;if(!r)return null;let n=La(r).find(i=>{if(!i.file)return!1;let o=Li(i.file);return o!==""&&!o.includes("@prisma")&&!o.includes("/packages/client/src/runtime/")&&!o.endsWith("/runtime/binary.js")&&!o.endsWith("/runtime/library.js")&&!o.endsWith("/runtime/edge.js")&&!o.endsWith("/runtime/edge-esm.js")&&!o.startsWith("internal/")&&!i.methodName.includes("new ")&&!i.methodName.includes("getCallSite")&&!i.methodName.includes("Proxy.")&&i.methodName.split(".").length<4});return!n||!n.file?null:{fileName:n.file,lineNumber:n.lineNumber,columnNumber:n.column}}};function Ze(e){return e==="minimal"?typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new oo:new so}var Fa={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function qr(e={}){let r=Pm(e);return Object.entries(r).reduce((n,[i,o])=>(Fa[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Pm(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Un(e={}){return r=>(typeof e._count=="boolean"&&(r._count=r._count._all),r)}function Ma(e,r){let t=Un(e);return r({action:"aggregate",unpacker:t,argsMapper:qr})(e)}function Tm(e={}){let{select:r,...t}=e;return typeof r=="object"?qr({...t,_count:r}):qr({...t,_count:{_all:!0}})}function Sm(e={}){return typeof e.select=="object"?r=>Un(e)(r)._count:r=>Un(e)(r)._count._all}function $a(e,r){return r({action:"count",unpacker:Sm(e),argsMapper:Tm})(e)}function Rm(e={}){let r=qr(e);if(Array.isArray(r.by))for(let t of r.by)typeof t=="string"&&(r.select[t]=!0);else typeof r.by=="string"&&(r.select[r.by]=!0);return r}function Am(e={}){return r=>(typeof e?._count=="boolean"&&r.forEach(t=>{t._count=t._count._all}),r)}function qa(e,r){return r({action:"groupBy",unpacker:Am(e),argsMapper:Rm})(e)}function Va(e,r,t){if(r==="aggregate")return n=>Ma(n,t);if(r==="count")return n=>$a(n,t);if(r==="groupBy")return n=>qa(n,t)}function ja(e,r){let t=r.fields.filter(i=>!i.relationName),n=_s(t,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new mt(e,o,s.type,s.isList,s.kind==="enum")},...Bn(Object.keys(n))})}var Ba=e=>Array.isArray(e)?e:e.split("."),ao=(e,r)=>Ba(r).reduce((t,n)=>t&&t[n],e),Ua=(e,r,t)=>Ba(r).reduceRight((n,i,o,s)=>Object.assign({},ao(e,s.slice(0,o)),{[i]:n}),t);function Cm(e,r){return e===void 0||r===void 0?[]:[...r,"select",e]}function Im(e,r,t){return r===void 0?e??{}:Ua(r,t,e||!0)}function lo(e,r,t,n,i,o){let a=e._runtimeDataModel.models[r].fields.reduce((l,u)=>({...l,[u.name]:u}),{});return l=>{let u=Ze(e._errorFormat),c=Cm(n,i),p=Im(l,o,c),d=t({dataPath:c,callsite:u})(p),f=Dm(e,r);return new Proxy(d,{get(h,g){if(!f.includes(g))return h[g];let T=[a[g].type,t,g],S=[c,p];return lo(e,...T,...S)},...Bn([...f,...Object.getOwnPropertyNames(d)])})}}function Dm(e,r){return e._runtimeDataModel.models[r].fields.filter(t=>t.kind==="object").map(t=>t.name)}var Om=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],km=["aggregate","count","groupBy"];function uo(e,r){let t=e._extensions.getAllModelExtensions(r)??{},n=[_m(e,r),Lm(e,r),xt(t),re("name",()=>r),re("$name",()=>r),re("$parent",()=>e._appliedParent)];return he({},n)}function _m(e,r){let t=Te(r),n=Object.keys(Rr).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let u=Ze(e._errorFormat);return e._createPrismaPromise(c=>{let p={args:l,dataPath:[],action:o,model:r,clientMethod:`${t}.${i}`,jsModelName:t,transaction:c,callsite:u};return e._request({...p,...a})},{action:o,args:l,model:r})};return Om.includes(o)?lo(e,r,s):Nm(i)?Va(e,i,s):s({})}}}function Nm(e){return km.includes(e)}function Lm(e,r){return lr(re("fields",()=>{let t=e._runtimeDataModel.models[r];return ja(r,t)}))}function Ga(e){return e.replace(/^./,r=>r.toUpperCase())}var co=Symbol();function Pt(e){let r=[Fm(e),Mm(e),re(co,()=>e),re("$parent",()=>e._appliedParent)],t=e._extensions.getAllClientExtensions();return t&&r.push(xt(t)),he(e,r)}function Fm(e){let r=Object.getPrototypeOf(e._originalClient),t=[...new Set(Object.getOwnPropertyNames(r))];return{getKeys(){return t},getPropertyValue(n){return e[n]}}}function Mm(e){let r=Object.keys(e._runtimeDataModel.models),t=r.map(Te),n=[...new Set(r.concat(t))];return lr({getKeys(){return n},getPropertyValue(i){let o=Ga(i);if(e._runtimeDataModel.models[o]!==void 0)return uo(e,o);if(e._runtimeDataModel.models[i]!==void 0)return uo(e,i)},getPropertyDescriptor(i){if(!t.includes(i))return{enumerable:!1}}})}function Qa(e){return e[co]?e[co]:e}function Wa(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let t=e.client.__AccelerateEngine;this._originalClient._engine=new t(this._originalClient._accelerateEngineConfig)}let r=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Pt(r)}function Ja({result:e,modelName:r,select:t,omit:n,extensions:i}){let o=i.getAllComputedFields(r);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let u=l.needs.filter(c=>n[c]);u.length>0&&a.push(Fr(u))}else if(t){if(!t[l.name])continue;let u=l.needs.filter(c=>!t[c]);u.length>0&&a.push(Fr(u))}$m(e,l.needs)&&s.push(qm(l,he(e,s)))}return s.length>0||a.length>0?he(e,[...s,...a]):e}function $m(e,r){return r.every(t=>Vi(e,t))}function qm(e,r){return lr(re(e.name,()=>e.compute(r)))}function Gn({visitor:e,result:r,args:t,runtimeDataModel:n,modelName:i}){if(Array.isArray(r)){for(let s=0;sc.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let u=typeof s=="object"?s:{};r[o]=Gn({visitor:i,result:r[o],args:u,modelName:l.type,runtimeDataModel:n})}}function Ha({result:e,modelName:r,args:t,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[r]?e:Gn({result:e,args:t??{},modelName:r,runtimeDataModel:i,visitor:(a,l,u)=>{let c=Te(l);return Ja({result:a,modelName:c,select:u.select,omit:u.select?void 0:{...o?.[c],...u.omit},extensions:n})}})}var Vm=["$connect","$disconnect","$on","$transaction","$extends"],Ya=Vm;function za(e){if(e instanceof ie)return jm(e);if(Vn(e))return Bm(e);if(Array.isArray(e)){let t=[e[0]];for(let n=1;n{let o=r.customDataProxyFetch;return"transaction"in r&&i!==void 0&&(r.transaction?.kind==="batch"&&r.transaction.lock.then(),r.transaction=i),n===t.length?e._executeRequest(r):t[n]({model:r.model,operation:r.model?r.action:r.clientMethod,args:za(r.args??{}),__internalParams:r,query:(s,a=r)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=nl(o,l),a.args=s,Xa(e,a,t,n+1)}})})}function el(e,r){let{jsModelName:t,action:n,clientMethod:i}=r,o=t?n:i;if(e._extensions.isEmpty())return e._executeRequest(r);let s=e._extensions.getAllQueryCallbacks(t??"$none",o);return Xa(e,r,s)}function rl(e){return r=>{let t={requests:r},n=r[0].extensions.getAllBatchQueryCallbacks();return n.length?tl(t,n,0,e):e(t)}}function tl(e,r,t,n){if(t===r.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return r[t]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=nl(i,l),tl(a,r,t+1,n)}})}var Za=e=>e;function nl(e=Za,r=Za){return t=>e(r(t))}var il=N("prisma:client"),ol={Vercel:"vercel","Netlify CI":"netlify"};function sl({postinstall:e,ciName:r,clientVersion:t,generator:n}){if(il("checkPlatformCaching:postinstall",e),il("checkPlatformCaching:ciName",r),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&r&&r in ol){let i=`Prisma has detected that this project was built on ${r}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + +Learn how: https://pris.ly/d/${ol[r]}-build`;throw console.error(i),new P(i,t)}}function al(e,r){return e?e.datasources?e.datasources:e.datasourceUrl?{[r[0]]:{url:e.datasourceUrl}}:{}:{}}var dl=O(require("node:fs")),St=O(require("node:path"));function Qn(e){let{runtimeBinaryTarget:r}=e;return`Add "${r}" to \`binaryTargets\` in the "schema.prisma" file and run \`prisma generate\` after saving it: + +${Um(e)}`}function Um(e){let{generator:r,generatorBinaryTargets:t,runtimeBinaryTarget:n}=e,i={fromEnvVar:null,value:n},o=[...t,i];return ki({...r,binaryTargets:o})}function Xe(e){let{runtimeBinaryTarget:r}=e;return`Prisma Client could not locate the Query Engine for runtime "${r}".`}function er(e){let{searchedLocations:r}=e;return`The following locations have been searched: +${[...new Set(r)].map(i=>` ${i}`).join(` +`)}`}function ll(e){let{runtimeBinaryTarget:r}=e;return`${Xe(e)} + +This happened because \`binaryTargets\` have been pinned, but the actual deployment also required "${r}". +${Qn(e)} + +${er(e)}`}function Wn(e){return`We would appreciate if you could take the time to share some information with us. +Please help us by answering a few questions: https://pris.ly/${e}`}function Jn(e){let{errorStack:r}=e;return r?.match(/\/\.next|\/next@|\/next\//)?` + +We detected that you are using Next.js, learn how to fix this: https://pris.ly/d/engine-not-found-nextjs.`:""}function ul(e){let{queryEngineName:r}=e;return`${Xe(e)}${Jn(e)} + +This is likely caused by a bundler that has not copied "${r}" next to the resulting bundle. +Ensure that "${r}" has been copied next to the bundle or in "${e.expectedLocation}". + +${Wn("engine-not-found-bundler-investigation")} + +${er(e)}`}function cl(e){let{runtimeBinaryTarget:r,generatorBinaryTargets:t}=e,n=t.find(i=>i.native);return`${Xe(e)} + +This happened because Prisma Client was generated for "${n?.value??"unknown"}", but the actual deployment required "${r}". +${Qn(e)} + +${er(e)}`}function pl(e){let{queryEngineName:r}=e;return`${Xe(e)}${Jn(e)} + +This is likely caused by tooling that has not copied "${r}" to the deployment folder. +Ensure that you ran \`prisma generate\` and that "${r}" has been copied to "${e.expectedLocation}". + +${Wn("engine-not-found-tooling-investigation")} + +${er(e)}`}var Gm=N("prisma:client:engines:resolveEnginePath"),Qm=()=>new RegExp("runtime[\\\\/]library\\.m?js$");async function ml(e,r){let t={binary:process.env.PRISMA_QUERY_ENGINE_BINARY,library:process.env.PRISMA_QUERY_ENGINE_LIBRARY}[e]??r.prismaPath;if(t!==void 0)return t;let{enginePath:n,searchedLocations:i}=await Wm(e,r);if(Gm("enginePath",n),n!==void 0&&e==="binary"&&Ri(n),n!==void 0)return r.prismaPath=n;let o=await ir(),s=r.generator?.binaryTargets??[],a=s.some(d=>d.native),l=!s.some(d=>d.value===o),u=__filename.match(Qm())===null,c={searchedLocations:i,generatorBinaryTargets:s,generator:r.generator,runtimeBinaryTarget:o,queryEngineName:fl(e,o),expectedLocation:St.default.relative(process.cwd(),r.dirname),errorStack:new Error().stack},p;throw a&&l?p=cl(c):l?p=ll(c):u?p=ul(c):p=pl(c),new P(p,r.clientVersion)}async function Wm(e,r){let t=await ir(),n=[],i=[r.dirname,St.default.resolve(__dirname,".."),r.generator?.output?.value??__dirname,St.default.resolve(__dirname,"../../../.prisma/client"),"/tmp/prisma-engines",r.cwd];__filename.includes("resolveEnginePath")&&i.push(ms());for(let o of i){let s=fl(e,t),a=St.default.join(o,s);if(n.push(o),dl.default.existsSync(a))return{enginePath:a,searchedLocations:n}}return{enginePath:void 0,searchedLocations:n}}function fl(e,r){return e==="library"?Gt(r,"fs"):`query-engine-${r}${r==="windows"?".exe":""}`}function gl(e){return e?e.replace(/".*"/g,'"X"').replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g,r=>`${r[0]}5`):""}function hl(e){return e.split(` +`).map(r=>r.replace(/^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/,"").replace(/\+\d+\s*ms$/,"")).join(` +`)}var yl=O(Os());function bl({title:e,user:r="prisma",repo:t="prisma",template:n="bug_report.yml",body:i}){return(0,yl.default)({user:r,repo:t,template:n,title:e,body:i})}function El({version:e,binaryTarget:r,title:t,description:n,engineVersion:i,database:o,query:s}){let a=Bo(6e3-(s?.length??0)),l=hl(wr(a)),u=n?`# Description +\`\`\` +${n} +\`\`\``:"",c=wr(`Hi Prisma Team! My Prisma Client just crashed. This is the report: +## Versions + +| Name | Version | +|-----------------|--------------------| +| Node | ${process.version?.padEnd(19)}| +| OS | ${r?.padEnd(19)}| +| Prisma Client | ${e?.padEnd(19)}| +| Query Engine | ${i?.padEnd(19)}| +| Database | ${o?.padEnd(19)}| + +${u} + +## Logs +\`\`\` +${l} +\`\`\` + +## Client Snippet +\`\`\`ts +// PLEASE FILL YOUR CODE SNIPPET HERE +\`\`\` + +## Schema +\`\`\`prisma +// PLEASE ADD YOUR SCHEMA HERE IF POSSIBLE +\`\`\` + +## Prisma Engine Query +\`\`\` +${s?gl(s):""} +\`\`\` +`),p=bl({title:t,body:c});return`${t} + +This is a non-recoverable error which probably happens when the Prisma Query Engine has a panic. + +${Y(p)} + +If you want the Prisma team to look into it, please open the link above \u{1F64F} +To increase the chance of success, please post your schema and a snippet of +how you used Prisma Client in the issue. +`}function wl(e,r){throw new Error(r)}function Jm(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Km(e,r){let t={};for(let n of Object.keys(e))t[n]=r(e[n],n);return t}function Vr(e){return e===null?e:Array.isArray(e)?e.map(Vr):typeof e=="object"?Jm(e)?Hm(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Km(e,Vr):e}function Hm({$type:e,value:r}){switch(e){case"BigInt":return BigInt(r);case"Bytes":{let{buffer:t,byteOffset:n,byteLength:i}=Buffer.from(r,"base64");return new Uint8Array(t,n,i)}case"DateTime":return new Date(r);case"Decimal":return new Le(r);case"Json":return JSON.parse(r);default:wl(r,"Unknown tagged value")}}var xl="6.19.1";var zm=()=>globalThis.process?.release?.name==="node",Zm=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,Xm=()=>!!globalThis.Deno,ef=()=>typeof globalThis.Netlify=="object",rf=()=>typeof globalThis.EdgeRuntime=="object",tf=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function nf(){return[[ef,"netlify"],[rf,"edge-light"],[tf,"workerd"],[Xm,"deno"],[Zm,"bun"],[zm,"node"]].flatMap(t=>t[0]()?[t[1]]:[]).at(0)??""}var of={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Kn(){let e=nf();return{id:e,prettyName:of[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function jr({inlineDatasources:e,overrideDatasources:r,env:t,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=r[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=t[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw new P(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new P("error: Missing URL environment variable, value, or override.",n);return i}var Hn=class extends Error{clientVersion;cause;constructor(r,t){super(r),this.clientVersion=t.clientVersion,this.cause=t.cause}get[Symbol.toStringTag](){return this.name}};var oe=class extends Hn{isRetryable;constructor(r,t){super(r,t),this.isRetryable=t.isRetryable??!0}};function R(e,r){return{...e,isRetryable:r}}var ur=class extends oe{name="InvalidDatasourceError";code="P6001";constructor(r,t){super(r,R(t,!1))}};x(ur,"InvalidDatasourceError");function vl(e){let r={clientVersion:e.clientVersion},t=Object.keys(e.inlineDatasources)[0],n=jr({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof process<"u"?process.env:{}}}),i;try{i=new URL(n)}catch{throw new ur(`Error validating datasource \`${t}\`: the URL must start with the protocol \`prisma://\``,r)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==sn)throw new ur(`Error validating datasource \`${t}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,r);let a=s.get("api_key");if(a===null||a.length<1)throw new ur(`Error validating datasource \`${t}\`: the URL must contain a valid API key`,r);let l=Ii(i)?"http:":"https:";process.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(l="http:");let u=new URL(i.href.replace(o,l));return{apiKey:a,url:u}}var Pl=O(on()),Yn=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:r,tracingHelper:t,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=r,this.tracingHelper=t,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:r,transactionId:t}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":Pl.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=r??this.tracingHelper.getTraceParent()),t&&(n["X-Transaction-Id"]=t);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let r=[];return this.tracingHelper.isEnabled()&&r.push("tracing"),this.logLevel&&r.push(this.logLevel),this.logQueries&&r.push("query"),r}};function sf(e){return e[0]*1e3+e[1]/1e6}function po(e){return new Date(sf(e))}var Br=class extends oe{name="ForcedRetryError";code="P5001";constructor(r){super("This request must be retried",R(r,!0))}};x(Br,"ForcedRetryError");var cr=class extends oe{name="NotImplementedYetError";code="P5004";constructor(r,t){super(r,R(t,!1))}};x(cr,"NotImplementedYetError");var $=class extends oe{response;constructor(r,t){super(r,t),this.response=t.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var pr=class extends ${name="SchemaMissingError";code="P5005";constructor(r){super("Schema needs to be uploaded",R(r,!0))}};x(pr,"SchemaMissingError");var mo="This request could not be understood by the server",Rt=class extends ${name="BadRequestError";code="P5000";constructor(r,t,n){super(t||mo,R(r,!1)),n&&(this.code=n)}};x(Rt,"BadRequestError");var At=class extends ${name="HealthcheckTimeoutError";code="P5013";logs;constructor(r,t){super("Engine not started: healthcheck timeout",R(r,!0)),this.logs=t}};x(At,"HealthcheckTimeoutError");var Ct=class extends ${name="EngineStartupError";code="P5014";logs;constructor(r,t,n){super(t,R(r,!0)),this.logs=n}};x(Ct,"EngineStartupError");var It=class extends ${name="EngineVersionNotSupportedError";code="P5012";constructor(r){super("Engine version is not supported",R(r,!1))}};x(It,"EngineVersionNotSupportedError");var fo="Request timed out",Dt=class extends ${name="GatewayTimeoutError";code="P5009";constructor(r,t=fo){super(t,R(r,!1))}};x(Dt,"GatewayTimeoutError");var af="Interactive transaction error",Ot=class extends ${name="InteractiveTransactionError";code="P5015";constructor(r,t=af){super(t,R(r,!1))}};x(Ot,"InteractiveTransactionError");var lf="Request parameters are invalid",kt=class extends ${name="InvalidRequestError";code="P5011";constructor(r,t=lf){super(t,R(r,!1))}};x(kt,"InvalidRequestError");var go="Requested resource does not exist",_t=class extends ${name="NotFoundError";code="P5003";constructor(r,t=go){super(t,R(r,!1))}};x(_t,"NotFoundError");var ho="Unknown server error",Ur=class extends ${name="ServerError";code="P5006";logs;constructor(r,t,n){super(t||ho,R(r,!0)),this.logs=n}};x(Ur,"ServerError");var yo="Unauthorized, check your connection string",Nt=class extends ${name="UnauthorizedError";code="P5007";constructor(r,t=yo){super(t,R(r,!1))}};x(Nt,"UnauthorizedError");var bo="Usage exceeded, retry again later",Lt=class extends ${name="UsageExceededError";code="P5008";constructor(r,t=bo){super(t,R(r,!0))}};x(Lt,"UsageExceededError");async function uf(e){let r;try{r=await e.text()}catch{return{type:"EmptyError"}}try{let t=JSON.parse(r);if(typeof t=="string")switch(t){case"InternalDataProxyError":return{type:"DataProxyError",body:t};default:return{type:"UnknownTextError",body:t}}if(typeof t=="object"&&t!==null){if("is_panic"in t&&"message"in t&&"error_code"in t)return{type:"QueryEngineError",body:t};if("EngineNotStarted"in t||"InteractiveTransactionMisrouted"in t||"InvalidRequestError"in t){let n=Object.values(t)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:t}:{type:"DataProxyError",body:t}}}return{type:"UnknownJsonError",body:t}}catch{return r===""?{type:"EmptyError"}:{type:"UnknownTextError",body:r}}}async function Ft(e,r){if(e.ok)return;let t={clientVersion:r,response:e},n=await uf(e);if(n.type==="QueryEngineError")throw new z(n.body.message,{code:n.body.error_code,clientVersion:r});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Ur(t,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new pr(t);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new It(t);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Ct(t,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new P(i,r,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new At(t,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Ot(t,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new kt(t,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Nt(t,Gr(yo,n));if(e.status===404)return new _t(t,Gr(go,n));if(e.status===429)throw new Lt(t,Gr(bo,n));if(e.status===504)throw new Dt(t,Gr(fo,n));if(e.status>=500)throw new Ur(t,Gr(ho,n));if(e.status>=400)throw new Rt(t,Gr(mo,n))}function Gr(e,r){return r.type==="EmptyError"?e:`${e}: ${JSON.stringify(r)}`}function Tl(e){let r=Math.pow(2,e)*50,t=Math.ceil(Math.random()*r)-Math.ceil(r/2),n=r+t;return new Promise(i=>setTimeout(()=>i(n),n))}var $e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Sl(e){let r=new TextEncoder().encode(e),t="",n=r.byteLength,i=n%3,o=n-i,s,a,l,u,c;for(let p=0;p>18,a=(c&258048)>>12,l=(c&4032)>>6,u=c&63,t+=$e[s]+$e[a]+$e[l]+$e[u];return i==1?(c=r[o],s=(c&252)>>2,a=(c&3)<<4,t+=$e[s]+$e[a]+"=="):i==2&&(c=r[o]<<8|r[o+1],s=(c&64512)>>10,a=(c&1008)>>4,l=(c&15)<<2,t+=$e[s]+$e[a]+$e[l]+"="),t}function Rl(e){if(!!e.generator?.previewFeatures.some(t=>t.toLowerCase().includes("metrics")))throw new P("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}var Al={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};var Mt=class extends oe{name="RequestError";code="P5010";constructor(r,t){super(`Cannot fetch data from service: +${r}`,R(t,!0))}};x(Mt,"RequestError");async function dr(e,r,t=n=>n){let{clientVersion:n,...i}=r,o=t(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new Mt(a,{clientVersion:n,cause:s})}}var pf=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Cl=N("prisma:client:dataproxyEngine");async function df(e,r){let t=Al["@prisma/engines-version"],n=r.clientVersion??"unknown";if(process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&pf.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=t.split("-")??[],[a,l,u]=s.split("."),c=mf(`<=${a}.${l}.${u}`),p=await dr(c,{clientVersion:n});if(!p.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${p.status} ${p.statusText}, response body: ${await p.text()||""}`);let d=await p.text();Cl("length of body fetched from unpkg.com",d.length);let f;try{f=JSON.parse(d)}catch(h){throw console.error("JSON.parse error: body fetched from unpkg.com: ",d),h}return f.version}throw new cr("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function Il(e,r){let t=await df(e,r);return Cl("version",t),t}function mf(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Dl=3,$t=N("prisma:client:dataproxyEngine"),qt=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(r){Rl(r),this.config=r,this.env=r.env,this.inlineSchema=Sl(r.inlineSchema),this.inlineDatasources=r.inlineDatasources,this.inlineSchemaHash=r.inlineSchemaHash,this.clientVersion=r.clientVersion,this.engineHash=r.engineVersion,this.logEmitter=r.logEmitter,this.tracingHelper=r.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:r,url:t}=this.getURLAndAPIKey();this.host=t.host,this.protocol=t.protocol,this.headerBuilder=new Yn({apiKey:r,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await Il(this.host,this.config),$t("host",this.host),$t("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(r){r?.logs?.length&&r.logs.forEach(t=>{switch(t.level){case"debug":case"trace":$t(t);break;case"error":case"warn":case"info":{this.logEmitter.emit(t.level,{timestamp:po(t.timestamp),message:t.attributes.message??"",target:t.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:t.attributes.query??"",timestamp:po(t.timestamp),duration:t.attributes.duration_ms??0,params:t.attributes.params??"",target:t.target??"BinaryEngine"});break}default:t.level}}),r?.traces?.length&&this.tracingHelper.dispatchEngineSpans(r.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(r){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${r}`}async uploadSchema(){let r={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(r,async()=>{let t=await dr(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});t.ok||$t("schema response status",t.status);let n=await Ft(t,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(r,{traceparent:t,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:r,traceparent:t,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(r,{traceparent:t,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=Mr(r,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:t})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:r,traceparent:t,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await dr(s,{method:"POST",headers:this.headerBuilder.build({traceparent:t,transactionId:i?.id}),body:JSON.stringify(r),clientVersion:this.clientVersion},n);a.ok||$t("graphql response status",a.status),await this.handleError(await Ft(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(r,t,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[r]} transaction`,callback:async({logHttpCall:o})=>{if(r==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await dr(a,{method:"POST",headers:this.headerBuilder.build({traceparent:t.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Ft(l,this.clientVersion));let u=await l.json(),{extensions:c}=u;c&&this.propagateResponseExtensions(c);let p=u.id,d=u["data-proxy"].endpoint;return{id:p,payload:{endpoint:d}}}else{let s=`${n.payload.endpoint}/${r}`;o(s);let a=await dr(s,{method:"POST",headers:this.headerBuilder.build({traceparent:t.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Ft(a,this.clientVersion));let l=await a.json(),{extensions:u}=l;u&&this.propagateResponseExtensions(u);return}}})}getURLAndAPIKey(){return vl({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new cr("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(r){for(let t=0;;t++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${t})`,timestamp:new Date,target:""})};try{return await r.callback({logHttpCall:n})}catch(i){if(!(i instanceof oe)||!i.isRetryable)throw i;if(t>=Dl)throw i instanceof Br?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${t+1}/${Dl} failed for ${r.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Tl(t);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(r){if(r instanceof pr)throw await this.uploadSchema(),new Br({clientVersion:this.clientVersion,cause:r});if(r)throw r}convertProtocolErrorsToClientError(r){return r.length===1?$r(r[0],this.config.clientVersion,this.config.activeProvider):new V(JSON.stringify(r),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};function Ol(e){if(e?.kind==="itx")return e.options.id}var wo=O(require("node:os")),kl=O(require("node:path"));var Eo=Symbol("PrismaLibraryEngineCache");function ff(){let e=globalThis;return e[Eo]===void 0&&(e[Eo]={}),e[Eo]}function gf(e){let r=ff();if(r[e]!==void 0)return r[e];let t=kl.default.toNamespacedPath(e),n={exports:{}},i=0;return process.platform!=="win32"&&(i=wo.default.constants.dlopen.RTLD_LAZY|wo.default.constants.dlopen.RTLD_DEEPBIND),process.dlopen(n,t,i),r[e]=n.exports,n.exports}var _l={async loadLibrary(e){let r=await fi(),t=await ml("library",e);try{return e.tracingHelper.runInChildSpan({name:"loadLibrary",internal:!0},()=>gf(t))}catch(n){let i=Ai({e:n,platformInfo:r,id:t});throw new P(i,e.clientVersion)}}};var xo,Nl={async loadLibrary(e){let{clientVersion:r,adapter:t,engineWasm:n}=e;if(t===void 0)throw new P(`The \`adapter\` option for \`PrismaClient\` is required in this context (${Kn().prettyName})`,r);if(n===void 0)throw new P("WASM engine was unexpectedly `undefined`",r);xo===void 0&&(xo=(async()=>{let o=await n.getRuntime(),s=await n.getQueryEngineWasmModule();if(s==null)throw new P("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",r);let a={"./query_engine_bg.js":o},l=new WebAssembly.Instance(s,a),u=l.exports.__wbindgen_start;return o.__wbg_set_wasm(l.exports),u(),o.QueryEngine})());let i=await xo;return{debugPanic(){return Promise.reject("{}")},dmmf(){return Promise.resolve("{}")},version(){return{commit:"unknown",version:"unknown"}},QueryEngine:i}}};var hf="P2036",Re=N("prisma:client:libraryEngine");function yf(e){return e.item_type==="query"&&"query"in e}function bf(e){return"level"in e?e.level==="error"&&e.message==="PANIC":!1}var Ll=[...li,"native"],Ef=0xffffffffffffffffn,vo=1n;function wf(){let e=vo++;return vo>Ef&&(vo=1n),e}var Qr=class{name="LibraryEngine";engine;libraryInstantiationPromise;libraryStartingPromise;libraryStoppingPromise;libraryStarted;executingQueryPromise;config;QueryEngineConstructor;libraryLoader;library;logEmitter;libQueryEnginePath;binaryTarget;datasourceOverrides;datamodel;logQueries;logLevel;lastQuery;loggerRustPanic;tracingHelper;adapterPromise;versionInfo;constructor(r,t){this.libraryLoader=t??_l,r.engineWasm!==void 0&&(this.libraryLoader=t??Nl),this.config=r,this.libraryStarted=!1,this.logQueries=r.logQueries??!1,this.logLevel=r.logLevel??"error",this.logEmitter=r.logEmitter,this.datamodel=r.inlineSchema,this.tracingHelper=r.tracingHelper,r.enableDebugLogs&&(this.logLevel="debug");let n=Object.keys(r.overrideDatasources)[0],i=r.overrideDatasources[n]?.url;n!==void 0&&i!==void 0&&(this.datasourceOverrides={[n]:i}),this.libraryInstantiationPromise=this.instantiateLibrary()}wrapEngine(r){return{applyPendingMigrations:r.applyPendingMigrations?.bind(r),commitTransaction:this.withRequestId(r.commitTransaction.bind(r)),connect:this.withRequestId(r.connect.bind(r)),disconnect:this.withRequestId(r.disconnect.bind(r)),metrics:r.metrics?.bind(r),query:this.withRequestId(r.query.bind(r)),rollbackTransaction:this.withRequestId(r.rollbackTransaction.bind(r)),sdlSchema:r.sdlSchema?.bind(r),startTransaction:this.withRequestId(r.startTransaction.bind(r)),trace:r.trace.bind(r),free:r.free?.bind(r)}}withRequestId(r){return async(...t)=>{let n=wf().toString();try{return await r(...t,n)}finally{if(this.tracingHelper.isEnabled()){let i=await this.engine?.trace(n);if(i){let o=JSON.parse(i);this.tracingHelper.dispatchEngineSpans(o.spans)}}}}}async applyPendingMigrations(){throw new Error("Cannot call this method from this type of engine instance")}async transaction(r,t,n){await this.start();let i=await this.adapterPromise,o=JSON.stringify(t),s;if(r==="start"){let l=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel});s=await this.engine?.startTransaction(l,o)}else r==="commit"?s=await this.engine?.commitTransaction(n.id,o):r==="rollback"&&(s=await this.engine?.rollbackTransaction(n.id,o));let a=this.parseEngineResponse(s);if(xf(a)){let l=this.getExternalAdapterError(a,i?.errorRegistry);throw l?l.error:new z(a.message,{code:a.error_code,clientVersion:this.config.clientVersion,meta:a.meta})}else if(typeof a.message=="string")throw new V(a.message,{clientVersion:this.config.clientVersion});return a}async instantiateLibrary(){if(Re("internalSetup"),this.libraryInstantiationPromise)return this.libraryInstantiationPromise;ai(),this.binaryTarget=await this.getCurrentBinaryTarget(),await this.tracingHelper.runInChildSpan("load_engine",()=>this.loadEngine()),this.version()}async getCurrentBinaryTarget(){{if(this.binaryTarget)return this.binaryTarget;let r=await this.tracingHelper.runInChildSpan("detect_platform",()=>ir());if(!Ll.includes(r))throw new P(`Unknown ${ce("PRISMA_QUERY_ENGINE_LIBRARY")} ${ce(W(r))}. Possible binaryTargets: ${qe(Ll.join(", "))} or a path to the query engine library. +You may have to run ${qe("prisma generate")} for your changes to take effect.`,this.config.clientVersion);return r}}parseEngineResponse(r){if(!r)throw new V("Response from the Engine was empty",{clientVersion:this.config.clientVersion});try{return JSON.parse(r)}catch{throw new V("Unable to JSON.parse response from engine",{clientVersion:this.config.clientVersion})}}async loadEngine(){if(!this.engine){this.QueryEngineConstructor||(this.library=await this.libraryLoader.loadLibrary(this.config),this.QueryEngineConstructor=this.library.QueryEngine);try{let r=new WeakRef(this);this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(tn));let t=await this.adapterPromise;t&&Re("Using driver adapter: %O",t),this.engine=this.wrapEngine(new this.QueryEngineConstructor({datamodel:this.datamodel,env:process.env,logQueries:this.config.logQueries??!1,ignoreEnvVarErrors:!0,datasourceOverrides:this.datasourceOverrides??{},logLevel:this.logLevel,configDir:this.config.cwd,engineProtocol:"json",enableTracing:this.tracingHelper.isEnabled()},n=>{r.deref()?.logger(n)},t))}catch(r){let t=r,n=this.parseInitError(t.message);throw typeof n=="string"?t:new P(n.message,this.config.clientVersion,n.error_code)}}}logger(r){let t=this.parseEngineResponse(r);t&&(t.level=t?.level.toLowerCase()??"unknown",yf(t)?this.logEmitter.emit("query",{timestamp:new Date,query:t.query,params:t.params,duration:Number(t.duration_ms),target:t.module_path}):bf(t)?this.loggerRustPanic=new ae(Po(this,`${t.message}: ${t.reason} in ${t.file}:${t.line}:${t.column}`),this.config.clientVersion):this.logEmitter.emit(t.level,{timestamp:new Date,message:t.message,target:t.module_path}))}parseInitError(r){try{return JSON.parse(r)}catch{}return r}parseRequestError(r){try{return JSON.parse(r)}catch{}return r}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){if(this.libraryInstantiationPromise||(this.libraryInstantiationPromise=this.instantiateLibrary()),await this.libraryInstantiationPromise,await this.libraryStoppingPromise,this.libraryStartingPromise)return Re(`library already starting, this.libraryStarted: ${this.libraryStarted}`),this.libraryStartingPromise;if(this.libraryStarted)return;let r=async()=>{Re("library starting");try{let t={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.connect(JSON.stringify(t)),this.libraryStarted=!0,this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(tn)),await this.adapterPromise,Re("library started")}catch(t){let n=this.parseInitError(t.message);throw typeof n=="string"?t:new P(n.message,this.config.clientVersion,n.error_code)}finally{this.libraryStartingPromise=void 0}};return this.libraryStartingPromise=this.tracingHelper.runInChildSpan("connect",r),this.libraryStartingPromise}async stop(){if(await this.libraryInstantiationPromise,await this.libraryStartingPromise,await this.executingQueryPromise,this.libraryStoppingPromise)return Re("library is already stopping"),this.libraryStoppingPromise;if(!this.libraryStarted){await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0;return}let r=async()=>{await new Promise(n=>setImmediate(n)),Re("library stopping");let t={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.disconnect(JSON.stringify(t)),this.engine?.free&&this.engine.free(),this.engine=void 0,this.libraryStarted=!1,this.libraryStoppingPromise=void 0,this.libraryInstantiationPromise=void 0,await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0,Re("library stopped")};return this.libraryStoppingPromise=this.tracingHelper.runInChildSpan("disconnect",r),this.libraryStoppingPromise}version(){return this.versionInfo=this.library?.version(),this.versionInfo?.version??"unknown"}debugPanic(r){return this.library?.debugPanic(r)}async request(r,{traceparent:t,interactiveTransaction:n}){Re(`sending request, this.libraryStarted: ${this.libraryStarted}`);let i=JSON.stringify({traceparent:t}),o=JSON.stringify(r);try{await this.start();let s=await this.adapterPromise;this.executingQueryPromise=this.engine?.query(o,i,n?.id),this.lastQuery=o;let a=this.parseEngineResponse(await this.executingQueryPromise);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],s?.errorRegistry):new V(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});if(this.loggerRustPanic)throw this.loggerRustPanic;return{data:a}}catch(s){if(s instanceof P)throw s;if(s.code==="GenericFailure"&&s.message?.startsWith("PANIC:"))throw new ae(Po(this,s.message),this.config.clientVersion);let a=this.parseRequestError(s.message);throw typeof a=="string"?s:new V(`${a.message} +${a.backtrace}`,{clientVersion:this.config.clientVersion})}}async requestBatch(r,{transaction:t,traceparent:n}){Re("requestBatch");let i=Mr(r,t);await this.start();let o=await this.adapterPromise;this.lastQuery=JSON.stringify(i),this.executingQueryPromise=this.engine?.query(this.lastQuery,JSON.stringify({traceparent:n}),Ol(t));let s=await this.executingQueryPromise,a=this.parseEngineResponse(s);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],o?.errorRegistry):new V(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});let{batchResult:l,errors:u}=a;if(Array.isArray(l))return l.map(c=>c.errors&&c.errors.length>0?this.loggerRustPanic??this.buildQueryError(c.errors[0],o?.errorRegistry):{data:c});throw u&&u.length===1?new Error(u[0].error):new Error(JSON.stringify(a))}buildQueryError(r,t){if(r.user_facing_error.is_panic)return new ae(Po(this,r.user_facing_error.message),this.config.clientVersion);let n=this.getExternalAdapterError(r.user_facing_error,t);return n?n.error:$r(r,this.config.clientVersion,this.config.activeProvider)}getExternalAdapterError(r,t){if(r.error_code===hf&&t){let n=r.meta?.id;ln(typeof n=="number","Malformed external JS error received from the engine");let i=t.consumeError(n);return ln(i,"External error with reported id was not registered"),i}}async metrics(r){await this.start();let t=await this.engine.metrics(JSON.stringify(r));return r.format==="prometheus"?t:this.parseEngineResponse(t)}};function xf(e){return typeof e=="object"&&e!==null&&e.error_code!==void 0}function Po(e,r){return El({binaryTarget:e.binaryTarget,title:r,version:e.config.clientVersion,engineVersion:e.versionInfo?.commit,database:e.config.activeProvider,query:e.lastQuery})}function Fl({url:e,adapter:r,copyEngine:t,targetBuildType:n}){let i=[],o=[],s=g=>{i.push({_tag:"warning",value:g})},a=g=>{let I=g.join(` +`);o.push({_tag:"error",value:I})},l=!!e?.startsWith("prisma://"),u=an(e),c=!!r,p=l||u;!c&&t&&p&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let d=p||!t;c&&(d||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):p?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):t||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let f={accelerate:d,ppg:u,driverAdapters:c};function h(g){return g.length>0}return h(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:f}:{ok:!0,diagnostics:{warnings:i},isUsing:f}}function Ml({copyEngine:e=!0},r){let t;try{t=jr({inlineDatasources:r.inlineDatasources,overrideDatasources:r.overrideDatasources,env:{...r.env,...process.env},clientVersion:r.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=Fl({url:t,adapter:r.adapter,copyEngine:e,targetBuildType:"library"});for(let p of o.warnings)at(...p.value);if(!n){let p=o.errors[0];throw new Z(p.value,{clientVersion:r.clientVersion})}let s=Er(r.generator),a=s==="library",l=s==="binary",u=s==="client",c=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate?new qt(r):(i.driverAdapters,a?new Qr(r):(i.accelerate,new Qr(r)))}function $l({generator:e}){return e?.previewFeatures??[]}var ql=e=>({command:e});var Vl=e=>e.strings.reduce((r,t,n)=>`${r}@P${n}${t}`);function Wr(e){try{return jl(e,"fast")}catch{return jl(e,"slow")}}function jl(e,r){return JSON.stringify(e.map(t=>Ul(t,r)))}function Ul(e,r){if(Array.isArray(e))return e.map(t=>Ul(t,r));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(vr(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Fe.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(vf(e))return{prisma__type:"bytes",prisma__value:Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:t,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:Buffer.from(t,n,i).toString("base64")}}return typeof e=="object"&&r==="slow"?Gl(e):e}function vf(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Gl(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Bl);let r={};for(let t of Object.keys(e))r[t]=Bl(e[t]);return r}function Bl(e){return typeof e=="bigint"?e.toString():Gl(e)}var Pf=/^(\s*alter\s)/i,Ql=N("prisma:client");function To(e,r,t,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&t.length>0&&Pf.exec(r))throw new Error(`Running ALTER using ${n} is not supported +Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. + +Example: + await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) + +More Information: https://pris.ly/d/execute-raw +`)}var So=({clientMethod:e,activeProvider:r})=>t=>{let n="",i;if(Vn(t))n=t.sql,i={values:Wr(t.values),__prismaRawParameters__:!0};else if(Array.isArray(t)){let[o,...s]=t;n=o,i={values:Wr(s||[]),__prismaRawParameters__:!0}}else switch(r){case"sqlite":case"mysql":{n=t.sql,i={values:Wr(t.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=t.text,i={values:Wr(t.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Vl(t),i={values:Wr(t.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${r} provider does not support ${e}`)}return i?.values?Ql(`prisma.${e}(${n}, ${i.values})`):Ql(`prisma.${e}(${n})`),{query:n,parameters:i}},Wl={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[r,...t]=e;return new ie(r,t)}},Jl={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};function Ro(e){return function(t,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Kl(t(s)):Kl(t(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Kl(e){return typeof e.then=="function"?e:Promise.resolve(e)}var Tf=xi.split(".")[0],Sf={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,r){return r()}},Ao=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(r){return this.getGlobalTracingHelper().getTraceParent(r)}dispatchEngineSpans(r){return this.getGlobalTracingHelper().dispatchEngineSpans(r)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(r,t){return this.getGlobalTracingHelper().runInChildSpan(r,t)}getGlobalTracingHelper(){let r=globalThis[`V${Tf}_PRISMA_INSTRUMENTATION`],t=globalThis.PRISMA_INSTRUMENTATION;return r?.helper??t?.helper??Sf}};function Hl(){return new Ao}function Yl(e,r=()=>{}){let t,n=new Promise(i=>t=i);return{then(i){return--e===0&&t(r()),i?.(n)}}}function zl(e){return typeof e=="string"?e:e.reduce((r,t)=>{let n=typeof t=="string"?t:t.level;return n==="query"?r:r&&(t==="info"||r==="info")?"info":n},void 0)}function zn(e){return typeof e.batchRequestIdx=="number"}function Zl(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let r=[];return e.modelName&&r.push(e.modelName),e.query.arguments&&r.push(Co(e.query.arguments)),r.push(Co(e.query.selection)),r.join("")}function Co(e){return`(${Object.keys(e).sort().map(t=>{let n=e[t];return typeof n=="object"&&n!==null?`(${t} ${Co(n)})`:t}).join(" ")})`}var Rf={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function Io(e){return Rf[e]}var Zn=class{constructor(r){this.options=r;this.batches={}}batches;tickActive=!1;request(r){let t=this.options.batchBy(r);return t?(this.batches[t]||(this.batches[t]=[],this.tickActive||(this.tickActive=!0,process.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[t].push({request:r,resolve:n,reject:i})})):this.options.singleLoader(r)}dispatchBatches(){for(let r in this.batches){let t=this.batches[r];delete this.batches[r],t.length===1?this.options.singleLoader(t[0].request).then(n=>{n instanceof Error?t[0].reject(n):t[0].resolve(n)}).catch(n=>{t[0].reject(n)}):(t.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(t.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;imr("bigint",t));case"bytes-array":return r.map(t=>mr("bytes",t));case"decimal-array":return r.map(t=>mr("decimal",t));case"datetime-array":return r.map(t=>mr("datetime",t));case"date-array":return r.map(t=>mr("date",t));case"time-array":return r.map(t=>mr("time",t));default:return r}}function Xn(e){let r=[],t=Af(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(p=>p.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),u=n.some(p=>Io(p.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:If(o),containsWrite:u,customDataProxyFetch:i})).map((p,d)=>{if(p instanceof Error)return p;try{return this.mapQueryEngineResult(n[d],p)}catch(f){return f}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?Xl(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:Io(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Zl(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(r){try{return await this.dataloader.request(r)}catch(t){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=r;this.handleAndLogRequestError({error:t,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:r.globalOmit})}}mapQueryEngineResult({dataPath:r,unpacker:t},n){let i=n?.data,o=this.unpack(i,r,t);return process.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(r){try{this.handleRequestError(r)}catch(t){throw this.logEmitter&&this.logEmitter.emit("error",{message:t.message,target:r.clientMethod,timestamp:new Date}),t}}handleRequestError({error:r,clientMethod:t,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Cf(r),Df(r,i))throw r;if(r instanceof z&&Of(r)){let u=eu(r.meta);Nn({args:o,errors:[u],callsite:n,errorFormat:this.client._errorFormat,originalMethod:t,clientVersion:this.client._clientVersion,globalOmit:a})}let l=r.message;if(n&&(l=Tn({callsite:n,originalMethod:t,isPanic:r.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),r.code){let u=s?{modelName:s,...r.meta}:r.meta;throw new z(l,{code:r.code,clientVersion:this.client._clientVersion,meta:u,batchRequestIdx:r.batchRequestIdx})}else{if(r.isPanic)throw new ae(l,this.client._clientVersion);if(r instanceof V)throw new V(l,{clientVersion:this.client._clientVersion,batchRequestIdx:r.batchRequestIdx});if(r instanceof P)throw new P(l,this.client._clientVersion);if(r instanceof ae)throw new ae(l,this.client._clientVersion)}throw r.clientVersion=this.client._clientVersion,r}sanitizeMessage(r){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?wr(r):r}unpack(r,t,n){if(!r||(r.data&&(r=r.data),!r))return r;let i=Object.keys(r)[0],o=Object.values(r)[0],s=t.filter(u=>u!=="select"&&u!=="include"),a=ao(o,s),l=i==="queryRaw"?Xn(a):Vr(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function If(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:Xl(e)};ar(e,"Unknown transaction kind")}}function Xl(e){return{id:e.id,payload:e.payload}}function Df(e,r){return zn(e)&&r?.kind==="batch"&&e.batchRequestIdx!==r.index}function Of(e){return e.code==="P2009"||e.code==="P2012"}function eu(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(eu)};if(Array.isArray(e.selectionPath)){let[,...r]=e.selectionPath;return{...e,selectionPath:r}}return e}var ru=xl;var su=O(Ki());var _=class extends Error{constructor(r){super(r+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};x(_,"PrismaClientConstructorValidationError");var tu=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],nu=["pretty","colorless","minimal"],iu=["info","query","warn","error"],kf={datasources:(e,{datasourceNames:r})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new _(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[t,n]of Object.entries(e)){if(!r.includes(t)){let i=Jr(t,r)||` Available datasources: ${r.join(", ")}`;throw new _(`Unknown datasource ${t} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new _(`Invalid value ${JSON.stringify(e)} for datasource "${t}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new _(`Invalid value ${JSON.stringify(e)} for datasource "${t}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new _(`Invalid value ${JSON.stringify(o)} for datasource "${t}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,r)=>{if(!e&&Er(r.generator)==="client")throw new _('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new _('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Er(r.generator)==="binary")throw new _('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new _(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new _(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!nu.includes(e)){let r=Jr(e,nu);throw new _(`Invalid errorFormat ${e} provided to PrismaClient constructor.${r}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new _(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function r(t){if(typeof t=="string"&&!iu.includes(t)){let n=Jr(t,iu);throw new _(`Invalid log level "${t}" provided to PrismaClient constructor.${n}`)}}for(let t of e){r(t);let n={level:r,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Jr(i,o);throw new _(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(t&&typeof t=="object")for(let[i,o]of Object.entries(t))if(n[i])n[i](o);else throw new _(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let r=e.maxWait;if(r!=null&&r<=0)throw new _(`Invalid value ${r} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let t=e.timeout;if(t!=null&&t<=0)throw new _(`Invalid value ${t} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,r)=>{if(typeof e!="object")throw new _('"omit" option is expected to be an object.');if(e===null)throw new _('"omit" option can not be `null`');let t=[];for(let[n,i]of Object.entries(e)){let o=Nf(n,r.runtimeDataModel);if(!o){t.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(u=>u.name===s);if(!l){t.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){t.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&t.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(t.length>0)throw new _(Lf(e,t))},__internal:e=>{if(!e)return;let r=["debug","engine","configOverride"];if(typeof e!="object")throw new _(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[t]of Object.entries(e))if(!r.includes(t)){let n=Jr(t,r);throw new _(`Invalid property ${JSON.stringify(t)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function au(e,r){for(let[t,n]of Object.entries(e)){if(!tu.includes(t)){let i=Jr(t,tu);throw new _(`Unknown property ${t} provided to PrismaClient constructor.${i}`)}kf[t](n,r)}if(e.datasourceUrl&&e.datasources)throw new _('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Jr(e,r){if(r.length===0||typeof e!="string")return"";let t=_f(e,r);return t?` Did you mean "${t}"?`:""}function _f(e,r){if(r.length===0)return null;let t=r.map(i=>({value:i,distance:(0,su.default)(e,i)}));t.sort((i,o)=>i.distanceWe(n)===r);if(t)return e[t]}function Lf(e,r){let t=_r(e);for(let o of r)switch(o.kind){case"UnknownModel":t.arguments.getField(o.modelKey)?.markAsError(),t.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":t.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),t.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":t.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),t.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":t.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),t.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=_n(t,"colorless");return`Error validating "omit" option: + +${i} + +${n}`}function lu(e){return e.length===0?Promise.resolve([]):new Promise((r,t)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?t(i):r(n)))},l=u=>{o||(o=!0,t(u))};for(let u=0;u{n[u]=c,a()},c=>{if(!zn(c)){l(c);return}c.batchRequestIdx===u?l(c):(i||(i=c),a())})})}var rr=N("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Ff={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},Mf=Symbol.for("prisma.client.transaction.id"),$f={id:0,nextId(){return++this.id}};function fu(e){class r{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Ro();constructor(n){e=n?.__internal?.configOverride?.(e)??e,sl(e),n&&au(n,e);let i=new du.EventEmitter().on("error",()=>{});this._extensions=Nr.empty(),this._previewFeatures=$l(e),this._clientVersion=e.clientVersion??ru,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=Hl();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&ri.default.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&ri.default.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new P(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new P("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=!s&&o&&st(o,{conflictCheck:"none"})||e.injectableEdgeEnv?.();try{let l=n??{},u=l.__internal??{},c=u.debug===!0;c&&N.enable("prisma:client");let p=ri.default.resolve(e.dirname,e.relativePath);mu.default.existsSync(p)||(p=e.dirname),rr("dirname",e.dirname),rr("relativePath",e.relativePath),rr("cwd",p);let d=u.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:process.env.NODE_ENV==="production"?this._errorFormat="minimal":process.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:p,dirname:e.dirname,enableDebugLogs:c,allowTriggerPanic:d.allowTriggerPanic,prismaPath:d.binaryPath??void 0,engineEndpoint:d.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&zl(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(f=>typeof f=="string"?f==="query":f.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:al(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:jr,getBatchRequestPayload:Mr,prismaGraphQLToJSError:$r,PrismaClientUnknownRequestError:V,PrismaClientInitializationError:P,PrismaClientKnownRequestError:z,debug:N("prisma:client:accelerateEngine"),engineVersion:cu.version,clientVersion:e.clientVersion}},rr("clientVersion",e.clientVersion),this._engine=Ml(e,this._engineConfig),this._requestHandler=new ei(this,i),l.log)for(let f of l.log){let h=typeof f=="string"?f:f.emit==="stdout"?f.level:null;h&&this.$on(h,g=>{nt.log(`${nt.tags[h]??""}`,g.message||g.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=Pt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{Uo()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:So({clientMethod:i,activeProvider:a}),callsite:Ze(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=uu(n,i);return To(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new Z("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(To(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new Z(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:ql,callsite:Ze(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:So({clientMethod:i,activeProvider:a}),callsite:Ze(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...uu(n,i));throw new Z("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new Z("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=$f.nextId(),s=Yl(n.length),a=n.map((l,u)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let c=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,p={kind:"batch",id:o,index:u,isolationLevel:c,lock:s};return l.requestTransaction?.(p)??l});return lu(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let u={kind:"itx",...a};l=await n(this._createItxClient(u)),await this._engine.transaction("commit",o,a)}catch(u){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),u}return l}_createItxClient(n){return he(Pt(he(Qa(this),[re("_appliedParent",()=>this._appliedParent._createItxClient(n)),re("_createPrismaPromise",()=>Ro(n)),re(Mf,()=>n.id)])),[Fr(Ya)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Ff,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:u,args:c,...p}=l,d={...n,...p};c&&(d.args=i.middlewareArgsToRequestArgs(c)),n.transaction!==void 0&&u===!1&&delete d.transaction;let f=await el(this,d);return d.model?Ha({result:f,modelName:d.model,args:d.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):f};return this._tracingHelper.runInChildSpan(s.operation,()=>new pu.AsyncResource("prisma-client-request").runInAsyncScope(()=>a(o)))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:u,transaction:c,unpacker:p,otelParentCtx:d,customDataProxyFetch:f}){try{n=u?u(n):n;let h={name:"serialize"},g=this._tracingHelper.runInChildSpan(h,()=>$n({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return N.enabled("prisma:client")&&(rr("Prisma Client call:"),rr(`prisma.${i}(${Na(n)})`),rr("Generated request:"),rr(JSON.stringify(g,null,2)+` +`)),c?.kind==="batch"&&await c.lock,this._requestHandler.request({protocolQuery:g,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:c,unpacker:p,otelParentCtx:d,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:f})}catch(h){throw h.clientVersion=this._clientVersion,h}}$metrics=new Lr(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=Wa}return r}function uu(e,r){return qf(e)?[new ie(e,r),Wl]:[e,Jl]}function qf(e){return Array.isArray(e)&&Array.isArray(e.raw)}var Vf=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function gu(e){return new Proxy(e,{get(r,t){if(t in r)return r[t];if(!Vf.has(t))throw new TypeError(`Invalid enum value: ${String(t)}`)}})}function hu(e){st(e,{conflictCheck:"warn"})}0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); +/*! Bundled license information: + +decimal.js/decimal.mjs: + (*! + * decimal.js v10.5.0 + * An arbitrary-precision Decimal type for JavaScript. + * https://github.com/MikeMcl/decimal.js + * Copyright (c) 2025 Michael Mclaughlin + * MIT Licence + *) +*/ +//# sourceMappingURL=library.js.map diff --git a/packages/identity-prisma-client/runtime/react-native.js b/packages/identity-prisma-client/runtime/react-native.js new file mode 100644 index 0000000..03e959b --- /dev/null +++ b/packages/identity-prisma-client/runtime/react-native.js @@ -0,0 +1,84 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +"use strict";var ha=Object.create;var rr=Object.defineProperty;var ya=Object.getOwnPropertyDescriptor;var wa=Object.getOwnPropertyNames;var ba=Object.getPrototypeOf,Ea=Object.prototype.hasOwnProperty;var he=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ve=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Xe=(e,t)=>{for(var r in t)rr(e,r,{get:t[r],enumerable:!0})},ni=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of wa(t))!Ea.call(e,i)&&i!==r&&rr(e,i,{get:()=>t[i],enumerable:!(n=ya(t,i))||n.enumerable});return e};var Qe=(e,t,r)=>(r=e!=null?ha(ba(e)):{},ni(t||!e||!e.__esModule?rr(r,"default",{value:e,enumerable:!0}):r,e)),xa=e=>ni(rr({},"__esModule",{value:!0}),e);var y,x,c=he(()=>{"use strict";y={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:x}=y});var P,p=he(()=>{"use strict";P=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,d=he(()=>{"use strict";E=()=>{};E.prototype=E});var b,f=he(()=>{"use strict";b=class{value;constructor(t){this.value=t}deref(){return this.value}}});var Pi=Ve(nt=>{"use strict";m();c();p();d();f();var li=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Pa=li(e=>{"use strict";e.byteLength=l,e.toByteArray=g,e.fromByteArray=O;var t=[],r=[],n=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(o=0,s=i.length;o0)throw new Error("Invalid string. Length must be a multiple of 4");var F=C.indexOf("=");F===-1&&(F=S);var _=F===S?0:4-F%4;return[F,_]}function l(C){var S=a(C),F=S[0],_=S[1];return(F+_)*3/4-_}function u(C,S,F){return(S+F)*3/4-F}function g(C){var S,F=a(C),_=F[0],L=F[1],k=new n(u(C,_,L)),q=0,Y=L>0?_-4:_,$;for($=0;$>16&255,k[q++]=S>>8&255,k[q++]=S&255;return L===2&&(S=r[C.charCodeAt($)]<<2|r[C.charCodeAt($+1)]>>4,k[q++]=S&255),L===1&&(S=r[C.charCodeAt($)]<<10|r[C.charCodeAt($+1)]<<4|r[C.charCodeAt($+2)]>>2,k[q++]=S>>8&255,k[q++]=S&255),k}function h(C){return t[C>>18&63]+t[C>>12&63]+t[C>>6&63]+t[C&63]}function T(C,S,F){for(var _,L=[],k=S;kY?Y:q+k));return _===1?(S=C[F-1],L.push(t[S>>2]+t[S<<4&63]+"==")):_===2&&(S=(C[F-2]<<8)+C[F-1],L.push(t[S>>10]+t[S>>4&63]+t[S<<2&63]+"=")),L.join("")}}),va=li(e=>{e.read=function(t,r,n,i,o){var s,a,l=o*8-i-1,u=(1<>1,h=-7,T=n?o-1:0,O=n?-1:1,C=t[r+T];for(T+=O,s=C&(1<<-h)-1,C>>=-h,h+=l;h>0;s=s*256+t[r+T],T+=O,h-=8);for(a=s&(1<<-h)-1,s>>=-h,h+=i;h>0;a=a*256+t[r+T],T+=O,h-=8);if(s===0)s=1-g;else{if(s===u)return a?NaN:(C?-1:1)*(1/0);a=a+Math.pow(2,i),s=s-g}return(C?-1:1)*a*Math.pow(2,s-i)},e.write=function(t,r,n,i,o,s){var a,l,u,g=s*8-o-1,h=(1<>1,O=o===23?Math.pow(2,-24)-Math.pow(2,-77):0,C=i?0:s-1,S=i?1:-1,F=r<0||r===0&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(l=isNaN(r)?1:0,a=h):(a=Math.floor(Math.log(r)/Math.LN2),r*(u=Math.pow(2,-a))<1&&(a--,u*=2),a+T>=1?r+=O/u:r+=O*Math.pow(2,1-T),r*u>=2&&(a++,u/=2),a+T>=h?(l=0,a=h):a+T>=1?(l=(r*u-1)*Math.pow(2,o),a=a+T):(l=r*Math.pow(2,T-1)*Math.pow(2,o),a=0));o>=8;t[n+C]=l&255,C+=S,l/=256,o-=8);for(a=a<0;t[n+C]=a&255,C+=S,a/=256,g-=8);t[n+C-S]|=F*128}}),Xr=Pa(),tt=va(),ii=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;nt.Buffer=A;nt.SlowBuffer=Oa;nt.INSPECT_MAX_BYTES=50;var nr=2147483647;nt.kMaxLength=nr;A.TYPED_ARRAY_SUPPORT=Ta();!A.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function Ta(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(A.prototype,"parent",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.buffer}});Object.defineProperty(A.prototype,"offset",{enumerable:!0,get:function(){if(A.isBuffer(this))return this.byteOffset}});function Ce(e){if(e>nr)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,A.prototype),t}function A(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return rn(e)}return ui(e,t,r)}A.poolSize=8192;function ui(e,t,r){if(typeof e=="string")return Ca(e,t);if(ArrayBuffer.isView(e))return Sa(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(ye(e,ArrayBuffer)||e&&ye(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ye(e,SharedArrayBuffer)||e&&ye(e.buffer,SharedArrayBuffer)))return pi(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return A.from(n,t,r);let i=Ra(e);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return A.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}A.from=function(e,t,r){return ui(e,t,r)};Object.setPrototypeOf(A.prototype,Uint8Array.prototype);Object.setPrototypeOf(A,Uint8Array);function ci(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function Aa(e,t,r){return ci(e),e<=0?Ce(e):t!==void 0?typeof r=="string"?Ce(e).fill(t,r):Ce(e).fill(t):Ce(e)}A.alloc=function(e,t,r){return Aa(e,t,r)};function rn(e){return ci(e),Ce(e<0?0:nn(e)|0)}A.allocUnsafe=function(e){return rn(e)};A.allocUnsafeSlow=function(e){return rn(e)};function Ca(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!A.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=di(e,t)|0,n=Ce(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function en(e){let t=e.length<0?0:nn(e.length)|0,r=Ce(t);for(let n=0;n=nr)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+nr.toString(16)+" bytes");return e|0}function Oa(e){return+e!=e&&(e=0),A.alloc(+e)}A.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==A.prototype};A.compare=function(e,t){if(ye(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),ye(t,Uint8Array)&&(t=A.from(t,t.offset,t.byteLength)),!A.isBuffer(e)||!A.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let r=e.length,n=t.length;for(let i=0,o=Math.min(r,n);in.length?(A.isBuffer(o)||(o=A.from(o)),o.copy(n,i)):Uint8Array.prototype.set.call(n,o,i);else if(A.isBuffer(o))o.copy(n,i);else throw new TypeError('"list" argument must be an Array of Buffers');i+=o.length}return n};function di(e,t){if(A.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||ye(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return tn(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return xi(e).length;default:if(i)return n?-1:tn(e).length;t=(""+t).toLowerCase(),i=!0}}A.byteLength=di;function ka(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return ja(this,t,r);case"utf8":case"utf-8":return mi(this,t,r);case"ascii":return qa(this,t,r);case"latin1":case"binary":return Ba(this,t,r);case"base64":return La(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ua(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}A.prototype._isBuffer=!0;function Je(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}A.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tt&&(e+=" ... "),""};ii&&(A.prototype[ii]=A.prototype.inspect);A.prototype.compare=function(e,t,r,n,i){if(ye(e,Uint8Array)&&(e=A.from(e,e.offset,e.byteLength)),!A.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),r===void 0&&(r=e?e.length:0),n===void 0&&(n=0),i===void 0&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,n>>>=0,i>>>=0,this===e)return 0;let o=i-n,s=r-t,a=Math.min(o,s),l=this.slice(n,i),u=e.slice(t,r);for(let g=0;g2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,sn(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=A.from(t,n)),A.isBuffer(t))return t.length===0?-1:oi(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):oi(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function oi(e,t,r,n,i){let o=1,s=e.length,a=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;o=2,s/=2,a/=2,r/=2}function l(g,h){return o===1?g[h]:g.readUInt16BE(h*o)}let u;if(i){let g=-1;for(u=r;us&&(r=s-a),u=r;u>=0;u--){let g=!0;for(let h=0;hi&&(n=i)):n=i;let o=t.length;n>o/2&&(n=o/2);let s;for(s=0;s>>0,isFinite(r)?(r=r>>>0,n===void 0&&(n="utf8")):(n=r,r=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let i=this.length-t;if((r===void 0||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return Ia(this,e,t,r);case"utf8":case"utf-8":return Fa(this,e,t,r);case"ascii":case"latin1":case"binary":return Ma(this,e,t,r);case"base64":return _a(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Da(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}};A.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function La(e,t,r){return t===0&&r===e.length?Xr.fromByteArray(e):Xr.fromByteArray(e.slice(t,r))}function mi(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i239?4:o>223?3:o>191?2:1;if(i+a<=r){let l,u,g,h;switch(a){case 1:o<128&&(s=o);break;case 2:l=e[i+1],(l&192)===128&&(h=(o&31)<<6|l&63,h>127&&(s=h));break;case 3:l=e[i+1],u=e[i+2],(l&192)===128&&(u&192)===128&&(h=(o&15)<<12|(l&63)<<6|u&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:l=e[i+1],u=e[i+2],g=e[i+3],(l&192)===128&&(u&192)===128&&(g&192)===128&&(h=(o&15)<<18|(l&63)<<12|(u&63)<<6|g&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return Na(n)}var si=4096;function Na(e){let t=e.length;if(t<=si)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn)&&(r=n);let i="";for(let o=t;or&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),tr)throw new RangeError("Trying to access beyond buffer length")}A.prototype.readUintLE=A.prototype.readUIntLE=function(e,t,r){e=e>>>0,t=t>>>0,r||K(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>0,t=t>>>0,r||K(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n};A.prototype.readUint8=A.prototype.readUInt8=function(e,t){return e=e>>>0,t||K(e,1,this.length),this[e]};A.prototype.readUint16LE=A.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||K(e,2,this.length),this[e]|this[e+1]<<8};A.prototype.readUint16BE=A.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||K(e,2,this.length),this[e]<<8|this[e+1]};A.prototype.readUint32LE=A.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||K(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};A.prototype.readUint32BE=A.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||K(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};A.prototype.readBigUInt64LE=_e(function(e){e=e>>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+r*2**24;return BigInt(n)+(BigInt(i)<>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+r;return(BigInt(n)<>>0,t=t>>>0,r||K(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n};A.prototype.readIntBE=function(e,t,r){e=e>>>0,t=t>>>0,r||K(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o};A.prototype.readInt8=function(e,t){return e=e>>>0,t||K(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};A.prototype.readInt16LE=function(e,t){e=e>>>0,t||K(e,2,this.length);let r=this[e]|this[e+1]<<8;return r&32768?r|4294901760:r};A.prototype.readInt16BE=function(e,t){e=e>>>0,t||K(e,2,this.length);let r=this[e+1]|this[e]<<8;return r&32768?r|4294901760:r};A.prototype.readInt32LE=function(e,t){return e=e>>>0,t||K(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};A.prototype.readInt32BE=function(e,t){return e=e>>>0,t||K(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};A.prototype.readBigInt64LE=_e(function(e){e=e>>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(r<<24);return(BigInt(n)<>>0,rt(e,"offset");let t=this[e],r=this[e+7];(t===void 0||r===void 0)&&Ct(e,this.length-8);let n=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(n)<>>0,t||K(e,4,this.length),tt.read(this,e,!0,23,4)};A.prototype.readFloatBE=function(e,t){return e=e>>>0,t||K(e,4,this.length),tt.read(this,e,!1,23,4)};A.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||K(e,8,this.length),tt.read(this,e,!0,52,8)};A.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||K(e,8,this.length),tt.read(this,e,!1,52,8)};function oe(e,t,r,n,i,o){if(!A.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}A.prototype.writeUintLE=A.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;oe(this,e,t,r,s,0)}let i=1,o=0;for(this[t]=e&255;++o>>0,r=r>>>0,!n){let s=Math.pow(2,8*r)-1;oe(this,e,t,r,s,0)}let i=r-1,o=1;for(this[t+i]=e&255;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r};A.prototype.writeUint8=A.prototype.writeUInt8=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,1,255,0),this[t]=e&255,t+1};A.prototype.writeUint16LE=A.prototype.writeUInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeUint16BE=A.prototype.writeUInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeUint32LE=A.prototype.writeUInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};A.prototype.writeUint32BE=A.prototype.writeUInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function gi(e,t,r,n,i){Ei(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,s=s>>8,e[r++]=s,r}function hi(e,t,r,n,i){Ei(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o=o>>8,e[r+6]=o,o=o>>8,e[r+5]=o,o=o>>8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s=s>>8,e[r+2]=s,s=s>>8,e[r+1]=s,s=s>>8,e[r]=s,r+8}A.prototype.writeBigUInt64LE=_e(function(e,t=0){return gi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeBigUInt64BE=_e(function(e,t=0){return hi(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});A.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);oe(this,e,t,r,a-1,-a)}let i=0,o=1,s=0;for(this[t]=e&255;++i>0)-s&255;return t+r};A.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t=t>>>0,!n){let a=Math.pow(2,8*r-1);oe(this,e,t,r,a-1,-a)}let i=r-1,o=1,s=0;for(this[t+i]=e&255;--i>=0&&(o*=256);)e<0&&s===0&&this[t+i+1]!==0&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r};A.prototype.writeInt8=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};A.prototype.writeInt16LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};A.prototype.writeInt16BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};A.prototype.writeInt32LE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};A.prototype.writeInt32BE=function(e,t,r){return e=+e,t=t>>>0,r||oe(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};A.prototype.writeBigInt64LE=_e(function(e,t=0){return gi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});A.prototype.writeBigInt64BE=_e(function(e,t=0){return hi(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function yi(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function wi(e,t,r,n,i){return t=+t,r=r>>>0,i||yi(e,t,r,4,34028234663852886e22,-34028234663852886e22),tt.write(e,t,r,n,23,4),r+4}A.prototype.writeFloatLE=function(e,t,r){return wi(this,e,t,!0,r)};A.prototype.writeFloatBE=function(e,t,r){return wi(this,e,t,!1,r)};function bi(e,t,r,n,i){return t=+t,r=r>>>0,i||yi(e,t,r,8,17976931348623157e292,-17976931348623157e292),tt.write(e,t,r,n,52,8),r+8}A.prototype.writeDoubleLE=function(e,t,r){return bi(this,e,t,!0,r)};A.prototype.writeDoubleBE=function(e,t,r){return bi(this,e,t,!1,r)};A.prototype.copy=function(e,t,r,n){if(!A.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),!n&&n!==0&&(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>0,r=r===void 0?this.length:r>>>0,e||(e=0);let i;if(typeof e=="number")for(i=t;i2**32?i=ai(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=ai(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function ai(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function $a(e,t,r){rt(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&Ct(t,e.length-(r+1))}function Ei(e,t,r,n,i,o){if(e>r||e3?t===0||t===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${t}${s} and <= ${r}${s}`,new et.ERR_OUT_OF_RANGE("value",a,e)}$a(n,i,o)}function rt(e,t){if(typeof e!="number")throw new et.ERR_INVALID_ARG_TYPE(t,"number",e)}function Ct(e,t,r){throw Math.floor(e)!==e?(rt(e,r),new et.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new et.ERR_BUFFER_OUT_OF_BOUNDS:new et.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var Va=/[^+/0-9A-Za-z-_]/g;function Qa(e){if(e=e.split("=")[0],e=e.trim().replace(Va,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function tn(e,t){t=t||1/0;let r,n=e.length,i=null,o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return o}function Ja(e){let t=[];for(let r=0;r>8,i=r%256,o.push(i),o.push(n);return o}function xi(e){return Xr.toByteArray(Qa(e))}function ir(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function ye(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function sn(e){return e!==e}var Wa=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function _e(e){return typeof BigInt>"u"?Ka:e}function Ka(){throw new Error("BigInt not supported")}});var w,m=he(()=>{"use strict";w=Qe(Pi())});function hl(){return!1}function pn(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function yl(){return pn()}function wl(){return[]}function bl(e){e(null,[])}function El(){return""}function xl(){return""}function Pl(){}function vl(){}function Tl(){}function Al(){}function Cl(){}function Sl(){}function Rl(){}function Ol(){}function kl(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function Il(e,t){t(null,pn())}var Fl,Ml,sr,dn=he(()=>{"use strict";m();c();p();d();f();Fl={},Ml={existsSync:hl,lstatSync:pn,stat:Il,statSync:yl,readdirSync:wl,readdir:bl,readlinkSync:El,realpathSync:xl,chmodSync:Pl,renameSync:vl,mkdirSync:Tl,rmdirSync:Al,rmSync:Cl,unlinkSync:Sl,watchFile:Rl,unwatchFile:Ol,watch:kl,promises:Fl},sr=Ml});var Di=Ve((If,_l)=>{_l.exports={name:"@prisma/internals",version:"6.19.1",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Ll(...e){return e.join("/")}function Nl(...e){return e.join("/")}function ql(e){let t=Li(e),r=Ni(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function Li(e){let t=e.split("/");return t[t.length-1]}function Ni(e){return e.split("/").slice(0,-1).join("/")}function jl(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var qi,Bl,Ul,$l,Re,gn=he(()=>{"use strict";m();c();p();d();f();qi="/",Bl=":";Ul={sep:qi},$l={basename:Li,delimiter:Bl,dirname:Ni,join:Nl,normalize:jl,parse:ql,posix:Ul,resolve:Ll,sep:qi},Re=$l});var Ui=Ve((Dm,ji)=>{"use strict";m();c();p();d();f();ji.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var Gi=Ve((Xm,Ji)=>{"use strict";m();c();p();d();f();Ji.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Ki=Ve((Vg,cr)=>{"use strict";m();c();p();d();f();cr.exports=(e={})=>{let t;if(e.repoUrl)t=e.repoUrl;else if(e.user&&e.repo)t=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let r=new URL(`${t}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}r.searchParams.set(i,o)}}return r.toString()};cr.exports.default=cr.exports});var In=Ve((o0,wo)=>{"use strict";m();c();p();d();f();wo.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";m();c();p();d();f()});var To=he(()=>{"use strict";m();c();p();d();f()});var Ko=Ve((Ov,Uc)=>{Uc.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var jr,zo=he(()=>{"use strict";m();c();p();d();f();jr=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});var ad={};Xe(ad,{DMMF:()=>Bt,Debug:()=>z,Decimal:()=>Fe,Extensions:()=>an,MetricsClient:()=>bt,PrismaClientInitializationError:()=>Q,PrismaClientKnownRequestError:()=>se,PrismaClientRustPanicError:()=>ce,PrismaClientUnknownRequestError:()=>G,PrismaClientValidationError:()=>te,Public:()=>ln,Sql:()=>le,createParam:()=>jo,defineDmmfProperty:()=>Go,deserializeJsonResponse:()=>Pt,deserializeRawResult:()=>Hr,dmmfToRuntimeDataModel:()=>Zi,empty:()=>Yo,getPrismaClient:()=>fa,getRuntime:()=>Ds,join:()=>Ho,makeStrictEnum:()=>ma,makeTypedQueryFactory:()=>Wo,objectEnumValues:()=>kr,raw:()=>jn,serializeJsonQuery:()=>Nr,skip:()=>Lr,sqltag:()=>Un,warnEnvConflicts:()=>void 0,warnOnce:()=>Lt});module.exports=xa(ad);m();c();p();d();f();var an={};Xe(an,{defineExtension:()=>vi,getExtensionContext:()=>Ti});m();c();p();d();f();m();c();p();d();f();function vi(e){return typeof e=="function"?e:t=>t.$extends(e)}m();c();p();d();f();function Ti(e){return e}var ln={};Xe(ln,{validator:()=>Ai});m();c();p();d();f();m();c();p();d();f();function Ai(...e){return t=>t}m();c();p();d();f();m();c();p();d();f();var or={};Xe(or,{$:()=>ki,bgBlack:()=>il,bgBlue:()=>ll,bgCyan:()=>cl,bgGreen:()=>sl,bgMagenta:()=>ul,bgRed:()=>ol,bgWhite:()=>pl,bgYellow:()=>al,black:()=>el,blue:()=>We,bold:()=>de,cyan:()=>Se,dim:()=>St,gray:()=>It,green:()=>Ot,grey:()=>nl,hidden:()=>Za,inverse:()=>Ya,italic:()=>Ha,magenta:()=>tl,red:()=>Ge,reset:()=>za,strikethrough:()=>Xa,underline:()=>Rt,white:()=>rl,yellow:()=>kt});m();c();p();d();f();var un,Ci,Si,Ri,Oi=!0;typeof y<"u"&&({FORCE_COLOR:un,NODE_DISABLE_COLORS:Ci,NO_COLOR:Si,TERM:Ri}=y.env||{},Oi=y.stdout&&y.stdout.isTTY);var ki={enabled:!Ci&&Si==null&&Ri!=="dumb"&&(un!=null&&un!=="0"||Oi)};function V(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!ki.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var za=V(0,0),de=V(1,22),St=V(2,22),Ha=V(3,23),Rt=V(4,24),Ya=V(7,27),Za=V(8,28),Xa=V(9,29),el=V(30,39),Ge=V(31,39),Ot=V(32,39),kt=V(33,39),We=V(34,39),tl=V(35,39),Se=V(36,39),rl=V(37,39),It=V(90,39),nl=V(90,39),il=V(40,49),ol=V(41,49),sl=V(42,49),al=V(43,49),ll=V(44,49),ul=V(45,49),cl=V(46,49),pl=V(47,49);m();c();p();d();f();var dl=100,Ii=["green","yellow","blue","magenta","cyan","red"],Ft=[],Fi=Date.now(),fl=0,cn=typeof y<"u"?y.env:{};globalThis.DEBUG??=cn.DEBUG??"";globalThis.DEBUG_COLORS??=cn.DEBUG_COLORS?cn.DEBUG_COLORS==="true":!0;var Mt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function ml(e){let t={color:Ii[fl++%Ii.length],enabled:Mt.enabled(e),namespace:e,log:Mt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&Ft.push([o,...n]),Ft.length>dl&&Ft.shift(),Mt.enabled(o)||i){let l=n.map(g=>typeof g=="string"?g:gl(g)),u=`+${Date.now()-Fi}ms`;Fi=Date.now(),globalThis.DEBUG_COLORS?a(or[s](de(o)),...l,or[s](u)):a(o,...l,u)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var z=new Proxy(ml,{get:(e,t)=>Mt[t],set:(e,t,r)=>Mt[t]=r});function gl(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function Mi(e=7500){let t=Ft.map(([r,...n])=>`${r} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(` +`);return t.length{let r={adapterName:e.adapterName,errorRegistry:t,queryRaw:Oe(t,e.queryRaw.bind(e)),executeRaw:Oe(t,e.executeRaw.bind(e)),executeScript:Oe(t,e.executeScript.bind(e)),dispose:Oe(t,e.dispose.bind(e)),provider:e.provider,startTransaction:async(...n)=>(await Oe(t,e.startTransaction.bind(e))(...n)).map(o=>Jl(t,o))};return e.getConnectionInfo&&(r.getConnectionInfo=Gl(t,e.getConnectionInfo.bind(e))),r},Jl=(e,t)=>({adapterName:t.adapterName,provider:t.provider,options:t.options,queryRaw:Oe(e,t.queryRaw.bind(t)),executeRaw:Oe(e,t.executeRaw.bind(t)),commit:Oe(e,t.commit.bind(t)),rollback:Oe(e,t.rollback.bind(t))});function Oe(e,t){return async(...r)=>{try{return ar(await t(...r))}catch(n){if(Bi("[error@wrapAsync]",n),hn(n))return Ke(n.cause);let i=e.registerNewError(n);return Ke({kind:"GenericJs",id:i})}}}function Gl(e,t){return(...r)=>{try{return ar(t(...r))}catch(n){if(Bi("[error@wrapSync]",n),hn(n))return Ke(n.cause);let i=e.registerNewError(n);return Ke({kind:"GenericJs",id:i})}}}m();c();p();d();f();var $i=Qe(Ui(),1);function wn(e){let t=(0,$i.default)(e);if(t===0)return e;let r=new RegExp(`^[ \\t]{${t}}`,"gm");return e.replace(r,"")}m();c();p();d();f();var Vi="prisma+postgres",Qi=`${Vi}:`;function bn(e){return e?.toString().startsWith(`${Qi}//`)??!1}var Dt={};Xe(Dt,{error:()=>zl,info:()=>Kl,log:()=>Wl,query:()=>Hl,should:()=>Wi,tags:()=>_t,warn:()=>En});m();c();p();d();f();var _t={error:Ge("prisma:error"),warn:kt("prisma:warn"),info:Se("prisma:info"),query:We("prisma:query")},Wi={warn:()=>!y.env.PRISMA_DISABLE_WARNINGS};function Wl(...e){console.log(...e)}function En(e,...t){Wi.warn()&&console.warn(`${_t.warn} ${e}`,...t)}function Kl(e,...t){console.info(`${_t.info} ${e}`,...t)}function zl(e,...t){console.error(`${_t.error} ${e}`,...t)}function Hl(e,...t){console.log(`${_t.query} ${e}`,...t)}m();c();p();d();f();function ur(e,t){if(!e)throw new Error(`${t}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`)}m();c();p();d();f();function ze(e,t){throw new Error(t)}m();c();p();d();f();m();c();p();d();f();function xn({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var Yl=xn();function ot(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Yl,"")}m();c();p();d();f();gn();function Pn(e){return Re.sep===Re.posix.sep?e:e.split(Re.sep).join(Re.posix.sep)}m();c();p();d();f();function vn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}m();c();p();d();f();function pr(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}m();c();p();d();f();function Tn(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{zi.has(e)||(zi.add(e),En(t,...r))};var Q=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};ue(Q,"PrismaClientInitializationError");m();c();p();d();f();var se=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};ue(se,"PrismaClientKnownRequestError");m();c();p();d();f();var ce=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};ue(ce,"PrismaClientRustPanicError");m();c();p();d();f();var G=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};ue(G,"PrismaClientUnknownRequestError");m();c();p();d();f();var te=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};ue(te,"PrismaClientValidationError");m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var we=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};m();c();p();d();f();function De(e){return e.substring(0,1).toLowerCase()+e.substring(1)}m();c();p();d();f();function Yi(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}m();c();p();d();f();function Nt(e){let t;return{get(){return t||(t={value:e()}),t.value}}}m();c();p();d();f();function Zi(e){return{models:An(e.models),enums:An(e.enums),types:An(e.types)}}function An(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}m();c();p();d();f();function st(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function dr(e){return e.toString()!=="Invalid Date"}m();c();p();d();f();m();c();p();d();f();var at=9e15,Be=1e9,Cn="0123456789abcdef",gr="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",hr="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Sn={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-at,maxE:at,crypto:!1},ro,ke,D=!0,wr="[DecimalError] ",qe=wr+"Invalid argument: ",no=wr+"Precision limit exceeded",io=wr+"crypto unavailable",oo="[object Decimal]",re=Math.floor,W=Math.pow,Zl=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Xl=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,eu=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,so=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,fe=1e7,M=7,tu=9007199254740991,ru=gr.length-1,Rn=hr.length-1,R={toStringTag:oo};R.absoluteValue=R.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),I(e)};R.ceil=function(){return I(new this.constructor(this),this.e+1,2)};R.clampedTo=R.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(qe+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};R.comparedTo=R.cmp=function(e){var t,r,n,i,o=this,s=o.d,a=(e=new o.constructor(e)).d,l=o.s,u=e.s;if(!s||!a)return!l||!u?NaN:l!==u?l:s===a?0:!s^l<0?1:-1;if(!s[0]||!a[0])return s[0]?l:a[0]?-u:0;if(l!==u)return l;if(o.e!==e.e)return o.e>e.e^l<0?1:-1;for(n=s.length,i=a.length,t=0,r=na[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};R.cosine=R.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+M,n.rounding=1,r=nu(n,po(n,r)),n.precision=e,n.rounding=t,I(ke==2||ke==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};R.cubeRoot=R.cbrt=function(){var e,t,r,n,i,o,s,a,l,u,g=this,h=g.constructor;if(!g.isFinite()||g.isZero())return new h(g);for(D=!1,o=g.s*W(g.s*g,1/3),!o||Math.abs(o)==1/0?(r=Z(g.d),e=g.e,(o=(e-r.length+1)%3)&&(r+=o==1||o==-2?"0":"00"),o=W(r,1/3),e=re((e+1)/3)-(e%3==(e<0?-1:2)),o==1/0?r="5e"+e:(r=o.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new h(r),n.s=g.s):n=new h(o.toString()),s=(e=h.precision)+3;;)if(a=n,l=a.times(a).times(a),u=l.plus(g),n=U(u.plus(g).times(a),u.plus(l),s+2,1),Z(a.d).slice(0,s)===(r=Z(n.d)).slice(0,s))if(r=r.slice(s-3,s+1),r=="9999"||!i&&r=="4999"){if(!i&&(I(a,e+1,0),a.times(a).times(a).eq(g))){n=a;break}s+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(I(n,e+1,1),t=!n.times(n).times(n).eq(g));break}return D=!0,I(n,e,h.rounding,t)};R.decimalPlaces=R.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-re(this.e/M))*M,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};R.dividedBy=R.div=function(e){return U(this,new this.constructor(e))};R.dividedToIntegerBy=R.divToInt=function(e){var t=this,r=t.constructor;return I(U(t,new r(e),0,1,1),r.precision,r.rounding)};R.equals=R.eq=function(e){return this.cmp(e)===0};R.floor=function(){return I(new this.constructor(this),this.e+1,3)};R.greaterThan=R.gt=function(e){return this.cmp(e)>0};R.greaterThanOrEqualTo=R.gte=function(e){var t=this.cmp(e);return t==1||t===0};R.hyperbolicCosine=R.cosh=function(){var e,t,r,n,i,o=this,s=o.constructor,a=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return a;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,i=o.d.length,i<32?(e=Math.ceil(i/3),t=(1/Er(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),o=lt(s,1,o.times(t),new s(1),!0);for(var l,u=e,g=new s(8);u--;)l=o.times(o),o=a.minus(l.times(g.minus(l.times(g))));return I(o,s.precision=r,s.rounding=n,!0)};R.hyperbolicSine=R.sinh=function(){var e,t,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(t=o.precision,r=o.rounding,o.precision=t+Math.max(i.e,i.sd())+4,o.rounding=1,n=i.d.length,n<3)i=lt(o,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/Er(5,e)),i=lt(o,2,i,i,!0);for(var s,a=new o(5),l=new o(16),u=new o(20);e--;)s=i.times(i),i=i.times(a.plus(s.times(l.times(s).plus(u))))}return o.precision=t,o.rounding=r,I(i,t,r,!0)};R.hyperbolicTangent=R.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,U(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};R.inverseCosine=R.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?be(t,n,i):new t(0):new t(NaN):e.isZero()?be(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};R.inverseHyperbolicCosine=R.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,D=!1,r=r.times(r).minus(1).sqrt().plus(r),D=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};R.inverseHyperbolicSine=R.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,D=!1,r=r.times(r).plus(1).sqrt().plus(r),D=!0,n.precision=e,n.rounding=t,r.ln())};R.inverseHyperbolicTangent=R.atanh=function(){var e,t,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=o.precision,t=o.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?I(new o(i),e,t,!0):(o.precision=r=n-i.e,i=U(i.plus(1),new o(1).minus(i),r+e,1),o.precision=e+4,o.rounding=1,i=i.ln(),o.precision=e,o.rounding=t,i.times(.5))):new o(NaN)};R.inverseSine=R.asin=function(){var e,t,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(t=i.abs().cmp(1),r=o.precision,n=o.rounding,t!==-1?t===0?(e=be(o,r+4,n).times(.5),e.s=i.s,e):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))};R.inverseTangent=R.atan=function(){var e,t,r,n,i,o,s,a,l,u=this,g=u.constructor,h=g.precision,T=g.rounding;if(u.isFinite()){if(u.isZero())return new g(u);if(u.abs().eq(1)&&h+4<=Rn)return s=be(g,h+4,T).times(.25),s.s=u.s,s}else{if(!u.s)return new g(NaN);if(h+4<=Rn)return s=be(g,h+4,T).times(.5),s.s=u.s,s}for(g.precision=a=h+10,g.rounding=1,r=Math.min(28,a/M+2|0),e=r;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(D=!1,t=Math.ceil(a/M),n=1,l=u.times(u),s=new g(u),i=u;e!==-1;)if(i=i.times(l),o=s.minus(i.div(n+=2)),i=i.times(l),s=o.plus(i.div(n+=2)),s.d[t]!==void 0)for(e=t;s.d[e]===o.d[e]&&e--;);return r&&(s=s.times(2<this.d.length-2};R.isNaN=function(){return!this.s};R.isNegative=R.isNeg=function(){return this.s<0};R.isPositive=R.isPos=function(){return this.s>0};R.isZero=function(){return!!this.d&&this.d[0]===0};R.lessThan=R.lt=function(e){return this.cmp(e)<0};R.lessThanOrEqualTo=R.lte=function(e){return this.cmp(e)<1};R.logarithm=R.log=function(e){var t,r,n,i,o,s,a,l,u=this,g=u.constructor,h=g.precision,T=g.rounding,O=5;if(e==null)e=new g(10),t=!0;else{if(e=new g(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new g(NaN);t=e.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new g(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)o=!0;else{for(i=r[0];i%10===0;)i/=10;o=i!==1}if(D=!1,a=h+O,s=Ne(u,a),n=t?yr(g,a+10):Ne(e,a),l=U(s,n,a,1),qt(l.d,i=h,T))do if(a+=10,s=Ne(u,a),n=t?yr(g,a+10):Ne(e,a),l=U(s,n,a,1),!o){+Z(l.d).slice(i+1,i+15)+1==1e14&&(l=I(l,h+1,0));break}while(qt(l.d,i+=10,T));return D=!0,I(l,h,T)};R.minus=R.sub=function(e){var t,r,n,i,o,s,a,l,u,g,h,T,O=this,C=O.constructor;if(e=new C(e),!O.d||!e.d)return!O.s||!e.s?e=new C(NaN):O.d?e.s=-e.s:e=new C(e.d||O.s!==e.s?O:NaN),e;if(O.s!=e.s)return e.s=-e.s,O.plus(e);if(u=O.d,T=e.d,a=C.precision,l=C.rounding,!u[0]||!T[0]){if(T[0])e.s=-e.s;else if(u[0])e=new C(O);else return new C(l===3?-0:0);return D?I(e,a,l):e}if(r=re(e.e/M),g=re(O.e/M),u=u.slice(),o=g-r,o){for(h=o<0,h?(t=u,o=-o,s=T.length):(t=T,r=g,s=u.length),n=Math.max(Math.ceil(a/M),s)+2,o>n&&(o=n,t.length=1),t.reverse(),n=o;n--;)t.push(0);t.reverse()}else{for(n=u.length,s=T.length,h=n0;--n)u[s++]=0;for(n=T.length;n>o;){if(u[--n]s?o+1:s+1,i>s&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(s=u.length,i=g.length,s-i<0&&(i=s,r=g,g=u,u=r),t=0;i;)t=(u[--i]=u[i]+g[i]+t)/fe|0,u[i]%=fe;for(t&&(u.unshift(t),++n),s=u.length;u[--s]==0;)u.pop();return e.d=u,e.e=br(u,n),D?I(e,a,l):e};R.precision=R.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(qe+e);return r.d?(t=ao(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};R.round=function(){var e=this,t=e.constructor;return I(new t(e),e.e+1,t.rounding)};R.sine=R.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+M,n.rounding=1,r=ou(n,po(n,r)),n.precision=e,n.rounding=t,I(ke>2?r.neg():r,e,t,!0)):new n(NaN)};R.squareRoot=R.sqrt=function(){var e,t,r,n,i,o,s=this,a=s.d,l=s.e,u=s.s,g=s.constructor;if(u!==1||!a||!a[0])return new g(!u||u<0&&(!a||a[0])?NaN:a?s:1/0);for(D=!1,u=Math.sqrt(+s),u==0||u==1/0?(t=Z(a),(t.length+l)%2==0&&(t+="0"),u=Math.sqrt(t),l=re((l+1)/2)-(l<0||l%2),u==1/0?t="5e"+l:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new g(t)):n=new g(u.toString()),r=(l=g.precision)+3;;)if(o=n,n=o.plus(U(s,o,r+2,1)).times(.5),Z(o.d).slice(0,r)===(t=Z(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(I(o,l+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(I(n,l+1,1),e=!n.times(n).eq(s));break}return D=!0,I(n,l,g.rounding,e)};R.tangent=R.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=U(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,I(ke==2||ke==4?r.neg():r,e,t,!0)):new n(NaN)};R.times=R.mul=function(e){var t,r,n,i,o,s,a,l,u,g=this,h=g.constructor,T=g.d,O=(e=new h(e)).d;if(e.s*=g.s,!T||!T[0]||!O||!O[0])return new h(!e.s||T&&!T[0]&&!O||O&&!O[0]&&!T?NaN:!T||!O?e.s/0:e.s*0);for(r=re(g.e/M)+re(e.e/M),l=T.length,u=O.length,l=0;){for(t=0,i=l+n;i>n;)a=o[i]+O[n]*T[i-n-1]+t,o[i--]=a%fe|0,t=a/fe|0;o[i]=(o[i]+t)%fe|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=br(o,r),D?I(e,h.precision,h.rounding):e};R.toBinary=function(e,t){return kn(this,2,e,t)};R.toDecimalPlaces=R.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(ae(e,0,Be),t===void 0?t=n.rounding:ae(t,0,8),I(r,e+r.e+1,t))};R.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Ee(n,!0):(ae(e,0,Be),t===void 0?t=i.rounding:ae(t,0,8),n=I(new i(n),e+1,t),r=Ee(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?r=Ee(i):(ae(e,0,Be),t===void 0?t=o.rounding:ae(t,0,8),n=I(new o(i),e+i.e+1,t),r=Ee(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};R.toFraction=function(e){var t,r,n,i,o,s,a,l,u,g,h,T,O=this,C=O.d,S=O.constructor;if(!C)return new S(O);if(u=r=new S(1),n=l=new S(0),t=new S(n),o=t.e=ao(C)-O.e-1,s=o%M,t.d[0]=W(10,s<0?M+s:s),e==null)e=o>0?t:u;else{if(a=new S(e),!a.isInt()||a.lt(u))throw Error(qe+a);e=a.gt(t)?o>0?t:u:a}for(D=!1,a=new S(Z(C)),g=S.precision,S.precision=o=C.length*M*2;h=U(a,t,0,1,1),i=r.plus(h.times(n)),i.cmp(e)!=1;)r=n,n=i,i=u,u=l.plus(h.times(i)),l=i,i=t,t=a.minus(h.times(i)),a=i;return i=U(e.minus(r),n,0,1,1),l=l.plus(i.times(u)),r=r.plus(i.times(n)),l.s=u.s=O.s,T=U(u,n,o,1).minus(O).abs().cmp(U(l,r,o,1).minus(O).abs())<1?[u,n]:[l,r],S.precision=g,D=!0,T};R.toHexadecimal=R.toHex=function(e,t){return kn(this,16,e,t)};R.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:ae(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(D=!1,r=U(r,e,0,t,1).times(e),D=!0,I(r)):(e.s=r.s,r=e),r};R.toNumber=function(){return+this};R.toOctal=function(e,t){return kn(this,8,e,t)};R.toPower=R.pow=function(e){var t,r,n,i,o,s,a=this,l=a.constructor,u=+(e=new l(e));if(!a.d||!e.d||!a.d[0]||!e.d[0])return new l(W(+a,u));if(a=new l(a),a.eq(1))return a;if(n=l.precision,o=l.rounding,e.eq(1))return I(a,n,o);if(t=re(e.e/M),t>=e.d.length-1&&(r=u<0?-u:u)<=tu)return i=lo(l,a,r,n),e.s<0?new l(1).div(i):I(i,n,o);if(s=a.s,s<0){if(tl.maxE+1||t0?s/0:0):(D=!1,l.rounding=a.s=1,r=Math.min(12,(t+"").length),i=On(e.times(Ne(a,n+r)),n),i.d&&(i=I(i,n+5,1),qt(i.d,n,o)&&(t=n+10,i=I(On(e.times(Ne(a,t+r)),t),t+5,1),+Z(i.d).slice(n+1,n+15)+1==1e14&&(i=I(i,n+1,0)))),i.s=s,D=!0,l.rounding=o,I(i,n,o))};R.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Ee(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ae(e,1,Be),t===void 0?t=i.rounding:ae(t,0,8),n=I(new i(n),e,t),r=Ee(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};R.toSignificantDigits=R.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(ae(e,1,Be),t===void 0?t=n.rounding:ae(t,0,8)),I(new n(r),e,t)};R.toString=function(){var e=this,t=e.constructor,r=Ee(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};R.truncated=R.trunc=function(){return I(new this.constructor(this),this.e+1,1)};R.valueOf=R.toJSON=function(){var e=this,t=e.constructor,r=Ee(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function Z(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;tr)throw Error(qe+e)}function qt(e,t,r,n){var i,o,s,a;for(o=e[0];o>=10;o/=10)--t;return--t<0?(t+=M,i=0):(i=Math.ceil((t+1)/M),t%=M),o=W(10,M-t),a=e[i]%o|0,n==null?t<3?(t==0?a=a/100|0:t==1&&(a=a/10|0),s=r<4&&a==99999||r>3&&a==49999||a==5e4||a==0):s=(r<4&&a+1==o||r>3&&a+1==o/2)&&(e[i+1]/o/100|0)==W(10,t-2)-1||(a==o/2||a==0)&&(e[i+1]/o/100|0)==0:t<4?(t==0?a=a/1e3|0:t==1?a=a/100|0:t==2&&(a=a/10|0),s=(n||r<4)&&a==9999||!n&&r>3&&a==4999):s=((n||r<4)&&a+1==o||!n&&r>3&&a+1==o/2)&&(e[i+1]/o/1e3|0)==W(10,t-3)-1,s}function fr(e,t,r){for(var n,i=[0],o,s=0,a=e.length;sr-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function nu(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/Er(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=lt(e,1,t.times(i),new e(1));for(var o=r;o--;){var s=t.times(t);t=s.times(s).minus(s).times(8).plus(1)}return e.precision-=r,t}var U=function(){function e(n,i,o){var s,a=0,l=n.length;for(n=n.slice();l--;)s=n[l]*i+a,n[l]=s%o|0,a=s/o|0;return a&&n.unshift(a),n}function t(n,i,o,s){var a,l;if(o!=s)l=o>s?1:-1;else for(a=l=0;ai[a]?1:-1;break}return l}function r(n,i,o,s){for(var a=0;o--;)n[o]-=a,a=n[o]1;)n.shift()}return function(n,i,o,s,a,l){var u,g,h,T,O,C,S,F,_,L,k,q,Y,$,At,J,ie,Ae,X,Ze,tr=n.constructor,Zr=n.s==i.s?1:-1,ee=n.d,B=i.d;if(!ee||!ee[0]||!B||!B[0])return new tr(!n.s||!i.s||(ee?B&&ee[0]==B[0]:!B)?NaN:ee&&ee[0]==0||!B?Zr*0:Zr/0);for(l?(O=1,g=n.e-i.e):(l=fe,O=M,g=re(n.e/O)-re(i.e/O)),X=B.length,ie=ee.length,_=new tr(Zr),L=_.d=[],h=0;B[h]==(ee[h]||0);h++);if(B[h]>(ee[h]||0)&&g--,o==null?($=o=tr.precision,s=tr.rounding):a?$=o+(n.e-i.e)+1:$=o,$<0)L.push(1),C=!0;else{if($=$/O+2|0,h=0,X==1){for(T=0,B=B[0],$++;(h1&&(B=e(B,T,l),ee=e(ee,T,l),X=B.length,ie=ee.length),J=X,k=ee.slice(0,X),q=k.length;q=l/2&&++Ae;do T=0,u=t(B,k,X,q),u<0?(Y=k[0],X!=q&&(Y=Y*l+(k[1]||0)),T=Y/Ae|0,T>1?(T>=l&&(T=l-1),S=e(B,T,l),F=S.length,q=k.length,u=t(S,k,F,q),u==1&&(T--,r(S,X=10;T/=10)h++;_.e=h+g*O-1,I(_,a?o+_.e+1:o,s,C)}return _}}();function I(e,t,r,n){var i,o,s,a,l,u,g,h,T,O=e.constructor;e:if(t!=null){if(h=e.d,!h)return e;for(i=1,a=h[0];a>=10;a/=10)i++;if(o=t-i,o<0)o+=M,s=t,g=h[T=0],l=g/W(10,i-s-1)%10|0;else if(T=Math.ceil((o+1)/M),a=h.length,T>=a)if(n){for(;a++<=T;)h.push(0);g=l=0,i=1,o%=M,s=o-M+1}else break e;else{for(g=a=h[T],i=1;a>=10;a/=10)i++;o%=M,s=o-M+i,l=s<0?0:g/W(10,i-s-1)%10|0}if(n=n||t<0||h[T+1]!==void 0||(s<0?g:g%W(10,i-s-1)),u=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(o>0?s>0?g/W(10,i-s):0:h[T-1])%10&1||r==(e.s<0?8:7)),t<1||!h[0])return h.length=0,u?(t-=e.e+1,h[0]=W(10,(M-t%M)%M),e.e=-t||0):h[0]=e.e=0,e;if(o==0?(h.length=T,a=1,T--):(h.length=T+1,a=W(10,M-o),h[T]=s>0?(g/W(10,i-s)%W(10,s)|0)*a:0),u)for(;;)if(T==0){for(o=1,s=h[0];s>=10;s/=10)o++;for(s=h[0]+=a,a=1;s>=10;s/=10)a++;o!=a&&(e.e++,h[0]==fe&&(h[0]=1));break}else{if(h[T]+=a,h[T]!=fe)break;h[T--]=0,a=1}for(o=h.length;h[--o]===0;)h.pop()}return D&&(e.e>O.maxE?(e.d=null,e.e=NaN):e.e0?o=o.charAt(0)+"."+o.slice(1)+Le(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(e.e<0?"e":"e+")+e.e):i<0?(o="0."+Le(-i-1)+o,r&&(n=r-s)>0&&(o+=Le(n))):i>=s?(o+=Le(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Le(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Le(n))),o}function br(e,t){var r=e[0];for(t*=M;r>=10;r/=10)t++;return t}function yr(e,t,r){if(t>ru)throw D=!0,r&&(e.precision=r),Error(no);return I(new e(gr),t,1,!0)}function be(e,t,r){if(t>Rn)throw Error(no);return I(new e(hr),t,r,!0)}function ao(e){var t=e.length-1,r=t*M+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function Le(e){for(var t="";e--;)t+="0";return t}function lo(e,t,r,n){var i,o=new e(1),s=Math.ceil(n/M+4);for(D=!1;;){if(r%2&&(o=o.times(t),eo(o.d,s)&&(i=!0)),r=re(r/2),r===0){r=o.d.length-1,i&&o.d[r]===0&&++o.d[r];break}t=t.times(t),eo(t.d,s)}return D=!0,o}function Xi(e){return e.d[e.d.length-1]&1}function uo(e,t,r){for(var n,i,o=new e(t[0]),s=0;++s17)return new T(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(D=!1,l=C):l=t,a=new T(.03125);e.e>-2;)e=e.times(a),h+=5;for(n=Math.log(W(2,h))/Math.LN10*2+5|0,l+=n,r=o=s=new T(1),T.precision=l;;){if(o=I(o.times(e),l,1),r=r.times(++g),a=s.plus(U(o,r,l,1)),Z(a.d).slice(0,l)===Z(s.d).slice(0,l)){for(i=h;i--;)s=I(s.times(s),l,1);if(t==null)if(u<3&&qt(s.d,l-n,O,u))T.precision=l+=10,r=o=a=new T(1),g=0,u++;else return I(s,T.precision=C,O,D=!0);else return T.precision=C,s}s=a}}function Ne(e,t){var r,n,i,o,s,a,l,u,g,h,T,O=1,C=10,S=e,F=S.d,_=S.constructor,L=_.rounding,k=_.precision;if(S.s<0||!F||!F[0]||!S.e&&F[0]==1&&F.length==1)return new _(F&&!F[0]?-1/0:S.s!=1?NaN:F?0:S);if(t==null?(D=!1,g=k):g=t,_.precision=g+=C,r=Z(F),n=r.charAt(0),Math.abs(o=S.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)S=S.times(e),r=Z(S.d),n=r.charAt(0),O++;o=S.e,n>1?(S=new _("0."+r),o++):S=new _(n+"."+r.slice(1))}else return u=yr(_,g+2,k).times(o+""),S=Ne(new _(n+"."+r.slice(1)),g-C).plus(u),_.precision=k,t==null?I(S,k,L,D=!0):S;for(h=S,l=s=S=U(S.minus(1),S.plus(1),g,1),T=I(S.times(S),g,1),i=3;;){if(s=I(s.times(T),g,1),u=l.plus(U(s,new _(i),g,1)),Z(u.d).slice(0,g)===Z(l.d).slice(0,g))if(l=l.times(2),o!==0&&(l=l.plus(yr(_,g+2,k).times(o+""))),l=U(l,new _(O),g,1),t==null)if(qt(l.d,g-C,L,a))_.precision=g+=C,u=s=S=U(h.minus(1),h.plus(1),g,1),T=I(S.times(S),g,1),i=a=1;else return I(l,_.precision=k,L,D=!0);else return _.precision=k,l;l=u,i+=2}}function co(e){return String(e.s*e.s/0)}function mr(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%M,r<0&&(n+=M),ne.constructor.maxE?(e.d=null,e.e=NaN):e.e-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),so.test(t))return mr(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(Xl.test(t))r=16,t=t.toLowerCase();else if(Zl.test(t))r=2;else if(eu.test(t))r=8;else throw Error(qe+t);for(o=t.search(/p/i),o>0?(l=+t.slice(o+1),t=t.substring(2,o)):t=t.slice(2),o=t.indexOf("."),s=o>=0,n=e.constructor,s&&(t=t.replace(".",""),a=t.length,o=a-o,i=lo(n,new n(r),o,o*2)),u=fr(t,r,fe),g=u.length-1,o=g;u[o]===0;--o)u.pop();return o<0?new n(e.s*0):(e.e=br(u,g),e.d=u,D=!1,s&&(e=U(e,i,a*4)),l&&(e=e.times(Math.abs(l)<54?W(2,l):Ie.pow(2,l))),D=!0,e)}function ou(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:lt(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/Er(5,r)),t=lt(e,2,t,t);for(var i,o=new e(5),s=new e(16),a=new e(20);r--;)i=t.times(t),t=t.times(o.plus(i.times(s.times(i).minus(a))));return t}function lt(e,t,r,n,i){var o,s,a,l,u=1,g=e.precision,h=Math.ceil(g/M);for(D=!1,l=r.times(r),a=new e(n);;){if(s=U(a.times(l),new e(t++*t++),g,1),a=i?n.plus(s):n.minus(s),n=U(s.times(l),new e(t++*t++),g,1),s=a.plus(n),s.d[h]!==void 0){for(o=h;s.d[o]===a.d[o]&&o--;);if(o==-1)break}o=a,a=n,n=s,s=o,u++}return D=!0,s.d.length=h+1,s}function Er(e,t){for(var r=e;--t;)r*=e;return r}function po(e,t){var r,n=t.s<0,i=be(e,e.precision,1),o=i.times(.5);if(t=t.abs(),t.lte(o))return ke=n?4:1,t;if(r=t.divToInt(i),r.isZero())ke=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(o))return ke=Xi(r)?n?2:3:n?4:1,t;ke=Xi(r)?n?1:4:n?3:2}return t.minus(i).abs()}function kn(e,t,r,n){var i,o,s,a,l,u,g,h,T,O=e.constructor,C=r!==void 0;if(C?(ae(r,1,Be),n===void 0?n=O.rounding:ae(n,0,8)):(r=O.precision,n=O.rounding),!e.isFinite())g=co(e);else{for(g=Ee(e),s=g.indexOf("."),C?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,s>=0&&(g=g.replace(".",""),T=new O(1),T.e=g.length-s,T.d=fr(Ee(T),10,i),T.e=T.d.length),h=fr(g,10,i),o=l=h.length;h[--l]==0;)h.pop();if(!h[0])g=C?"0p+0":"0";else{if(s<0?o--:(e=new O(e),e.d=h,e.e=o,e=U(e,T,r,n,0,i),h=e.d,o=e.e,u=ro),s=h[r],a=i/2,u=u||h[r+1]!==void 0,u=n<4?(s!==void 0||u)&&(n===0||n===(e.s<0?3:2)):s>a||s===a&&(n===4||u||n===6&&h[r-1]&1||n===(e.s<0?8:7)),h.length=r,u)for(;++h[--r]>i-1;)h[r]=0,r||(++o,h.unshift(1));for(l=h.length;!h[l-1];--l);for(s=0,g="";s1)if(t==16||t==8){for(s=t==16?4:3,--l;l%s;l++)g+="0";for(h=fr(g,i,t),l=h.length;!h[l-1];--l);for(s=1,g="1.";sl)for(o-=l;o--;)g+="0";else ot)return e.length=t,!0}function su(e){return new this(e).abs()}function au(e){return new this(e).acos()}function lu(e){return new this(e).acosh()}function uu(e,t){return new this(e).plus(t)}function cu(e){return new this(e).asin()}function pu(e){return new this(e).asinh()}function du(e){return new this(e).atan()}function fu(e){return new this(e).atanh()}function mu(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,o=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=be(this,o,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?be(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=be(this,o,1).times(.5),r.s=e.s):t.s<0?(this.precision=o,this.rounding=1,r=this.atan(U(e,t,o,1)),t=be(this,o,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(U(e,t,o,1)),r}function gu(e){return new this(e).cbrt()}function hu(e){return I(e=new this(e),e.e+1,2)}function yu(e,t,r){return new this(e).clamp(t,r)}function wu(e){if(!e||typeof e!="object")throw Error(wr+"Object expected");var t,r,n,i=e.defaults===!0,o=["precision",1,Be,"rounding",0,8,"toExpNeg",-at,0,"toExpPos",0,at,"maxE",0,at,"minE",-at,0,"modulo",0,9];for(t=0;t=o[t+1]&&n<=o[t+2])this[r]=n;else throw Error(qe+r+": "+n);if(r="crypto",i&&(this[r]=Sn[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(io);else this[r]=!1;else throw Error(qe+r+": "+n);return this}function bu(e){return new this(e).cos()}function Eu(e){return new this(e).cosh()}function fo(e){var t,r,n;function i(o){var s,a,l,u=this;if(!(u instanceof i))return new i(o);if(u.constructor=i,to(o)){u.s=o.s,D?!o.d||o.e>i.maxE?(u.e=NaN,u.d=null):o.e=10;a/=10)s++;D?s>i.maxE?(u.e=NaN,u.d=null):s=429e7?t[o]=crypto.getRandomValues(new Uint32Array(1))[0]:a[o++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);o=214e7?crypto.randomBytes(4).copy(t,o):(a.push(i%1e7),o+=4);o=n/4}else throw Error(io);else for(;o=10;i/=10)n++;nct,datamodelEnumToSchemaEnum:()=>Ju});m();c();p();d();f();m();c();p();d();f();function Ju(e){return{name:e.name,values:e.values.map(t=>t.name)}}m();c();p();d();f();var ct=(k=>(k.findUnique="findUnique",k.findUniqueOrThrow="findUniqueOrThrow",k.findFirst="findFirst",k.findFirstOrThrow="findFirstOrThrow",k.findMany="findMany",k.create="create",k.createMany="createMany",k.createManyAndReturn="createManyAndReturn",k.update="update",k.updateMany="updateMany",k.updateManyAndReturn="updateManyAndReturn",k.upsert="upsert",k.delete="delete",k.deleteMany="deleteMany",k.groupBy="groupBy",k.count="count",k.aggregate="aggregate",k.findRaw="findRaw",k.aggregateRaw="aggregateRaw",k))(ct||{});var yo=Qe(Gi());m();c();p();d();f();dn();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var mo={keyword:Se,entity:Se,value:e=>de(We(e)),punctuation:We,directive:Se,function:Se,variable:e=>de(We(e)),string:e=>de(Ot(e)),boolean:kt,number:Se,comment:It};var Gu=e=>e,xr={},Wu=0,N={manual:xr.Prism&&xr.Prism.manual,disableWorkerMessageHandler:xr.Prism&&xr.Prism.disableWorkerMessageHandler,util:{encode:function(e){if(e instanceof me){let t=e;return new me(t.type,N.util.encode(t.content),t.alias)}else return Array.isArray(e)?e.map(N.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(Ae instanceof me)continue;if(Y&&J!=t.length-1){L.lastIndex=ie;var h=L.exec(e);if(!h)break;var g=h.index+(q?h[1].length:0),T=h.index+h[0].length,a=J,l=ie;for(let B=t.length;a=l&&(++J,ie=l);if(t[J]instanceof me)continue;u=a-J,Ae=e.slice(ie,l),h.index-=ie}else{L.lastIndex=0;var h=L.exec(Ae),u=1}if(!h){if(o)break;continue}q&&($=h[1]?h[1].length:0);var g=h.index+$,h=h[0].slice($),T=g+h.length,O=Ae.slice(0,g),C=Ae.slice(T);let X=[J,u];O&&(++J,ie+=O.length,X.push(O));let Ze=new me(S,k?N.tokenize(h,k):h,At,h,Y);if(X.push(Ze),C&&X.push(C),Array.prototype.splice.apply(t,X),u!=1&&N.matchGrammar(e,t,r,J,ie,!0,S),o)break}}}},tokenize:function(e,t){let r=[e],n=t.rest;if(n){for(let i in n)t[i]=n[i];delete t.rest}return N.matchGrammar(e,r,t,0,0,!1),r},hooks:{all:{},add:function(e,t){let r=N.hooks.all;r[e]=r[e]||[],r[e].push(t)},run:function(e,t){let r=N.hooks.all[e];if(!(!r||!r.length))for(var n=0,i;i=r[n++];)i(t)}},Token:me};N.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/};N.languages.javascript=N.languages.extend("clike",{"class-name":[N.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/});N.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/;N.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:N.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:N.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:N.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:N.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});N.languages.markup&&N.languages.markup.tag.addInlined("script","javascript");N.languages.js=N.languages.javascript;N.languages.typescript=N.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/});N.languages.ts=N.languages.typescript;function me(e,t,r,n,i){this.type=e,this.content=t,this.alias=r,this.length=(n||"").length|0,this.greedy=!!i}me.stringify=function(e,t){return typeof e=="string"?e:Array.isArray(e)?e.map(function(r){return me.stringify(r,t)}).join(""):Ku(e.type)(e.content)};function Ku(e){return mo[e]||Gu}function go(e){return zu(e,N.languages.javascript)}function zu(e,t){return N.tokenize(e,t).map(n=>me.stringify(n)).join("")}m();c();p();d();f();function ho(e){return wn(e)}var Pr=class e{firstLineNumber;lines;static read(t){let r;try{r=sr.readFileSync(t,"utf-8")}catch{return null}return e.fromContent(r)}static fromContent(t){let r=t.split(/\r?\n/);return new e(1,r)}constructor(t,r){this.firstLineNumber=t,this.lines=r}get lastLineNumber(){return this.firstLineNumber+this.lines.length-1}mapLineAt(t,r){if(tthis.lines.length+this.firstLineNumber)return this;let n=t-this.firstLineNumber,i=[...this.lines];return i[n]=r(i[n]),new e(this.firstLineNumber,i)}mapLines(t){return new e(this.firstLineNumber,this.lines.map((r,n)=>t(r,this.firstLineNumber+n)))}lineAt(t){return this.lines[t-this.firstLineNumber]}prependSymbolAt(t,r){return this.mapLines((n,i)=>i===t?`${r} ${n}`:` ${n}`)}slice(t,r){let n=this.lines.slice(t-1,r).join(` +`);return new e(t,ho(n).split(` +`))}highlight(){let t=go(this.toString());return new e(this.firstLineNumber,t.split(` +`))}toString(){return this.lines.join(` +`)}};var Hu={red:Ge,gray:It,dim:St,bold:de,underline:Rt,highlightSource:e=>e.highlight()},Yu={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function Zu({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function Xu({callsite:e,message:t,originalMethod:r,isPanic:n,callArguments:i},o){let s=Zu({message:t,originalMethod:r,isPanic:n,callArguments:i});if(!e||typeof window<"u"||y.env.NODE_ENV==="production")return s;let a=e.getLocation();if(!a||!a.lineNumber||!a.columnNumber)return s;let l=Math.max(1,a.lineNumber-3),u=Pr.read(a.fileName)?.slice(l,a.lineNumber),g=u?.lineAt(a.lineNumber);if(u&&g){let h=tc(g),T=ec(g);if(!T)return s;s.functionName=`${T.code})`,s.location=a,n||(u=u.mapLineAt(a.lineNumber,C=>C.slice(0,T.openingBraceIndex))),u=o.highlightSource(u);let O=String(u.lastLineNumber).length;if(s.contextLines=u.mapLines((C,S)=>o.gray(String(S).padStart(O))+" "+C).mapLines(C=>o.dim(C)).prependSymbolAt(a.lineNumber,o.bold(o.red("\u2192"))),i){let C=h+O+1;C+=2,s.callArguments=(0,yo.default)(i,C).slice(C)}}return s}function ec(e){let t=Object.keys(ct).join("|"),n=new RegExp(String.raw`\.(${t})\(`).exec(e);if(n){let i=n.index+n[0].length,o=e.lastIndexOf(" ",n.index)+1;return{code:e.slice(o,i),openingBraceIndex:i}}return null}function tc(e){let t=0;for(let r=0;r"Unknown error")}function Po(e){return e.errors.flatMap(t=>t.kind==="Union"?Po(t):[t])}function ic(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:oc(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function oc(e,t){return[...new Set(e.concat(t))]}function sc(e){return Tn(e,(t,r)=>{let n=bo(t),i=bo(r);return n!==i?n-i:Eo(t)-Eo(r)})}function bo(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function Eo(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}m();c();p();d();f();var pe=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};m();c();p();d();f();m();c();p();d();f();To();m();c();p();d();f();var pt=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};vo();m();c();p();d();f();m();c();p();d();f();var Ar=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};m();c();p();d();f();var Cr=e=>e,Sr={bold:Cr,red:Cr,green:Cr,dim:Cr,enabled:!1},Ao={bold:de,red:Ge,green:Ot,dim:St,enabled:!0},dt={write(e){e.writeLine(",")}};m();c();p();d();f();var xe=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};m();c();p();d();f();var je=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var ft=class extends je{items=[];addItem(t){return this.items.push(new Ar(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new xe("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(dt,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var mt=class e extends je{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof ft&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new xe("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(dt,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};m();c();p();d();f();var H=class extends je{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new xe(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};m();c();p();d();f();var jt=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(dt,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Tr(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":ac(e,t);break;case"IncludeOnScalar":lc(e,t);break;case"EmptySelection":uc(e,t,r);break;case"UnknownSelectionField":fc(e,t);break;case"InvalidSelectionValue":mc(e,t);break;case"UnknownArgument":gc(e,t);break;case"UnknownInputField":hc(e,t);break;case"RequiredArgumentMissing":yc(e,t);break;case"InvalidArgumentType":wc(e,t);break;case"InvalidArgumentValue":bc(e,t);break;case"ValueTooLarge":Ec(e,t);break;case"SomeFieldsMissing":xc(e,t);break;case"TooManyFieldsGiven":Pc(e,t);break;case"Union":xo(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function ac(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function lc(e,t){let[r,n]=gt(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new pe(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${Ut(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function uc(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){cc(e,t,i);return}if(n.hasField("select")){pc(e,t);return}}if(r?.[De(e.outputType.name)]){dc(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function cc(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new pe(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function pc(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),Oo(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${Ut(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function dc(e,t){let r=new jt;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new pe("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=gt(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let l=a?.value.asObject()??new mt;l.addSuggestion(n),a.value=l}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function fc(e,t){let r=ko(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":Oo(n,e.outputType);break;case"include":vc(n,e.outputType);break;case"omit":Tc(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(Ut(n)),i.join(" ")})}function mc(e,t){let r=ko(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function gc(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Ac(n,e.arguments)),t.addErrorMessage(i=>So(i,r,e.arguments.map(o=>o.name)))}function hc(e,t){let[r,n]=gt(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Io(o,e.inputType)}t.addErrorMessage(o=>So(o,n,e.inputType.fields.map(s=>s.name)))}function So(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=Sc(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(Ut(e)),n.join(" ")}function yc(e,t){let r;t.addErrorMessage(l=>r?.value instanceof H&&r.value.text==="null"?`Argument \`${l.green(o)}\` must not be ${l.red("null")}.`:`Argument \`${l.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=gt(e.argumentPath),s=new jt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let l of e.inputTypes[0].fields)s.addField(l.name,l.typeNames.join(" | "));a.addSuggestion(new pe(o,s).makeRequired())}else{let l=e.inputTypes.map(Ro).join(" | ");a.addSuggestion(new pe(o,l).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,l]=gt(e.dependentArgumentPath);t.addErrorMessage(u=>`Argument \`${u.green(o)}\` is required because argument \`${u.green(l)}\` was provided.`)}}}function Ro(e){return e.kind==="list"?`${Ro(e.elementType)}[]`:e.name}function wc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=Rr("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function bc(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=Rr("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function Ec(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof H&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function xc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Io(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Rr("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(Ut(i)),o.join(" ")})}function Pc(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Rr("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function Oo(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new pe(r.name,"true"))}function vc(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new pe(r.name,"true"))}function Tc(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new pe(r.name,"true"))}function Ac(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new pe(r.name,r.typeNames.join(" | ")))}function ko(e,t){let[r,n]=gt(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),l=o?.getField(n);return o&&l?{parentKind:"select",parent:o,field:l,fieldName:n}:(l=s?.getField(n),s&&l?{parentKind:"include",field:l,parent:s,fieldName:n}:(l=a?.getField(n),a&&l?{parentKind:"omit",field:l,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Io(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new pe(r.name,r.typeNames.join(" | ")))}function gt(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function Ut({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function Rr(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var Cc=3;function Sc(e,t){let r=1/0,n;for(let i of t){let o=(0,Co.default)(e,i);o>Cc||o`}};function ht(e){return e instanceof $t}m();c();p();d();f();var Or=Symbol(),Mn=new WeakMap,Me=class{constructor(t){t===Or?Mn.set(this,`Prisma.${this._getName()}`):Mn.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Mn.get(this)}},Vt=class extends Me{_getNamespace(){return"NullTypes"}},Qt=class extends Vt{#e};_n(Qt,"DbNull");var Jt=class extends Vt{#e};_n(Jt,"JsonNull");var Gt=class extends Vt{#e};_n(Gt,"AnyNull");var kr={classes:{DbNull:Qt,JsonNull:Jt,AnyNull:Gt},instances:{DbNull:new Qt(Or),JsonNull:new Jt(Or),AnyNull:new Gt(Or)}};function _n(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}m();c();p();d();f();var Fo=": ",Ir=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Fo.length}write(t){let r=new xe(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Fo).write(this.value)}};var Dn=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function yt(e){return new Dn(Mo(e))}function Mo(e){let t=new mt;for(let[r,n]of Object.entries(e)){let i=new Ir(r,_o(n));t.addField(i)}return t}function _o(e){if(typeof e=="string")return new H(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new H(String(e));if(typeof e=="bigint")return new H(`${e}n`);if(e===null)return new H("null");if(e===void 0)return new H("undefined");if(ut(e))return new H(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return w.Buffer.isBuffer(e)?new H(`Buffer.alloc(${e.byteLength})`):new H(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=dr(e)?e.toISOString():"Invalid Date";return new H(`new Date("${t}")`)}return e instanceof Me?new H(`Prisma.${e._getName()}`):ht(e)?new H(`prisma.${De(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?Rc(e):typeof e=="object"?Mo(e):new H(Object.prototype.toString.call(e))}function Rc(e){let t=new ft;for(let r of e)t.addItem(_o(r));return t}function Fr(e,t){let r=t==="pretty"?Ao:Sr,n=e.renderAllMessages(r),i=new pt(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Mr({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=yt(e);for(let h of t)Tr(h,a,s);let{message:l,args:u}=Fr(a,r),g=vr({message:l,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:u});throw new te(g,{clientVersion:o})}m();c();p();d();f();m();c();p();d();f();function Pe(e){return e.replace(/^./,t=>t.toLowerCase())}m();c();p();d();f();function Lo(e,t,r){let n=Pe(r);return!t.result||!(t.result.$allModels||t.result[n])?e:Oc({...e,...Do(t.name,e,t.result.$allModels),...Do(t.name,e,t.result[n])})}function Oc(e){let t=new we,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return pr(e,n=>({...n,needs:r(n.name,new Set)}))}function Do(e,t,r){return r?pr(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:kc(t,o,i)})):{}}function kc(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function No(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function qo(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var _r=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new we;modelExtensionsCache=new we;queryCallbacksCache=new we;clientExtensions=Nt(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=Nt(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Lo(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Pe(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},wt=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new _r(t))}isEmpty(){return this.head===void 0}append(t){return new e(new _r(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};m();c();p();d();f();var Dr=class{constructor(t){this.name=t}};function Bo(e){return e instanceof Dr}function jo(e){return new Dr(e)}m();c();p();d();f();m();c();p();d();f();var Uo=Symbol(),Wt=class{constructor(t){if(t!==Uo)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?Lr:t}},Lr=new Wt(Uo);function ve(e){return e instanceof Wt}var Ic={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},$o="explicitly `undefined` values are not allowed";function Nr({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=wt.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:g}){let h=new Ln({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:l,previewFeatures:u,globalOmit:g});return{modelName:e,action:Ic[t],query:Kt(r,h)}}function Kt({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Qo(r,n),selection:Fc(e,t,i,n)}}function Fc(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),Lc(e,n)):Mc(n,t,r)}function Mc(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&_c(n,t,e),Dc(n,r,e),n}function _c(e,t,r){for(let[n,i]of Object.entries(t)){if(ve(i))continue;let o=r.nestSelection(n);if(Nn(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=Kt(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=Kt(i,o)}}function Dc(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=qo(i,n);for(let[s,a]of Object.entries(o)){if(ve(a))continue;Nn(a,r.nestSelection(s));let l=r.findField(s);n?.[s]&&!l||(e[s]=!a)}}function Lc(e,t){let r={},n=t.getComputedFields(),i=No(e,n);for(let[o,s]of Object.entries(i)){if(ve(s))continue;let a=t.nestSelection(o);Nn(s,a);let l=t.findField(o);if(!(n?.[o]&&!l)){if(s===!1||s===void 0||ve(s)){r[o]=!1;continue}if(s===!0){l?.kind==="object"?r[o]=Kt({},a):r[o]=!0;continue}r[o]=Kt(s,a)}}return r}function Vo(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(st(e)){if(dr(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(Bo(e))return{$type:"Param",value:e.name};if(ht(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return Nc(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:w.Buffer.from(r,n,i).toString("base64")}}if(qc(e))return e.values;if(ut(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Me){if(e!==kr.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(Bc(e))return e.toJSON();if(typeof e=="object")return Qo(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Qo(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);ve(i)||(i!==void 0?r[n]=Vo(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:$o}))}return r}function Nc(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[De(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:ze(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};m();c();p();d();f();function Jo(e){if(!e._hasPreviewFlag("metrics"))throw new te("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var bt=class{_client;constructor(t){this._client=t}prometheus(t){return Jo(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return Jo(this._client),this._client._engine.metrics({format:"json",...t})}};m();c();p();d();f();function Go(e,t){let r=Nt(()=>jc(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function jc(e){return{datamodel:{models:qn(e.models),enums:qn(e.enums),types:qn(e.types)}}}function qn(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}m();c();p();d();f();var Bn=new WeakMap,qr="$$PrismaTypedSql",zt=class{constructor(t,r){Bn.set(this,{sql:t,values:r}),Object.defineProperty(this,qr,{value:qr})}get sql(){return Bn.get(this).sql}get values(){return Bn.get(this).values}};function Wo(e){return(...t)=>new zt(e,t)}function Br(e){return e!=null&&e[qr]===qr}m();c();p();d();f();var da=Qe(Ko());m();c();p();d();f();zo();dn();gn();m();c();p();d();f();var le=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}m();c();p();d();f();m();c();p();d();f();var Ur={enumerable:!0,configurable:!0,writable:!0};function $r(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>Ur,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var Zo=Symbol.for("nodejs.util.inspect.custom");function ge(e,t){let r=$c(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=Xo(Reflect.ownKeys(o),r),a=Xo(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let l=r.get(s);return l?l.getPropertyDescriptor?{...Ur,...l?.getPropertyDescriptor(s)}:Ur:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[Zo]=function(){let o={...this};return delete o[Zo],o},i}function $c(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function Xo(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}m();c();p();d();f();function Et(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}m();c();p();d();f();function Vr(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}m();c();p();d();f();function es(e){if(e===void 0)return"";let t=yt(e);return new pt(0,{colors:Sr}).write(t).toString()}m();c();p();d();f();var Vc="P2037";function Qr({error:e,user_facing_error:t},r,n){return t.error_code?new se(Qc(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new G(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function Qc(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===Vc&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var Yt="";function ts(e){var t=e.split(` +`);return t.reduce(function(r,n){var i=Wc(n)||zc(n)||Zc(n)||rp(n)||ep(n);return i&&r.push(i),r},[])}var Jc=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack|rsc||\/|[a-z]:\\|\\\\).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Gc=/\((\S*)(?::(\d+))(?::(\d+))\)/;function Wc(e){var t=Jc.exec(e);if(!t)return null;var r=t[2]&&t[2].indexOf("native")===0,n=t[2]&&t[2].indexOf("eval")===0,i=Gc.exec(t[2]);return n&&i!=null&&(t[2]=i[1],t[3]=i[2],t[4]=i[3]),{file:r?null:t[2],methodName:t[1]||Yt,arguments:r?[t[2]]:[],lineNumber:t[3]?+t[3]:null,column:t[4]?+t[4]:null}}var Kc=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|rsc|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i;function zc(e){var t=Kc.exec(e);return t?{file:t[2],methodName:t[1]||Yt,arguments:[],lineNumber:+t[3],column:t[4]?+t[4]:null}:null}var Hc=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|rsc|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,Yc=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i;function Zc(e){var t=Hc.exec(e);if(!t)return null;var r=t[3]&&t[3].indexOf(" > eval")>-1,n=Yc.exec(t[3]);return r&&n!=null&&(t[3]=n[1],t[4]=n[2],t[5]=null),{file:t[3],methodName:t[1]||Yt,arguments:t[2]?t[2].split(","):[],lineNumber:t[4]?+t[4]:null,column:t[5]?+t[5]:null}}var Xc=/^\s*(?:([^@]*)(?:\((.*?)\))?@)?(\S.*?):(\d+)(?::(\d+))?\s*$/i;function ep(e){var t=Xc.exec(e);return t?{file:t[3],methodName:t[1]||Yt,arguments:[],lineNumber:+t[4],column:t[5]?+t[5]:null}:null}var tp=/^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i;function rp(e){var t=tp.exec(e);return t?{file:t[2],methodName:t[1]||Yt,arguments:[],lineNumber:+t[3],column:t[4]?+t[4]:null}:null}var $n=class{getLocation(){return null}},Vn=class{_error;constructor(){this._error=new Error}getLocation(){let t=this._error.stack;if(!t)return null;let n=ts(t).find(i=>{if(!i.file)return!1;let o=Pn(i.file);return o!==""&&!o.includes("@prisma")&&!o.includes("/packages/client/src/runtime/")&&!o.endsWith("/runtime/binary.js")&&!o.endsWith("/runtime/library.js")&&!o.endsWith("/runtime/edge.js")&&!o.endsWith("/runtime/edge-esm.js")&&!o.startsWith("internal/")&&!i.methodName.includes("new ")&&!i.methodName.includes("getCallSite")&&!i.methodName.includes("Proxy.")&&i.methodName.split(".").length<4});return!n||!n.file?null:{fileName:n.file,lineNumber:n.lineNumber,columnNumber:n.column}}};function Ue(e){return e==="minimal"?typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new $n:new Vn}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var rs={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function xt(e={}){let t=ip(e);return Object.entries(t).reduce((n,[i,o])=>(rs[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function ip(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Jr(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function ns(e,t){let r=Jr(e);return t({action:"aggregate",unpacker:r,argsMapper:xt})(e)}m();c();p();d();f();function op(e={}){let{select:t,...r}=e;return typeof t=="object"?xt({...r,_count:t}):xt({...r,_count:{_all:!0}})}function sp(e={}){return typeof e.select=="object"?t=>Jr(e)(t)._count:t=>Jr(e)(t)._count._all}function is(e,t){return t({action:"count",unpacker:sp(e),argsMapper:op})(e)}m();c();p();d();f();function ap(e={}){let t=xt(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function lp(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function os(e,t){return t({action:"groupBy",unpacker:lp(e),argsMapper:ap})(e)}function ss(e,t,r){if(t==="aggregate")return n=>ns(n,r);if(t==="count")return n=>is(n,r);if(t==="groupBy")return n=>os(n,r)}m();c();p();d();f();function as(e,t){let r=t.fields.filter(i=>!i.relationName),n=Yi(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new $t(e,o,s.type,s.isList,s.kind==="enum")},...$r(Object.keys(n))})}m();c();p();d();f();m();c();p();d();f();var ls=e=>Array.isArray(e)?e:e.split("."),Qn=(e,t)=>ls(t).reduce((r,n)=>r&&r[n],e),us=(e,t,r)=>ls(t).reduceRight((n,i,o,s)=>Object.assign({},Qn(e,s.slice(0,o)),{[i]:n}),r);function up(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function cp(e,t,r){return t===void 0?e??{}:us(t,r,e||!0)}function Jn(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((l,u)=>({...l,[u.name]:u}),{});return l=>{let u=Ue(e._errorFormat),g=up(n,i),h=cp(l,o,g),T=r({dataPath:g,callsite:u})(h),O=pp(e,t);return new Proxy(T,{get(C,S){if(!O.includes(S))return C[S];let _=[a[S].type,r,S],L=[g,h];return Jn(e,..._,...L)},...$r([...O,...Object.getOwnPropertyNames(T)])})}}function pp(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var dp=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],fp=["aggregate","count","groupBy"];function Gn(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[mp(e,t),hp(e,t),Ht(r),ne("name",()=>t),ne("$name",()=>t),ne("$parent",()=>e._appliedParent)];return ge({},n)}function mp(e,t){let r=Pe(t),n=Object.keys(ct).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>l=>{let u=Ue(e._errorFormat);return e._createPrismaPromise(g=>{let h={args:l,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:g,callsite:u};return e._request({...h,...a})},{action:o,args:l,model:t})};return dp.includes(o)?Jn(e,t,s):gp(i)?ss(e,i,s):s({})}}}function gp(e){return fp.includes(e)}function hp(e,t){return He(ne("fields",()=>{let r=e._runtimeDataModel.models[t];return as(t,r)}))}m();c();p();d();f();function cs(e){return e.replace(/^./,t=>t.toUpperCase())}var Wn=Symbol();function Zt(e){let t=[yp(e),wp(e),ne(Wn,()=>e),ne("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(Ht(r)),ge(e,t)}function yp(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function wp(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Pe),n=[...new Set(t.concat(r))];return He({getKeys(){return n},getPropertyValue(i){let o=cs(i);if(e._runtimeDataModel.models[o]!==void 0)return Gn(e,o);if(e._runtimeDataModel.models[i]!==void 0)return Gn(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function ps(e){return e[Wn]?e[Wn]:e}function ds(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Zt(t)}m();c();p();d();f();m();c();p();d();f();function fs({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let l of Object.values(o)){if(n){if(n[l.name])continue;let u=l.needs.filter(g=>n[g]);u.length>0&&a.push(Et(u))}else if(r){if(!r[l.name])continue;let u=l.needs.filter(g=>!r[g]);u.length>0&&a.push(Et(u))}bp(e,l.needs)&&s.push(Ep(l,ge(e,s)))}return s.length>0||a.length>0?ge(e,[...s,...a]):e}function bp(e,t){return t.every(r=>vn(e,r))}function Ep(e,t){return He(ne(e.name,()=>e.compute(t)))}m();c();p();d();f();function Gr({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sg.name===o);if(!l||l.kind!=="object"||!l.relationName)continue;let u=typeof s=="object"?s:{};t[o]=Gr({visitor:i,result:t[o],args:u,modelName:l.type,runtimeDataModel:n})}}function gs({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Gr({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,l,u)=>{let g=Pe(l);return fs({result:a,modelName:g,select:u.select,omit:u.select?void 0:{...o?.[g],...u.omit},extensions:n})}})}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();var xp=["$connect","$disconnect","$on","$transaction","$extends"],hs=xp;function ys(e){if(e instanceof le)return Pp(e);if(Br(e))return vp(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:ys(t.args??{}),__internalParams:t,query:(s,a=t)=>{let l=a.customDataProxyFetch;return a.customDataProxyFetch=vs(o,l),a.args=s,bs(e,a,r,n+1)}})})}function Es(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return bs(e,t,s)}function xs(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?Ps(r,n,0,e):e(r)}}function Ps(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let l=a.customDataProxyFetch;return a.customDataProxyFetch=vs(i,l),Ps(a,t,r+1,n)}})}var ws=e=>e;function vs(e=ws,t=ws){return r=>e(t(r))}m();c();p();d();f();var Ts=z("prisma:client"),As={Vercel:"vercel","Netlify CI":"netlify"};function Cs({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(Ts("checkPlatformCaching:postinstall",e),Ts("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in As){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + +Learn how: https://pris.ly/d/${As[t]}-build`;throw console.error(i),new Q(i,r)}}m();c();p();d();f();function Ss(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();function Rs(e){return e?e.replace(/".*"/g,'"X"').replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g,t=>`${t[0]}5`):""}m();c();p();d();f();function Os(e){return e.split(` +`).map(t=>t.replace(/^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/,"").replace(/\+\d+\s*ms$/,"")).join(` +`)}m();c();p();d();f();var ks=Qe(Ki());function Is({title:e,user:t="prisma",repo:r="prisma",template:n="bug_report.yml",body:i}){return(0,ks.default)({user:t,repo:r,template:n,title:e,body:i})}function Fs({version:e,binaryTarget:t,title:r,description:n,engineVersion:i,database:o,query:s}){let a=Mi(6e3-(s?.length??0)),l=Os(ot(a)),u=n?`# Description +\`\`\` +${n} +\`\`\``:"",g=ot(`Hi Prisma Team! My Prisma Client just crashed. This is the report: +## Versions + +| Name | Version | +|-----------------|--------------------| +| Node | ${y.version?.padEnd(19)}| +| OS | ${t?.padEnd(19)}| +| Prisma Client | ${e?.padEnd(19)}| +| Query Engine | ${i?.padEnd(19)}| +| Database | ${o?.padEnd(19)}| + +${u} + +## Logs +\`\`\` +${l} +\`\`\` + +## Client Snippet +\`\`\`ts +// PLEASE FILL YOUR CODE SNIPPET HERE +\`\`\` + +## Schema +\`\`\`prisma +// PLEASE ADD YOUR SCHEMA HERE IF POSSIBLE +\`\`\` + +## Prisma Engine Query +\`\`\` +${s?Rs(s):""} +\`\`\` +`),h=Is({title:r,body:g});return`${r} + +This is a non-recoverable error which probably happens when the Prisma Query Engine has a panic. + +${Rt(h)} + +If you want the Prisma team to look into it, please open the link above \u{1F64F} +To increase the chance of success, please post your schema and a snippet of +how you used Prisma Client in the issue. +`}m();c();p();d();f();m();c();p();d();f();m();c();p();d();f();function Ms(e,t){throw new Error(t)}function Tp(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Ap(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function Pt(e){return e===null?e:Array.isArray(e)?e.map(Pt):typeof e=="object"?Tp(e)?Cp(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Ap(e,Pt):e}function Cp({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=w.Buffer.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new Ie(t);case"Json":return JSON.parse(t);default:Ms(t,"Unknown tagged value")}}var _s="6.19.1";m();c();p();d();f();m();c();p();d();f();var Rp=()=>globalThis.process?.release?.name==="node",Op=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,kp=()=>!!globalThis.Deno,Ip=()=>typeof globalThis.Netlify=="object",Fp=()=>typeof globalThis.EdgeRuntime=="object",Mp=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function _p(){return[[Ip,"netlify"],[Fp,"edge-light"],[Mp,"workerd"],[kp,"deno"],[Op,"bun"],[Rp,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var Dp={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Ds(){let e=_p();return{id:e,prettyName:Dp[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function Wr({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw new Q(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new Q("error: Missing URL environment variable, value, or override.",n);return i}m();c();p();d();f();m();c();p();d();f();function Ls(e){if(e?.kind==="itx")return e.options.id}m();c();p();d();f();var Kn=class{engineObject;constructor(t,r,n){this.engineObject=__PrismaProxy.create({datamodel:t.datamodel,env:y.env,ignoreEnvVarErrors:!0,datasourceOverrides:t.datasourceOverrides??{},logLevel:t.logLevel,logQueries:t.logQueries??!1,logCallback:r,enableTracing:t.enableTracing})}async connect(t,r){return __PrismaProxy.connect(this.engineObject,t,r)}async disconnect(t,r){return __PrismaProxy.disconnect(this.engineObject,t,r)}query(t,r,n,i){return __PrismaProxy.execute(this.engineObject,t,r,n,i)}compile(){throw new Error("not implemented")}sdlSchema(){return Promise.resolve("{}")}dmmf(t){return Promise.resolve("{}")}async startTransaction(t,r,n){return __PrismaProxy.startTransaction(this.engineObject,t,r,n)}async commitTransaction(t,r,n){return __PrismaProxy.commitTransaction(this.engineObject,t,r,n)}async rollbackTransaction(t,r,n){return __PrismaProxy.rollbackTransaction(this.engineObject,t,r,n)}metrics(t){return Promise.resolve("{}")}async applyPendingMigrations(){return __PrismaProxy.applyPendingMigrations(this.engineObject)}trace(t){return __PrismaProxy.trace(this.engineObject,t)}},Ns={async loadLibrary(e){if(!__PrismaProxy)throw new Q("__PrismaProxy not detected make sure React Native bindings are installed",e.clientVersion);return{debugPanic(){return Promise.reject("{}")},dmmf(){return Promise.resolve("{}")},version(){return{commit:"unknown",version:"unknown"}},QueryEngine:Kn}}};var Lp="P2036",Te=z("prisma:client:libraryEngine");function Np(e){return e.item_type==="query"&&"query"in e}function qp(e){return"level"in e?e.level==="error"&&e.message==="PANIC":!1}var TO=[...fn,"native"],Bp=0xffffffffffffffffn,zn=1n;function jp(){let e=zn++;return zn>Bp&&(zn=1n),e}var er=class{name="LibraryEngine";engine;libraryInstantiationPromise;libraryStartingPromise;libraryStoppingPromise;libraryStarted;executingQueryPromise;config;QueryEngineConstructor;libraryLoader;library;logEmitter;libQueryEnginePath;binaryTarget;datasourceOverrides;datamodel;logQueries;logLevel;lastQuery;loggerRustPanic;tracingHelper;adapterPromise;versionInfo;constructor(t,r){this.libraryLoader=Ns,this.config=t,this.libraryStarted=!1,this.logQueries=t.logQueries??!1,this.logLevel=t.logLevel??"error",this.logEmitter=t.logEmitter,this.datamodel=t.inlineSchema,this.tracingHelper=t.tracingHelper,t.enableDebugLogs&&(this.logLevel="debug");let n=Object.keys(t.overrideDatasources)[0],i=t.overrideDatasources[n]?.url;n!==void 0&&i!==void 0&&(this.datasourceOverrides={[n]:i}),this.libraryInstantiationPromise=this.instantiateLibrary()}wrapEngine(t){return{applyPendingMigrations:t.applyPendingMigrations?.bind(t),commitTransaction:this.withRequestId(t.commitTransaction.bind(t)),connect:this.withRequestId(t.connect.bind(t)),disconnect:this.withRequestId(t.disconnect.bind(t)),metrics:t.metrics?.bind(t),query:this.withRequestId(t.query.bind(t)),rollbackTransaction:this.withRequestId(t.rollbackTransaction.bind(t)),sdlSchema:t.sdlSchema?.bind(t),startTransaction:this.withRequestId(t.startTransaction.bind(t)),trace:t.trace.bind(t),free:t.free?.bind(t)}}withRequestId(t){return async(...r)=>{let n=jp().toString();try{return await t(...r,n)}finally{if(this.tracingHelper.isEnabled()){let i=await this.engine?.trace(n);if(i){let o=JSON.parse(i);this.tracingHelper.dispatchEngineSpans(o.spans)}}}}}async applyPendingMigrations(){await this.start(),await this.engine?.applyPendingMigrations()}async transaction(t,r,n){await this.start();let i=await this.adapterPromise,o=JSON.stringify(r),s;if(t==="start"){let l=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel});s=await this.engine?.startTransaction(l,o)}else t==="commit"?s=await this.engine?.commitTransaction(n.id,o):t==="rollback"&&(s=await this.engine?.rollbackTransaction(n.id,o));let a=this.parseEngineResponse(s);if(Up(a)){let l=this.getExternalAdapterError(a,i?.errorRegistry);throw l?l.error:new se(a.message,{code:a.error_code,clientVersion:this.config.clientVersion,meta:a.meta})}else if(typeof a.message=="string")throw new G(a.message,{clientVersion:this.config.clientVersion});return a}async instantiateLibrary(){if(Te("internalSetup"),this.libraryInstantiationPromise)return this.libraryInstantiationPromise;this.binaryTarget=await this.getCurrentBinaryTarget(),await this.tracingHelper.runInChildSpan("load_engine",()=>this.loadEngine()),this.version()}async getCurrentBinaryTarget(){}parseEngineResponse(t){if(!t)throw new G("Response from the Engine was empty",{clientVersion:this.config.clientVersion});try{return JSON.parse(t)}catch{throw new G("Unable to JSON.parse response from engine",{clientVersion:this.config.clientVersion})}}async loadEngine(){if(!this.engine){this.QueryEngineConstructor||(this.library=await this.libraryLoader.loadLibrary(this.config),this.QueryEngineConstructor=this.library.QueryEngine);try{let t=new b(this);this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(lr));let r=await this.adapterPromise;r&&Te("Using driver adapter: %O",r),this.engine=this.wrapEngine(new this.QueryEngineConstructor({datamodel:this.datamodel,env:y.env,logQueries:this.config.logQueries??!1,ignoreEnvVarErrors:!0,datasourceOverrides:this.datasourceOverrides??{},logLevel:this.logLevel,configDir:this.config.cwd,engineProtocol:"json",enableTracing:this.tracingHelper.isEnabled()},n=>{t.deref()?.logger(n)},r))}catch(t){let r=t,n=this.parseInitError(r.message);throw typeof n=="string"?r:new Q(n.message,this.config.clientVersion,n.error_code)}}}logger(t){let r=this.parseEngineResponse(t);r&&(r.level=r?.level.toLowerCase()??"unknown",Np(r)?this.logEmitter.emit("query",{timestamp:new Date,query:r.query,params:r.params,duration:Number(r.duration_ms),target:r.module_path}):qp(r)?this.loggerRustPanic=new ce(Hn(this,`${r.message}: ${r.reason} in ${r.file}:${r.line}:${r.column}`),this.config.clientVersion):this.logEmitter.emit(r.level,{timestamp:new Date,message:r.message,target:r.module_path}))}parseInitError(t){try{return JSON.parse(t)}catch{}return t}parseRequestError(t){try{return JSON.parse(t)}catch{}return t}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){if(this.libraryInstantiationPromise||(this.libraryInstantiationPromise=this.instantiateLibrary()),await this.libraryInstantiationPromise,await this.libraryStoppingPromise,this.libraryStartingPromise)return Te(`library already starting, this.libraryStarted: ${this.libraryStarted}`),this.libraryStartingPromise;if(this.libraryStarted)return;let t=async()=>{Te("library starting");try{let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.connect(JSON.stringify(r)),this.libraryStarted=!0,this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(lr)),await this.adapterPromise,Te("library started")}catch(r){let n=this.parseInitError(r.message);throw typeof n=="string"?r:new Q(n.message,this.config.clientVersion,n.error_code)}finally{this.libraryStartingPromise=void 0}};return this.libraryStartingPromise=this.tracingHelper.runInChildSpan("connect",t),this.libraryStartingPromise}async stop(){if(await this.libraryInstantiationPromise,await this.libraryStartingPromise,await this.executingQueryPromise,this.libraryStoppingPromise)return Te("library is already stopping"),this.libraryStoppingPromise;if(!this.libraryStarted){await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0;return}let t=async()=>{await new Promise(n=>setImmediate(n)),Te("library stopping");let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.disconnect(JSON.stringify(r)),this.engine?.free&&this.engine.free(),this.engine=void 0,this.libraryStarted=!1,this.libraryStoppingPromise=void 0,this.libraryInstantiationPromise=void 0,await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0,Te("library stopped")};return this.libraryStoppingPromise=this.tracingHelper.runInChildSpan("disconnect",t),this.libraryStoppingPromise}version(){return this.versionInfo=this.library?.version(),this.versionInfo?.version??"unknown"}debugPanic(t){return this.library?.debugPanic(t)}async request(t,{traceparent:r,interactiveTransaction:n}){Te(`sending request, this.libraryStarted: ${this.libraryStarted}`);let i=JSON.stringify({traceparent:r}),o=JSON.stringify(t);try{await this.start();let s=await this.adapterPromise;this.executingQueryPromise=this.engine?.query(o,i,n?.id),this.lastQuery=o;let a=this.parseEngineResponse(await this.executingQueryPromise);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],s?.errorRegistry):new G(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});if(this.loggerRustPanic)throw this.loggerRustPanic;return{data:a}}catch(s){if(s instanceof Q)throw s;if(s.code==="GenericFailure"&&s.message?.startsWith("PANIC:"))throw new ce(Hn(this,s.message),this.config.clientVersion);let a=this.parseRequestError(s.message);throw typeof a=="string"?s:new G(`${a.message} +${a.backtrace}`,{clientVersion:this.config.clientVersion})}}async requestBatch(t,{transaction:r,traceparent:n}){Te("requestBatch");let i=Vr(t,r);await this.start();let o=await this.adapterPromise;this.lastQuery=JSON.stringify(i),this.executingQueryPromise=this.engine?.query(this.lastQuery,JSON.stringify({traceparent:n}),Ls(r));let s=await this.executingQueryPromise,a=this.parseEngineResponse(s);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],o?.errorRegistry):new G(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});let{batchResult:l,errors:u}=a;if(Array.isArray(l))return l.map(g=>g.errors&&g.errors.length>0?this.loggerRustPanic??this.buildQueryError(g.errors[0],o?.errorRegistry):{data:g});throw u&&u.length===1?new Error(u[0].error):new Error(JSON.stringify(a))}buildQueryError(t,r){if(t.user_facing_error.is_panic)return new ce(Hn(this,t.user_facing_error.message),this.config.clientVersion);let n=this.getExternalAdapterError(t.user_facing_error,r);return n?n.error:Qr(t,this.config.clientVersion,this.config.activeProvider)}getExternalAdapterError(t,r){if(t.error_code===Lp&&r){let n=t.meta?.id;ur(typeof n=="number","Malformed external JS error received from the engine");let i=r.consumeError(n);return ur(i,"External error with reported id was not registered"),i}}async metrics(t){await this.start();let r=await this.engine.metrics(JSON.stringify(t));return t.format==="prometheus"?r:this.parseEngineResponse(r)}};function Up(e){return typeof e=="object"&&e!==null&&e.error_code!==void 0}function Hn(e,t){return Fs({binaryTarget:e.binaryTarget,title:t,version:e.config.clientVersion,engineVersion:e.versionInfo?.commit,database:e.config.activeProvider,query:e.lastQuery})}m();c();p();d();f();function qs({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=S=>{i.push({_tag:"warning",value:S})},a=S=>{let F=S.join(` +`);o.push({_tag:"error",value:F})},l=!!e?.startsWith("prisma://"),u=bn(e),g=!!t,h=l||u;!g&&r&&h&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let T=h||!r;g&&(T||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):h?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let O={accelerate:T,ppg:u,driverAdapters:g};function C(S){return S.length>0}return C(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:O}:{ok:!0,diagnostics:{warnings:i},isUsing:O}}function Bs({copyEngine:e=!0},t){let r;try{r=Wr({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...y.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=qs({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"react-native"});for(let h of o.warnings)Lt(...h.value);if(!n){let h=o.errors[0];throw new te(h.value,{clientVersion:t.clientVersion})}let s=it(t.generator),a=s==="library",l=s==="binary",u=s==="client",g=(i.accelerate||i.ppg)&&!i.driverAdapters;return new er(t)}m();c();p();d();f();function js({generator:e}){return e?.previewFeatures??[]}m();c();p();d();f();var Us=e=>({command:e});m();c();p();d();f();m();c();p();d();f();var $s=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);m();c();p();d();f();function vt(e){try{return Vs(e,"fast")}catch{return Vs(e,"slow")}}function Vs(e,t){return JSON.stringify(e.map(r=>Js(r,t)))}function Js(e,t){if(Array.isArray(e))return e.map(r=>Js(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(st(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Fe.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(w.Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if($p(e))return{prisma__type:"bytes",prisma__value:w.Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:w.Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?Gs(e):e}function $p(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Gs(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Qs);let t={};for(let r of Object.keys(e))t[r]=Qs(e[r]);return t}function Qs(e){return typeof e=="bigint"?e.toString():Gs(e)}var Vp=/^(\s*alter\s)/i,Ws=z("prisma:client");function Yn(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&Vp.exec(t))throw new Error(`Running ALTER using ${n} is not supported +Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. + +Example: + await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) + +More Information: https://pris.ly/d/execute-raw +`)}var Zn=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(Br(r))n=r.sql,i={values:vt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:vt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:vt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:vt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=$s(r),i={values:vt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Ws(`prisma.${e}(${n}, ${i.values})`):Ws(`prisma.${e}(${n})`),{query:n,parameters:i}},Ks={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new le(t,r)}},zs={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};m();c();p();d();f();function Xn(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Hs(r(s)):Hs(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Hs(e){return typeof e.then=="function"?e:Promise.resolve(e)}m();c();p();d();f();var Qp=mn.split(".")[0],Jp={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},ei=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${Qp}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??Jp}};function Ys(){return new ei}m();c();p();d();f();function Zs(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}m();c();p();d();f();function Xs(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}m();c();p();d();f();m();c();p();d();f();function Kr(e){return typeof e.batchRequestIdx=="number"}m();c();p();d();f();function ea(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(ti(e.query.arguments)),t.push(ti(e.query.selection)),t.join("")}function ti(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${ti(n)})`:r}).join(" ")})`}m();c();p();d();f();var Gp={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function ri(e){return Gp[e]}m();c();p();d();f();var zr=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,y.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iYe("bigint",r));case"bytes-array":return t.map(r=>Ye("bytes",r));case"decimal-array":return t.map(r=>Ye("decimal",r));case"datetime-array":return t.map(r=>Ye("datetime",r));case"date-array":return t.map(r=>Ye("date",r));case"time-array":return t.map(r=>Ye("time",r));default:return t}}function Hr(e){let t=[],r=Wp(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(h=>h.protocolQuery),l=this.client._tracingHelper.getTraceParent(s),u=n.some(h=>ri(h.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:l,transaction:zp(o),containsWrite:u,customDataProxyFetch:i})).map((h,T)=>{if(h instanceof Error)return h;try{return this.mapQueryEngineResult(n[T],h)}catch(O){return O}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?ta(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:ri(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:ea(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return y.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Kp(t),Hp(t,i))throw t;if(t instanceof se&&Yp(t)){let u=ra(t.meta);Mr({args:o,errors:[u],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let l=t.message;if(n&&(l=vr({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:l})),l=this.sanitizeMessage(l),t.code){let u=s?{modelName:s,...t.meta}:t.meta;throw new se(l,{code:t.code,clientVersion:this.client._clientVersion,meta:u,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new ce(l,this.client._clientVersion);if(t instanceof G)throw new G(l,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof Q)throw new Q(l,this.client._clientVersion);if(t instanceof ce)throw new ce(l,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?ot(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(u=>u!=="select"&&u!=="include"),a=Qn(o,s),l=i==="queryRaw"?Hr(a):Pt(a);return n?n(l):l}get[Symbol.toStringTag](){return"RequestHandler"}};function zp(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:ta(e)};ze(e,"Unknown transaction kind")}}function ta(e){return{id:e.id,payload:e.payload}}function Hp(e,t){return Kr(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function Yp(e){return e.code==="P2009"||e.code==="P2012"}function ra(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(ra)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}m();c();p();d();f();var na=_s;m();c();p();d();f();var la=Qe(In());m();c();p();d();f();var j=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};ue(j,"PrismaClientConstructorValidationError");var ia=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],oa=["pretty","colorless","minimal"],sa=["info","query","warn","error"],Zp={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new j(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=Tt(r,t)||` Available datasources: ${t.join(", ")}`;throw new j(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new j(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new j(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new j(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&&it(t.generator)==="client")throw new j('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new j('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(it(t.generator)==="binary")throw new j('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new j(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new j(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!oa.includes(e)){let t=Tt(e,oa);throw new j(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new j(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!sa.includes(r)){let n=Tt(r,sa);throw new j(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Tt(i,o);throw new j(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new j(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new j(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new j(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new j('"omit" option is expected to be an object.');if(e===null)throw new j('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=ed(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let l=o.fields.find(u=>u.name===s);if(!l){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(l.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new j(td(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new j(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=Tt(r,t);throw new j(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function ua(e,t){for(let[r,n]of Object.entries(e)){if(!ia.includes(r)){let i=Tt(r,ia);throw new j(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}Zp[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new j('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Tt(e,t){if(t.length===0||typeof e!="string")return"";let r=Xp(e,t);return r?` Did you mean "${r}"?`:""}function Xp(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,la.default)(e,i)}));r.sort((i,o)=>i.distanceDe(n)===t);if(r)return e[r]}function td(e,t){let r=yt(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Fr(r,"colorless");return`Error validating "omit" option: + +${i} + +${n}`}m();c();p();d();f();function ca(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},l=u=>{o||(o=!0,r(u))};for(let u=0;u{n[u]=g,a()},g=>{if(!Kr(g)){l(g);return}g.batchRequestIdx===u?l(g):(i||(i=g),a())})})}var $e=z("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var rd={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},nd=Symbol.for("prisma.client.transaction.id"),id={id:0,nextId(){return++this.id}};function fa(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Xn();constructor(n){e=n?.__internal?.configOverride?.(e)??e,Cs(e),n&&ua(n,e);let i=new jr().on("error",()=>{});this._extensions=wt.empty(),this._previewFeatures=js(e),this._clientVersion=e.clientVersion??na,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=Ys();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&Re.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&Re.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let l=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==l)throw new Q(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${l}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new Q("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let l=n??{},u=l.__internal??{},g=u.debug===!0;g&&z.enable("prisma:client");let h=Re.resolve(e.dirname,e.relativePath);sr.existsSync(h)||(h=e.dirname),$e("dirname",e.dirname),$e("relativePath",e.relativePath),$e("cwd",h);let T=u.engine||{};if(l.errorFormat?this._errorFormat=l.errorFormat:y.env.NODE_ENV==="production"?this._errorFormat="minimal":y.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:h,dirname:e.dirname,enableDebugLogs:g,allowTriggerPanic:T.allowTriggerPanic,prismaPath:T.binaryPath??void 0,engineEndpoint:T.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:l.log&&Xs(l.log),logQueries:l.log&&!!(typeof l.log=="string"?l.log==="query":l.log.find(O=>typeof O=="string"?O==="query":O.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:Ss(l,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:l.transactionOptions?.maxWait??2e3,timeout:l.transactionOptions?.timeout??5e3,isolationLevel:l.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:Wr,getBatchRequestPayload:Vr,prismaGraphQLToJSError:Qr,PrismaClientUnknownRequestError:G,PrismaClientInitializationError:Q,PrismaClientKnownRequestError:se,debug:z("prisma:client:accelerateEngine"),engineVersion:da.version,clientVersion:e.clientVersion}},$e("clientVersion",e.clientVersion),this._engine=Bs(e,this._engineConfig),this._requestHandler=new Yr(this,i),l.log)for(let O of l.log){let C=typeof O=="string"?O:O.emit==="stdout"?O.level:null;C&&this.$on(C,S=>{Dt.log(`${Dt.tags[C]??""}`,S.message||S.query)})}}catch(l){throw l.clientVersion=this._clientVersion,l}return this._appliedParent=Zt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{_i()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:Zn({clientMethod:i,activeProvider:a}),callsite:Ue(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=pa(n,i);return Yn(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new te("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(Yn(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new te(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Us,callsite:Ue(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:Zn({clientMethod:i,activeProvider:a}),callsite:Ue(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...pa(n,i));throw new te("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new te("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=id.nextId(),s=Zs(n.length),a=n.map((l,u)=>{if(l?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let g=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,h={kind:"batch",id:o,index:u,isolationLevel:g,lock:s};return l.requestTransaction?.(h)??l});return ca(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),l;try{let u={kind:"itx",...a};l=await n(this._createItxClient(u)),await this._engine.transaction("commit",o,a)}catch(u){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),u}return l}_createItxClient(n){return ge(Zt(ge(ps(this),[ne("_appliedParent",()=>this._appliedParent._createItxClient(n)),ne("_createPrismaPromise",()=>Xn(n)),ne(nd,()=>n.id)])),[Et(hs)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??rd,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async l=>{let{runInTransaction:u,args:g,...h}=l,T={...n,...h};g&&(T.args=i.middlewareArgsToRequestArgs(g)),n.transaction!==void 0&&u===!1&&delete T.transaction;let O=await Es(this,T);return T.model?gs({result:O,modelName:T.model,args:T.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):O};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:l,argsMapper:u,transaction:g,unpacker:h,otelParentCtx:T,customDataProxyFetch:O}){try{n=u?u(n):n;let C={name:"serialize"},S=this._tracingHelper.runInChildSpan(C,()=>Nr({modelName:l,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return z.enabled("prisma:client")&&($e("Prisma Client call:"),$e(`prisma.${i}(${es(n)})`),$e("Generated request:"),$e(JSON.stringify(S,null,2)+` +`)),g?.kind==="batch"&&await g.lock,this._requestHandler.request({protocolQuery:S,modelName:l,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:g,unpacker:h,otelParentCtx:T,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:O})}catch(C){throw C.clientVersion=this._clientVersion,C}}$metrics=new bt(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=ds}return t}function pa(e,t){return od(e)?[new le(e,t),Ks]:[e,zs]}function od(e){return Array.isArray(e)&&Array.isArray(e.raw)}m();c();p();d();f();var sd=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function ma(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!sd.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}m();c();p();d();f();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); +//# sourceMappingURL=react-native.js.map diff --git a/packages/identity-prisma-client/runtime/wasm-compiler-edge.js b/packages/identity-prisma-client/runtime/wasm-compiler-edge.js new file mode 100644 index 0000000..4f4bbb2 --- /dev/null +++ b/packages/identity-prisma-client/runtime/wasm-compiler-edge.js @@ -0,0 +1,85 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +"use strict";var ou=Object.create;var Kr=Object.defineProperty;var su=Object.getOwnPropertyDescriptor;var au=Object.getOwnPropertyNames;var lu=Object.getPrototypeOf,cu=Object.prototype.hasOwnProperty;var ye=(e,t)=>()=>(e&&(t=e(e=0)),t);var me=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),pt=(e,t)=>{for(var r in t)Kr(e,r,{get:t[r],enumerable:!0})},Vo=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of au(t))!cu.call(e,i)&&i!==r&&Kr(e,i,{get:()=>t[i],enumerable:!(n=su(t,i))||n.enumerable});return e};var $e=(e,t,r)=>(r=e!=null?ou(lu(e)):{},Vo(t||!e||!e.__esModule?Kr(r,"default",{value:e,enumerable:!0}):r,e)),qo=e=>Vo(Kr({},"__esModule",{value:!0}),e);function ui(e,t){if(t=t.toLowerCase(),t==="utf8"||t==="utf-8")return new h(du.encode(e));if(t==="base64"||t==="base64url")return e=e.replace(/-/g,"+").replace(/_/g,"/"),e=e.replace(/[^A-Za-z0-9+/]/g,""),new h([...atob(e)].map(r=>r.charCodeAt(0)));if(t==="binary"||t==="ascii"||t==="latin1"||t==="latin-1")return new h([...e].map(r=>r.charCodeAt(0)));if(t==="ucs2"||t==="ucs-2"||t==="utf16le"||t==="utf-16le"){let r=new h(e.length*2),n=new DataView(r.buffer);for(let i=0;ia.startsWith("get")||a.startsWith("set")),n=r.map(a=>a.replace("get","read").replace("set","write")),i=(a,f)=>function(w=0){return Y(w,"offset"),de(w,"offset"),ee(w,"offset",this.length-1),new DataView(this.buffer)[r[a]](w,f)},o=(a,f)=>function(w,A=0){let R=r[a].match(/set(\w+\d+)/)[1].toLowerCase(),S=mu[R];return Y(A,"offset"),de(A,"offset"),ee(A,"offset",this.length-1),pu(w,"value",S[0],S[1]),new DataView(this.buffer)[r[a]](A,w,f),A+parseInt(r[a].match(/\d+/)[0])/8},s=a=>{a.forEach(f=>{f.includes("Uint")&&(e[f.replace("Uint","UInt")]=e[f]),f.includes("Float64")&&(e[f.replace("Float64","Double")]=e[f]),f.includes("Float32")&&(e[f.replace("Float32","Float")]=e[f])})};n.forEach((a,f)=>{a.startsWith("read")&&(e[a]=i(f,!1),e[a+"LE"]=i(f,!0),e[a+"BE"]=i(f,!1)),a.startsWith("write")&&(e[a]=o(f,!1),e[a+"LE"]=o(f,!0),e[a+"BE"]=o(f,!1)),s([a,a+"LE",a+"BE"])})}function jo(e){throw new Error(`Buffer polyfill does not implement "${e}"`)}function zr(e,t){if(!(e instanceof Uint8Array))throw new TypeError(`The "${t}" argument must be an instance of Buffer or Uint8Array`)}function ee(e,t,r=yu+1){if(e<0||e>r){let n=new RangeError(`The value of "${t}" is out of range. It must be >= 0 && <= ${r}. Received ${e}`);throw n.code="ERR_OUT_OF_RANGE",n}}function Y(e,t){if(typeof e!="number"){let r=new TypeError(`The "${t}" argument must be of type number. Received type ${typeof e}.`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function de(e,t){if(!Number.isInteger(e)||Number.isNaN(e)){let r=new RangeError(`The value of "${t}" is out of range. It must be an integer. Received ${e}`);throw r.code="ERR_OUT_OF_RANGE",r}}function pu(e,t,r,n){if(en){let i=new RangeError(`The value of "${t}" is out of range. It must be >= ${r} and <= ${n}. Received ${e}`);throw i.code="ERR_OUT_OF_RANGE",i}}function Bo(e,t){if(typeof e!="string"){let r=new TypeError(`The "${t}" argument must be of type string. Received type ${typeof e}`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function hu(e,t="utf8"){return h.from(e,t)}var h,mu,du,fu,gu,yu,y,pi,c=ye(()=>{"use strict";h=class e extends Uint8Array{_isBuffer=!0;get offset(){return this.byteOffset}static alloc(t,r=0,n="utf8"){return Bo(n,"encoding"),e.allocUnsafe(t).fill(r,n)}static allocUnsafe(t){return e.from(t)}static allocUnsafeSlow(t){return e.from(t)}static isBuffer(t){return t&&!!t._isBuffer}static byteLength(t,r="utf8"){if(typeof t=="string")return ui(t,r).byteLength;if(t&&t.byteLength)return t.byteLength;let n=new TypeError('The "string" argument must be of type string or an instance of Buffer or ArrayBuffer.');throw n.code="ERR_INVALID_ARG_TYPE",n}static isEncoding(t){return gu.includes(t)}static compare(t,r){zr(t,"buff1"),zr(r,"buff2");for(let n=0;nr[n])return 1}return t.length===r.length?0:t.length>r.length?1:-1}static from(t,r="utf8"){if(t&&typeof t=="object"&&t.type==="Buffer")return new e(t.data);if(typeof t=="number")return new e(new Uint8Array(t));if(typeof t=="string")return ui(t,r);if(ArrayBuffer.isView(t)){let{byteOffset:n,byteLength:i,buffer:o}=t;return"map"in t&&typeof t.map=="function"?new e(t.map(s=>s%256),n,i):new e(o,n,i)}if(t&&typeof t=="object"&&("length"in t||"byteLength"in t||"buffer"in t))return new e(t);throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}static concat(t,r){if(t.length===0)return e.alloc(0);let n=[].concat(...t.map(o=>[...o])),i=e.alloc(r!==void 0?r:n.length);return i.set(r!==void 0?n.slice(0,r):n),i}slice(t=0,r=this.length){return this.subarray(t,r)}subarray(t=0,r=this.length){return Object.setPrototypeOf(super.subarray(t,r),e.prototype)}reverse(){return super.reverse(),this}readIntBE(t,r){Y(t,"offset"),de(t,"offset"),ee(t,"offset",this.length-1),Y(r,"byteLength"),de(r,"byteLength");let n=new DataView(this.buffer,t,r),i=0;for(let o=0;o=0;o--)i.setUint8(o,t&255),t=t/256;return r+n}writeUintBE(t,r,n){return this.writeUIntBE(t,r,n)}writeUIntLE(t,r,n){Y(r,"offset"),de(r,"offset"),ee(r,"offset",this.length-1),Y(n,"byteLength"),de(n,"byteLength");let i=new DataView(this.buffer,r,n);for(let o=0;or===t[n])}copy(t,r=0,n=0,i=this.length){ee(r,"targetStart"),ee(n,"sourceStart",this.length),ee(i,"sourceEnd"),r>>>=0,n>>>=0,i>>>=0;let o=0;for(;n=this.length?this.length-a:t.length),a);return this}includes(t,r=null,n="utf-8"){return this.indexOf(t,r,n)!==-1}lastIndexOf(t,r=null,n="utf-8"){return this.indexOf(t,r,n,!0)}indexOf(t,r=null,n="utf-8",i=!1){let o=i?this.findLastIndex.bind(this):this.findIndex.bind(this);n=typeof r=="string"?r:n;let s=e.from(typeof t=="number"?[t]:t,n),a=typeof r=="string"?0:r;return a=typeof r=="number"?a:null,a=Number.isNaN(a)?null:a,a??=i?this.length:0,a=a<0?this.length+a:a,s.length===0&&i===!1?a>=this.length?this.length:a:s.length===0&&i===!0?(a>=this.length?this.length:a)||this.length:o((f,w)=>(i?w<=a:w>=a)&&this[w]===s[0]&&s.every((R,S)=>this[w+S]===R))}toString(t="utf8",r=0,n=this.length){if(r=r<0?0:r,t=t.toString().toLowerCase(),n<=0)return"";if(t==="utf8"||t==="utf-8")return fu.decode(this.slice(r,n));if(t==="base64"||t==="base64url"){let i=btoa(this.reduce((o,s)=>o+pi(s),""));return t==="base64url"?i.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):i}if(t==="binary"||t==="ascii"||t==="latin1"||t==="latin-1")return this.slice(r,n).reduce((i,o)=>i+pi(o&(t==="ascii"?127:255)),"");if(t==="ucs2"||t==="ucs-2"||t==="utf16le"||t==="utf-16le"){let i=new DataView(this.buffer.slice(r,n));return Array.from({length:i.byteLength/2},(o,s)=>s*2+1i+o.toString(16).padStart(2,"0"),"");jo(`encoding "${t}"`)}toLocaleString(){return this.toString()}inspect(){return``}};mu={int8:[-128,127],int16:[-32768,32767],int32:[-2147483648,2147483647],uint8:[0,255],uint16:[0,65535],uint32:[0,4294967295],float32:[-1/0,1/0],float64:[-1/0,1/0],bigint64:[-0x8000000000000000n,0x7fffffffffffffffn],biguint64:[0n,0xffffffffffffffffn]},du=new TextEncoder,fu=new TextDecoder,gu=["utf8","utf-8","hex","base64","ascii","binary","base64url","ucs2","ucs-2","utf16le","utf-16le","latin1","latin-1"],yu=4294967295;uu(h.prototype);y=new Proxy(hu,{construct(e,[t,r]){return h.from(t,r)},get(e,t){return h[t]}}),pi=String.fromCodePoint});var g,x,u=ye(()=>{"use strict";g={nextTick:(e,...t)=>{setTimeout(()=>{e(...t)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:x}=g});var b,p=ye(()=>{"use strict";b=globalThis.performance??(()=>{let e=Date.now();return{now:()=>Date.now()-e}})()});var E,m=ye(()=>{"use strict";E=()=>{};E.prototype=E});var d=ye(()=>{"use strict"});function Jo(e,t){var r,n,i,o,s,a,f,w,A=e.constructor,R=A.precision;if(!e.s||!t.s)return t.s||(t=new A(e)),W?q(t,R):t;if(f=e.d,w=t.d,s=e.e,i=t.e,f=f.slice(),o=s-i,o){for(o<0?(n=f,o=-o,a=w.length):(n=w,i=s,a=f.length),s=Math.ceil(R/H),a=s>a?s+1:a+1,o>a&&(o=a,n.length=1),n.reverse();o--;)n.push(0);n.reverse()}for(a=f.length,o=w.length,a-o<0&&(o=a,n=w,w=f,f=n),r=0;o;)r=(f[--o]=f[o]+w[o]+r)/te|0,f[o]%=te;for(r&&(f.unshift(r),++i),a=f.length;f[--a]==0;)f.pop();return t.d=f,t.e=i,W?q(t,R):t}function Re(e,t,r){if(e!==~~e||er)throw Error(Ye+e)}function Ae(e){var t,r,n,i=e.length-1,o="",s=e[0];if(i>0){for(o+=s,t=1;t16)throw Error(di+Z(e));if(!e.s)return new A(he);for(t==null?(W=!1,a=R):a=t,s=new A(.03125);e.abs().gte(.1);)e=e.times(s),w+=5;for(n=Math.log(ze(2,w))/Math.LN10*2+5|0,a+=n,r=i=o=new A(he),A.precision=a;;){if(i=q(i.times(e),a),r=r.times(++f),s=o.plus(_e(i,r,a)),Ae(s.d).slice(0,a)===Ae(o.d).slice(0,a)){for(;w--;)o=q(o.times(o),a);return A.precision=R,t==null?(W=!0,q(o,R)):o}o=s}}function Z(e){for(var t=e.e*H,r=e.d[0];r>=10;r/=10)t++;return t}function mi(e,t,r){if(t>e.LN10.sd())throw W=!0,r&&(e.precision=r),Error(be+"LN10 precision limit exceeded");return q(new e(e.LN10),t)}function Ve(e){for(var t="";e--;)t+="0";return t}function Kt(e,t){var r,n,i,o,s,a,f,w,A,R=1,S=10,C=e,L=C.d,k=C.constructor,M=k.precision;if(C.s<1)throw Error(be+(C.s?"NaN":"-Infinity"));if(C.eq(he))return new k(0);if(t==null?(W=!1,w=M):w=t,C.eq(10))return t==null&&(W=!0),mi(k,w);if(w+=S,k.precision=w,r=Ae(L),n=r.charAt(0),o=Z(C),Math.abs(o)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)C=C.times(e),r=Ae(C.d),n=r.charAt(0),R++;o=Z(C),n>1?(C=new k("0."+r),o++):C=new k(n+"."+r.slice(1))}else return f=mi(k,w+2,M).times(o+""),C=Kt(new k(n+"."+r.slice(1)),w-S).plus(f),k.precision=M,t==null?(W=!0,q(C,M)):C;for(a=s=C=_e(C.minus(he),C.plus(he),w),A=q(C.times(C),w),i=3;;){if(s=q(s.times(A),w),f=a.plus(_e(s,new k(i),w)),Ae(f.d).slice(0,w)===Ae(a.d).slice(0,w))return a=a.times(2),o!==0&&(a=a.plus(mi(k,w+2,M).times(o+""))),a=_e(a,new k(R),w),k.precision=M,t==null?(W=!0,q(a,M)):a;a=f,i+=2}}function Qo(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(n,i),t){if(i-=n,r=r-n-1,e.e=dt(r/H),e.d=[],n=(r+1)%H,r<0&&(n+=H),nYr||e.e<-Yr))throw Error(di+r)}else e.s=0,e.e=0,e.d=[0];return e}function q(e,t,r){var n,i,o,s,a,f,w,A,R=e.d;for(s=1,o=R[0];o>=10;o/=10)s++;if(n=t-s,n<0)n+=H,i=t,w=R[A=0];else{if(A=Math.ceil((n+1)/H),o=R.length,A>=o)return e;for(w=o=R[A],s=1;o>=10;o/=10)s++;n%=H,i=n-H+s}if(r!==void 0&&(o=ze(10,s-i-1),a=w/o%10|0,f=t<0||R[A+1]!==void 0||w%o,f=r<4?(a||f)&&(r==0||r==(e.s<0?3:2)):a>5||a==5&&(r==4||f||r==6&&(n>0?i>0?w/ze(10,s-i):0:R[A-1])%10&1||r==(e.s<0?8:7))),t<1||!R[0])return f?(o=Z(e),R.length=1,t=t-o-1,R[0]=ze(10,(H-t%H)%H),e.e=dt(-t/H)||0):(R.length=1,R[0]=e.e=e.s=0),e;if(n==0?(R.length=A,o=1,A--):(R.length=A+1,o=ze(10,H-n),R[A]=i>0?(w/ze(10,s-i)%ze(10,i)|0)*o:0),f)for(;;)if(A==0){(R[0]+=o)==te&&(R[0]=1,++e.e);break}else{if(R[A]+=o,R[A]!=te)break;R[A--]=0,o=1}for(n=R.length;R[--n]===0;)R.pop();if(W&&(e.e>Yr||e.e<-Yr))throw Error(di+Z(e));return e}function Ko(e,t){var r,n,i,o,s,a,f,w,A,R,S=e.constructor,C=S.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new S(e),W?q(t,C):t;if(f=e.d,R=t.d,n=t.e,w=e.e,f=f.slice(),s=w-n,s){for(A=s<0,A?(r=f,s=-s,a=R.length):(r=R,n=w,a=f.length),i=Math.max(Math.ceil(C/H),a)+2,s>i&&(s=i,r.length=1),r.reverse(),i=s;i--;)r.push(0);r.reverse()}else{for(i=f.length,a=R.length,A=i0;--i)f[a++]=0;for(i=R.length;i>s;){if(f[--i]0?o=o.charAt(0)+"."+o.slice(1)+Ve(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(i<0?"e":"e+")+i):i<0?(o="0."+Ve(-i-1)+o,r&&(n=r-s)>0&&(o+=Ve(n))):i>=s?(o+=Ve(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Ve(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Ve(n))),e.s<0?"-"+o:o}function Ho(e,t){if(e.length>t)return e.length=t,!0}function zo(e){var t,r,n;function i(o){var s=this;if(!(s instanceof i))return new i(o);if(s.constructor=i,o instanceof i){s.s=o.s,s.e=o.e,s.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Ye+o);if(o>0)s.s=1;else if(o<0)o=-o,s.s=-1;else{s.s=0,s.e=0,s.d=[0];return}if(o===~~o&&o<1e7){s.e=0,s.d=[o];return}return Qo(s,o.toString())}else if(typeof o!="string")throw Error(Ye+o);if(o.charCodeAt(0)===45?(o=o.slice(1),s.s=-1):s.s=1,bu.test(o))Qo(s,o);else throw Error(Ye+o)}if(i.prototype=I,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=zo,i.config=i.set=Eu,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&n<=i[t+2])this[r]=n;else throw Error(Ye+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Ye+r+": "+n);return this}var mt,wu,fi,W,be,Ye,di,dt,ze,bu,he,te,H,Go,Yr,I,_e,fi,Zr,Yo=ye(()=>{"use strict";c();u();p();m();d();l();mt=1e9,wu={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},W=!0,be="[DecimalError] ",Ye=be+"Invalid argument: ",di=be+"Exponent out of range: ",dt=Math.floor,ze=Math.pow,bu=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,te=1e7,H=7,Go=9007199254740991,Yr=dt(Go/H),I={};I.absoluteValue=I.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};I.comparedTo=I.cmp=function(e){var t,r,n,i,o=this;if(e=new o.constructor(e),o.s!==e.s)return o.s||-e.s;if(o.e!==e.e)return o.e>e.e^o.s<0?1:-1;for(n=o.d.length,i=e.d.length,t=0,r=ne.d[t]^o.s<0?1:-1;return n===i?0:n>i^o.s<0?1:-1};I.decimalPlaces=I.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*H;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};I.dividedBy=I.div=function(e){return _e(this,new this.constructor(e))};I.dividedToIntegerBy=I.idiv=function(e){var t=this,r=t.constructor;return q(_e(t,new r(e),0,1),r.precision)};I.equals=I.eq=function(e){return!this.cmp(e)};I.exponent=function(){return Z(this)};I.greaterThan=I.gt=function(e){return this.cmp(e)>0};I.greaterThanOrEqualTo=I.gte=function(e){return this.cmp(e)>=0};I.isInteger=I.isint=function(){return this.e>this.d.length-2};I.isNegative=I.isneg=function(){return this.s<0};I.isPositive=I.ispos=function(){return this.s>0};I.isZero=function(){return this.s===0};I.lessThan=I.lt=function(e){return this.cmp(e)<0};I.lessThanOrEqualTo=I.lte=function(e){return this.cmp(e)<1};I.logarithm=I.log=function(e){var t,r=this,n=r.constructor,i=n.precision,o=i+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(he))throw Error(be+"NaN");if(r.s<1)throw Error(be+(r.s?"NaN":"-Infinity"));return r.eq(he)?new n(0):(W=!1,t=_e(Kt(r,o),Kt(e,o),o),W=!0,q(t,i))};I.minus=I.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Ko(t,e):Jo(t,(e.s=-e.s,e))};I.modulo=I.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(be+"NaN");return r.s?(W=!1,t=_e(r,e,0,1).times(e),W=!0,r.minus(t)):q(new n(r),i)};I.naturalExponential=I.exp=function(){return Wo(this)};I.naturalLogarithm=I.ln=function(){return Kt(this)};I.negated=I.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};I.plus=I.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Jo(t,e):Ko(t,(e.s=-e.s,e))};I.precision=I.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ye+e);if(t=Z(i)+1,n=i.d.length-1,r=n*H+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};I.squareRoot=I.sqrt=function(){var e,t,r,n,i,o,s,a=this,f=a.constructor;if(a.s<1){if(!a.s)return new f(0);throw Error(be+"NaN")}for(e=Z(a),W=!1,i=Math.sqrt(+a),i==0||i==1/0?(t=Ae(a.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=dt((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new f(t)):n=new f(i.toString()),r=f.precision,i=s=r+3;;)if(o=n,n=o.plus(_e(a,o,s+2)).times(.5),Ae(o.d).slice(0,s)===(t=Ae(n.d)).slice(0,s)){if(t=t.slice(s-3,s+1),i==s&&t=="4999"){if(q(o,r+1,0),o.times(o).eq(a)){n=o;break}}else if(t!="9999")break;s+=4}return W=!0,q(n,r)};I.times=I.mul=function(e){var t,r,n,i,o,s,a,f,w,A=this,R=A.constructor,S=A.d,C=(e=new R(e)).d;if(!A.s||!e.s)return new R(0);for(e.s*=A.s,r=A.e+e.e,f=S.length,w=C.length,f=0;){for(t=0,i=f+n;i>n;)a=o[i]+C[n]*S[i-n-1]+t,o[i--]=a%te|0,t=a/te|0;o[i]=(o[i]+t)%te|0}for(;!o[--s];)o.pop();return t?++r:o.shift(),e.d=o,e.e=r,W?q(e,R.precision):e};I.toDecimalPlaces=I.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Re(e,0,mt),t===void 0?t=n.rounding:Re(t,0,8),q(r,e+Z(r)+1,t))};I.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Ze(n,!0):(Re(e,0,mt),t===void 0?t=i.rounding:Re(t,0,8),n=q(new i(n),e+1,t),r=Ze(n,!0,e+1)),r};I.toFixed=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?Ze(i):(Re(e,0,mt),t===void 0?t=o.rounding:Re(t,0,8),n=q(new o(i),e+Z(i)+1,t),r=Ze(n.abs(),!1,e+Z(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};I.toInteger=I.toint=function(){var e=this,t=e.constructor;return q(new t(e),Z(e)+1,t.rounding)};I.toNumber=function(){return+this};I.toPower=I.pow=function(e){var t,r,n,i,o,s,a=this,f=a.constructor,w=12,A=+(e=new f(e));if(!e.s)return new f(he);if(a=new f(a),!a.s){if(e.s<1)throw Error(be+"Infinity");return a}if(a.eq(he))return a;if(n=f.precision,e.eq(he))return q(a,n);if(t=e.e,r=e.d.length-1,s=t>=r,o=a.s,s){if((r=A<0?-A:A)<=Go){for(i=new f(he),t=Math.ceil(n/H+4),W=!1;r%2&&(i=i.times(a),Ho(i.d,t)),r=dt(r/2),r!==0;)a=a.times(a),Ho(a.d,t);return W=!0,e.s<0?new f(he).div(i):q(i,n)}}else if(o<0)throw Error(be+"NaN");return o=o<0&&e.d[Math.max(t,r)]&1?-1:1,a.s=1,W=!1,i=e.times(Kt(a,n+w)),W=!0,i=Wo(i),i.s=o,i};I.toPrecision=function(e,t){var r,n,i=this,o=i.constructor;return e===void 0?(r=Z(i),n=Ze(i,r<=o.toExpNeg||r>=o.toExpPos)):(Re(e,1,mt),t===void 0?t=o.rounding:Re(t,0,8),i=q(new o(i),e,t),r=Z(i),n=Ze(i,e<=r||r<=o.toExpNeg,e)),n};I.toSignificantDigits=I.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Re(e,1,mt),t===void 0?t=n.rounding:Re(t,0,8)),q(new n(r),e,t)};I.toString=I.valueOf=I.val=I.toJSON=I[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Z(e),r=e.constructor;return Ze(e,t<=r.toExpNeg||t>=r.toExpPos)};_e=function(){function e(n,i){var o,s=0,a=n.length;for(n=n.slice();a--;)o=n[a]*i+s,n[a]=o%te|0,s=o/te|0;return s&&n.unshift(s),n}function t(n,i,o,s){var a,f;if(o!=s)f=o>s?1:-1;else for(a=f=0;ai[a]?1:-1;break}return f}function r(n,i,o){for(var s=0;o--;)n[o]-=s,s=n[o]1;)n.shift()}return function(n,i,o,s){var a,f,w,A,R,S,C,L,k,M,De,ue,B,pe,Ke,ci,xe,Jr,Wr=n.constructor,iu=n.s==i.s?1:-1,ve=n.d,z=i.d;if(!n.s)return new Wr(n);if(!i.s)throw Error(be+"Division by zero");for(f=n.e-i.e,xe=z.length,Ke=ve.length,C=new Wr(iu),L=C.d=[],w=0;z[w]==(ve[w]||0);)++w;if(z[w]>(ve[w]||0)&&--f,o==null?ue=o=Wr.precision:s?ue=o+(Z(n)-Z(i))+1:ue=o,ue<0)return new Wr(0);if(ue=ue/H+2|0,w=0,xe==1)for(A=0,z=z[0],ue++;(w1&&(z=e(z,A),ve=e(ve,A),xe=z.length,Ke=ve.length),pe=xe,k=ve.slice(0,xe),M=k.length;M=te/2&&++ci;do A=0,a=t(z,k,xe,M),a<0?(De=k[0],xe!=M&&(De=De*te+(k[1]||0)),A=De/ci|0,A>1?(A>=te&&(A=te-1),R=e(z,A),S=R.length,M=k.length,a=t(R,k,S,M),a==1&&(A--,r(R,xe{"use strict";Yo();v=class extends Zr{static isDecimal(t){return t instanceof Zr}static random(t=20){{let n=globalThis.crypto.getRandomValues(new Uint8Array(t)).reduce((i,o)=>i+o,"");return new Zr(`0.${n.slice(0,t)}`)}}},se=v});function Ru(){return!1}function bi(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function Cu(){return bi()}function Su(){return[]}function Iu(e){e(null,[])}function ku(){return""}function Ou(){return""}function Du(){}function _u(){}function Mu(){}function Nu(){}function Lu(){}function Uu(){}function Fu(){}function $u(){}function Vu(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function qu(e,t){t(null,bi())}var Bu,ju,fs,gs=ye(()=>{"use strict";c();u();p();m();d();l();Bu={},ju={existsSync:Ru,lstatSync:bi,stat:qu,statSync:Cu,readdirSync:Su,readdir:Iu,readlinkSync:ku,realpathSync:Ou,chmodSync:Du,renameSync:_u,mkdirSync:Mu,rmdirSync:Nu,rmSync:Lu,unlinkSync:Uu,watchFile:Fu,unwatchFile:$u,watch:Vu,promises:Bu},fs=ju});var ys=me(()=>{"use strict";c();u();p();m();d();l()});var hs=me((Vy,Qu)=>{Qu.exports={name:"@prisma/internals",version:"6.19.1",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Gu(...e){return e.join("/")}function Ju(...e){return e.join("/")}function Wu(e){let t=ws(e),r=bs(e),[n,i]=t.split(".");return{root:"/",dir:r,base:t,ext:i,name:n}}function ws(e){let t=e.split("/");return t[t.length-1]}function bs(e){return e.split("/").slice(0,-1).join("/")}function zu(e){let t=e.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of t)i===".."?r.pop():r.push(i);let n=r.join("/");return e.startsWith("/")?"/"+n:n}var Es,Ku,Yu,Zu,rn,xs=ye(()=>{"use strict";c();u();p();m();d();l();Es="/",Ku=":";Yu={sep:Es},Zu={basename:ws,delimiter:Ku,dirname:bs,join:Ju,normalize:zu,parse:Wu,posix:Yu,resolve:Gu,sep:Es},rn=Zu});var xi={};pt(xi,{Hash:()=>Zt,createHash:()=>Ps,default:()=>yt,randomFillSync:()=>sn,randomUUID:()=>on,webcrypto:()=>Xt});function on(){return globalThis.crypto.randomUUID()}function sn(e,t,r){return t!==void 0&&(r!==void 0?e=e.subarray(t,t+r):e=e.subarray(t)),globalThis.crypto.getRandomValues(e)}function Ps(e){return new Zt(e)}var Xt,Zt,yt,Xe=ye(()=>{"use strict";c();u();p();m();d();l();Xt=globalThis.crypto;Zt=class{#t=[];#e;constructor(t){this.#e=t}update(t){this.#t.push(t)}async digest(){let t=new Uint8Array(this.#t.reduce((i,o)=>i+o.length,0)),r=0;for(let i of this.#t)t.set(i,r),r+=i.length;let n=await globalThis.crypto.subtle.digest(this.#e,t);return new Uint8Array(n)}},yt={webcrypto:Xt,randomUUID:on,randomFillSync:sn,createHash:Ps,Hash:Zt}});var Pi=me(($h,tp)=>{tp.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var Ts=me(an=>{"use strict";c();u();p();m();d();l();Object.defineProperty(an,"__esModule",{value:!0});an.enginesVersion=void 0;an.enginesVersion=Pi().prisma.enginesVersion});var Rs=me((ew,As)=>{"use strict";c();u();p();m();d();l();As.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var Ss=me((Lw,un)=>{"use strict";c();u();p();m();d();l();un.exports=(e={})=>{let t;if(e.repoUrl)t=e.repoUrl;else if(e.user&&e.repo)t=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let r=new URL(`${t}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}r.searchParams.set(i,o)}}return r.toString()};un.exports.default=un.exports});var Ii=me((SP,_s)=>{"use strict";c();u();p();m();d();l();_s.exports=function(){function e(t,r,n,i,o){return tn?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";c();u();p();m();d();l()});var $s=ye(()=>{"use strict";c();u();p();m();d();l()});var kn,ca=ye(()=>{"use strict";c();u();p();m();d();l();kn=class{events={};on(t,r){return this.events[t]||(this.events[t]=[]),this.events[t].push(r),this}emit(t,...r){return this.events[t]?(this.events[t].forEach(n=>{n(...r)}),!0):!1}}});var Xi=me(rt=>{"use strict";c();u();p();m();d();l();Object.defineProperty(rt,"__esModule",{value:!0});rt.anumber=Zi;rt.abytes=ol;rt.ahash=Nm;rt.aexists=Lm;rt.aoutput=Um;function Zi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Mm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function ol(e,...t){if(!Mm(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function Nm(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Zi(e.outputLen),Zi(e.blockLen)}function Lm(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Um(e,t){ol(e);let r=t.outputLen;if(e.length{"use strict";c();u();p();m();d();l();Object.defineProperty(_,"__esModule",{value:!0});_.add5L=_.add5H=_.add4H=_.add4L=_.add3H=_.add3L=_.rotlBL=_.rotlBH=_.rotlSL=_.rotlSH=_.rotr32L=_.rotr32H=_.rotrBL=_.rotrBH=_.rotrSL=_.rotrSH=_.shrSL=_.shrSH=_.toBig=void 0;_.fromBig=to;_.split=sl;_.add=El;var Fn=BigInt(2**32-1),eo=BigInt(32);function to(e,t=!1){return t?{h:Number(e&Fn),l:Number(e>>eo&Fn)}:{h:Number(e>>eo&Fn)|0,l:Number(e&Fn)|0}}function sl(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;iBigInt(e>>>0)<>>0);_.toBig=al;var ll=(e,t,r)=>e>>>r;_.shrSH=ll;var cl=(e,t,r)=>e<<32-r|t>>>r;_.shrSL=cl;var ul=(e,t,r)=>e>>>r|t<<32-r;_.rotrSH=ul;var pl=(e,t,r)=>e<<32-r|t>>>r;_.rotrSL=pl;var ml=(e,t,r)=>e<<64-r|t>>>r-32;_.rotrBH=ml;var dl=(e,t,r)=>e>>>r-32|t<<64-r;_.rotrBL=dl;var fl=(e,t)=>t;_.rotr32H=fl;var gl=(e,t)=>e;_.rotr32L=gl;var yl=(e,t,r)=>e<>>32-r;_.rotlSH=yl;var hl=(e,t,r)=>t<>>32-r;_.rotlSL=hl;var wl=(e,t,r)=>t<>>64-r;_.rotlBH=wl;var bl=(e,t,r)=>e<>>64-r;_.rotlBL=bl;function El(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var xl=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0);_.add3L=xl;var Pl=(e,t,r,n)=>t+r+n+(e/2**32|0)|0;_.add3H=Pl;var Tl=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0);_.add4L=Tl;var vl=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0;_.add4H=vl;var Al=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0);_.add5L=Al;var Rl=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;_.add5H=Rl;var Fm={fromBig:to,split:sl,toBig:al,shrSH:ll,shrSL:cl,rotrSH:ul,rotrSL:pl,rotrBH:ml,rotrBL:dl,rotr32H:fl,rotr32L:gl,rotlSH:yl,rotlSL:hl,rotlBH:wl,rotlBL:bl,add:El,add3L:xl,add3H:Pl,add4L:Tl,add4H:vl,add5H:Rl,add5L:Al};_.default=Fm});var Sl=me($n=>{"use strict";c();u();p();m();d();l();Object.defineProperty($n,"__esModule",{value:!0});$n.crypto=void 0;var He=(Xe(),qo(xi));$n.crypto=He&&typeof He=="object"&&"webcrypto"in He?He.webcrypto:He&&typeof He=="object"&&"randomBytes"in He?He:void 0});var Ol=me(U=>{"use strict";c();u();p();m();d();l();Object.defineProperty(U,"__esModule",{value:!0});U.Hash=U.nextTick=U.byteSwapIfBE=U.isLE=void 0;U.isBytes=$m;U.u8=Vm;U.u32=qm;U.createView=Bm;U.rotr=jm;U.rotl=Qm;U.byteSwap=io;U.byteSwap32=Hm;U.bytesToHex=Jm;U.hexToBytes=Wm;U.asyncLoop=zm;U.utf8ToBytes=kl;U.toBytes=Vn;U.concatBytes=Ym;U.checkOpts=Zm;U.wrapConstructor=Xm;U.wrapConstructorWithOpts=ed;U.wrapXOFConstructorWithOpts=td;U.randomBytes=rd;var Mt=Sl(),no=Xi();function $m(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Vm(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function qm(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Bm(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function jm(e,t){return e<<32-t|e>>>t}function Qm(e,t){return e<>>32-t>>>0}U.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function io(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}U.byteSwapIfBE=U.isLE?e=>e:e=>io(e);function Hm(e){for(let t=0;tt.toString(16).padStart(2,"0"));function Jm(e){(0,no.abytes)(e);let t="";for(let r=0;r=Le._0&&e<=Le._9)return e-Le._0;if(e>=Le.A&&e<=Le.F)return e-(Le.A-10);if(e>=Le.a&&e<=Le.f)return e-(Le.a-10)}function Wm(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let i=0,o=0;i{};U.nextTick=Km;async function zm(e,t,r){let n=Date.now();for(let i=0;i=0&&oe().update(Vn(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function ed(e){let t=(n,i)=>e(i).update(Vn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function td(e){let t=(n,i)=>e(i).update(Vn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function rd(e=32){if(Mt.crypto&&typeof Mt.crypto.getRandomValues=="function")return Mt.crypto.getRandomValues(new Uint8Array(e));if(Mt.crypto&&typeof Mt.crypto.randomBytes=="function")return Mt.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}});var $l=me(J=>{"use strict";c();u();p();m();d();l();Object.defineProperty(J,"__esModule",{value:!0});J.shake256=J.shake128=J.keccak_512=J.keccak_384=J.keccak_256=J.keccak_224=J.sha3_512=J.sha3_384=J.sha3_256=J.sha3_224=J.Keccak=void 0;J.keccakP=Ul;var Nt=Xi(),Pr=Cl(),Ue=Ol(),Ml=[],Nl=[],Ll=[],nd=BigInt(0),xr=BigInt(1),id=BigInt(2),od=BigInt(7),sd=BigInt(256),ad=BigInt(113);for(let e=0,t=xr,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],Ml.push(2*(5*n+r)),Nl.push((e+1)*(e+2)/2%64);let i=nd;for(let o=0;o<7;o++)t=(t<>od)*ad)%sd,t&id&&(i^=xr<<(xr<r>32?(0,Pr.rotlBH)(e,t,r):(0,Pr.rotlSH)(e,t,r),_l=(e,t,r)=>r>32?(0,Pr.rotlBL)(e,t,r):(0,Pr.rotlSL)(e,t,r);function Ul(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let a=(s+8)%10,f=(s+2)%10,w=r[f],A=r[f+1],R=Dl(w,A,1)^r[a],S=_l(w,A,1)^r[a+1];for(let C=0;C<50;C+=10)e[s+C]^=R,e[s+C+1]^=S}let i=e[2],o=e[3];for(let s=0;s<24;s++){let a=Nl[s],f=Dl(i,o,a),w=_l(i,o,a),A=Ml[s];i=e[A],o=e[A+1],e[A]=f,e[A+1]=w}for(let s=0;s<50;s+=10){for(let a=0;a<10;a++)r[a]=e[s+a];for(let a=0;a<10;a++)e[s+a]^=~r[(a+2)%10]&r[(a+4)%10]}e[0]^=ld[n],e[1]^=cd[n]}r.fill(0)}var Tr=class e extends Ue.Hash{constructor(t,r,n,i=!1,o=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=i,this.rounds=o,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,(0,Nt.anumber)(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,Ue.u32)(this.state)}keccak(){Ue.isLE||(0,Ue.byteSwap32)(this.state32),Ul(this.state32,this.rounds),Ue.isLE||(0,Ue.byteSwap32)(this.state32),this.posOut=0,this.pos=0}update(t){(0,Nt.aexists)(this);let{blockLen:r,state:n}=this;t=(0,Ue.toBytes)(t);let i=t.length;for(let o=0;o=n&&this.keccak();let s=Math.min(n-this.posOut,o-i);t.set(r.subarray(this.posOut,this.posOut+s),i),this.posOut+=s,i+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return(0,Nt.anumber)(t),this.xofInto(new Uint8Array(t))}digestInto(t){if((0,Nt.aoutput)(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:r,suffix:n,outputLen:i,rounds:o,enableXOF:s}=this;return t||(t=new e(r,n,i,s,o)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=o,t.suffix=n,t.outputLen=i,t.enableXOF=s,t.destroyed=this.destroyed,t}};J.Keccak=Tr;var Ge=(e,t,r)=>(0,Ue.wrapConstructor)(()=>new Tr(t,e,r));J.sha3_224=Ge(6,144,224/8);J.sha3_256=Ge(6,136,256/8);J.sha3_384=Ge(6,104,384/8);J.sha3_512=Ge(6,72,512/8);J.keccak_224=Ge(1,144,224/8);J.keccak_256=Ge(1,136,256/8);J.keccak_384=Ge(1,104,384/8);J.keccak_512=Ge(1,72,512/8);var Fl=(e,t,r)=>(0,Ue.wrapXOFConstructorWithOpts)((n={})=>new Tr(t,e,n.dkLen===void 0?r:n.dkLen,!0));J.shake128=Fl(31,168,128/8);J.shake256=Fl(31,136,256/8)});var Jl=me((RL,Je)=>{"use strict";c();u();p();m();d();l();var{sha3_512:ud}=$l(),ql=24,vr=32,oo=(e=4,t=Math.random)=>{let r="";for(;r.lengthBl(ud(e)).toString(36).slice(1),Vl=Array.from({length:26},(e,t)=>String.fromCharCode(t+97)),pd=e=>Vl[Math.floor(e()*Vl.length)],Ql=({globalObj:e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},random:t=Math.random}={})=>{let r=Object.keys(e).toString(),n=r.length?r+oo(vr,t):oo(vr,t);return jl(n).substring(0,vr)},Hl=e=>()=>e++,md=476782367,Gl=({random:e=Math.random,counter:t=Hl(Math.floor(e()*md)),length:r=ql,fingerprint:n=Ql({random:e})}={})=>function(){let o=pd(e),s=Date.now().toString(36),a=t().toString(36),f=oo(r,e),w=`${s+f+a+n}`;return`${o+jl(w).substring(1,r)}`},dd=Gl(),fd=(e,{minLength:t=2,maxLength:r=vr}={})=>{let n=e.length,i=/^[0-9a-z]+$/;try{if(typeof e=="string"&&n>=t&&n<=r&&i.test(e))return!0}finally{}return!1};Je.exports.getConstants=()=>({defaultLength:ql,bigLength:vr});Je.exports.init=Gl;Je.exports.createId=dd;Je.exports.bufToBigInt=Bl;Je.exports.createCounter=Hl;Je.exports.createFingerprint=Ql;Je.exports.isCuid=fd});var Wl=me((_L,Ar)=>{"use strict";c();u();p();m();d();l();var{createId:gd,init:yd,getConstants:hd,isCuid:wd}=Jl();Ar.exports.createId=gd;Ar.exports.init=yd;Ar.exports.getConstants=hd;Ar.exports.isCuid=wd});var $f={};pt($f,{DMMF:()=>or,Debug:()=>K,Decimal:()=>se,Extensions:()=>gi,MetricsClient:()=>St,PrismaClientInitializationError:()=>F,PrismaClientKnownRequestError:()=>X,PrismaClientRustPanicError:()=>ae,PrismaClientUnknownRequestError:()=>ne,PrismaClientValidationError:()=>ie,Public:()=>yi,Sql:()=>fe,createParam:()=>ta,defineDmmfProperty:()=>aa,deserializeJsonResponse:()=>Qe,deserializeRawResult:()=>ai,dmmfToRuntimeDataModel:()=>Ds,empty:()=>pa,getPrismaClient:()=>tu,getRuntime:()=>ti,join:()=>ua,makeStrictEnum:()=>ru,makeTypedQueryFactory:()=>la,objectEnumValues:()=>En,raw:()=>Fi,serializeJsonQuery:()=>Cn,skip:()=>Rn,sqltag:()=>$i,warnEnvConflicts:()=>void 0,warnOnce:()=>rr});module.exports=qo($f);c();u();p();m();d();l();var gi={};pt(gi,{defineExtension:()=>Zo,getExtensionContext:()=>Xo});c();u();p();m();d();l();c();u();p();m();d();l();function Zo(e){return typeof e=="function"?e:t=>t.$extends(e)}c();u();p();m();d();l();function Xo(e){return e}var yi={};pt(yi,{validator:()=>es});c();u();p();m();d();l();c();u();p();m();d();l();function es(...e){return t=>t}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var hi,ts,rs,ns,is=!0;typeof g<"u"&&({FORCE_COLOR:hi,NODE_DISABLE_COLORS:ts,NO_COLOR:rs,TERM:ns}=g.env||{},is=g.stdout&&g.stdout.isTTY);var xu={enabled:!ts&&rs==null&&ns!=="dumb"&&(hi!=null&&hi!=="0"||is)};function j(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!xu.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var Ug=j(0,0),Xr=j(1,22),en=j(2,22),Fg=j(3,23),tn=j(4,24),$g=j(7,27),Vg=j(8,28),qg=j(9,29),Bg=j(30,39),ft=j(31,39),os=j(32,39),ss=j(33,39),as=j(34,39),jg=j(35,39),ls=j(36,39),Qg=j(37,39),cs=j(90,39),Hg=j(90,39),Gg=j(40,49),Jg=j(41,49),Wg=j(42,49),Kg=j(43,49),zg=j(44,49),Yg=j(45,49),Zg=j(46,49),Xg=j(47,49);c();u();p();m();d();l();var Pu=100,us=["green","yellow","blue","magenta","cyan","red"],zt=[],ps=Date.now(),Tu=0,wi=typeof g<"u"?g.env:{};globalThis.DEBUG??=wi.DEBUG??"";globalThis.DEBUG_COLORS??=wi.DEBUG_COLORS?wi.DEBUG_COLORS==="true":!0;var Yt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function vu(e){let t={color:us[Tu++%us.length],enabled:Yt.enabled(e),namespace:e,log:Yt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&zt.push([o,...n]),zt.length>Pu&&zt.shift(),Yt.enabled(o)||i){let f=n.map(A=>typeof A=="string"?A:Au(A)),w=`+${Date.now()-ps}ms`;ps=Date.now(),a(o,...f,w)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var K=new Proxy(vu,{get:(e,t)=>Yt[t],set:(e,t,r)=>Yt[t]=r});function Au(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function ms(e=7500){let t=zt.map(([r,...n])=>`${r} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(` +`);return t.lengthip,info:()=>np,log:()=>rp,query:()=>op,should:()=>Cs,tags:()=>er,warn:()=>vi});c();u();p();m();d();l();var er={error:ft("prisma:error"),warn:ss("prisma:warn"),info:ls("prisma:info"),query:as("prisma:query")},Cs={warn:()=>!g.env.PRISMA_DISABLE_WARNINGS};function rp(...e){console.log(...e)}function vi(e,...t){Cs.warn()&&console.warn(`${er.warn} ${e}`,...t)}function np(e,...t){console.info(`${er.info} ${e}`,...t)}function ip(e,...t){console.error(`${er.error} ${e}`,...t)}function op(e,...t){console.log(`${er.query} ${e}`,...t)}c();u();p();m();d();l();function Me(e,t){throw new Error(t)}c();u();p();m();d();l();c();u();p();m();d();l();function Ai({onlyFirst:e=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,e?void 0:"g")}var sp=Ai();function ht(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(sp,"")}c();u();p();m();d();l();function Ri(e,t){return Object.prototype.hasOwnProperty.call(e,t)}c();u();p();m();d();l();function pn(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}c();u();p();m();d();l();function Ci(e,t){if(e.length===0)return;let r=e[0];for(let n=1;n{Is.has(e)||(Is.add(e),vi(t,...r))};var F=class e extends Error{clientVersion;errorCode;retryable;constructor(t,r,n){super(t),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(e)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};D(F,"PrismaClientInitializationError");c();u();p();m();d();l();var X=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(t,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(t),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};D(X,"PrismaClientKnownRequestError");c();u();p();m();d();l();var ae=class extends Error{clientVersion;constructor(t,r){super(t),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};D(ae,"PrismaClientRustPanicError");c();u();p();m();d();l();var ne=class extends Error{clientVersion;batchRequestIdx;constructor(t,{clientVersion:r,batchRequestIdx:n}){super(t),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};D(ne,"PrismaClientUnknownRequestError");c();u();p();m();d();l();var ie=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(t,{clientVersion:r}){super(t),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};D(ie,"PrismaClientValidationError");c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var Ce=class{_map=new Map;get(t){return this._map.get(t)?.value}set(t,r){this._map.set(t,{value:r})}getOrCreate(t,r){let n=this._map.get(t);if(n)return n.value;let i=r();return this.set(t,i),i}};c();u();p();m();d();l();function qe(e){return e.substring(0,1).toLowerCase()+e.substring(1)}c();u();p();m();d();l();function Os(e,t){let r={};for(let n of e){let i=n[t];r[i]=n}return r}c();u();p();m();d();l();function nr(e){let t;return{get(){return t||(t={value:e()}),t.value}}}c();u();p();m();d();l();function Ds(e){return{models:Si(e.models),enums:Si(e.enums),types:Si(e.types)}}function Si(e){let t={};for(let{name:r,...n}of e)t[r]=n;return t}c();u();p();m();d();l();function wt(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function mn(e){return e.toString()!=="Invalid Date"}c();u();p();m();d();l();l();function bt(e){return v.isDecimal(e)?!0:e!==null&&typeof e=="object"&&typeof e.s=="number"&&typeof e.e=="number"&&typeof e.toFixed=="function"&&Array.isArray(e.d)}c();u();p();m();d();l();c();u();p();m();d();l();var or={};pt(or,{ModelAction:()=>ir,datamodelEnumToSchemaEnum:()=>ap});c();u();p();m();d();l();c();u();p();m();d();l();function ap(e){return{name:e.name,values:e.values.map(t=>t.name)}}c();u();p();m();d();l();var ir=(B=>(B.findUnique="findUnique",B.findUniqueOrThrow="findUniqueOrThrow",B.findFirst="findFirst",B.findFirstOrThrow="findFirstOrThrow",B.findMany="findMany",B.create="create",B.createMany="createMany",B.createManyAndReturn="createManyAndReturn",B.update="update",B.updateMany="updateMany",B.updateManyAndReturn="updateManyAndReturn",B.upsert="upsert",B.delete="delete",B.deleteMany="deleteMany",B.groupBy="groupBy",B.count="count",B.aggregate="aggregate",B.findRaw="findRaw",B.aggregateRaw="aggregateRaw",B))(ir||{});var lp=$e(Rs());var cp={red:ft,gray:cs,dim:en,bold:Xr,underline:tn,highlightSource:e=>e.highlight()},up={red:e=>e,gray:e=>e,dim:e=>e,bold:e=>e,underline:e=>e,highlightSource:e=>e};function pp({message:e,originalMethod:t,isPanic:r,callArguments:n}){return{functionName:`prisma.${t}()`,message:e,isPanic:r??!1,callArguments:n}}function mp({functionName:e,location:t,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],f=t?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${e}\``)} invocation${f}`))):a.push(s.red(`Invalid ${s.bold(`\`${e}\``)} invocation${f}`)),t&&a.push(s.underline(dp(t))),i){a.push("");let w=[i.toString()];o&&(w.push(o),w.push(s.dim(")"))),a.push(w.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function dp(e){let t=[e.fileName];return e.lineNumber&&t.push(String(e.lineNumber)),e.columnNumber&&t.push(String(e.columnNumber)),t.join(":")}function dn(e){let t=e.showColors?cp:up,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(e,t):r=pp(e),mp(r,t)}c();u();p();m();d();l();var qs=$e(Ii());c();u();p();m();d();l();function Ls(e,t,r){let n=Us(e),i=fp(n),o=yp(i);o?fn(o,t,r):t.addErrorMessage(()=>"Unknown error")}function Us(e){return e.errors.flatMap(t=>t.kind==="Union"?Us(t):[t])}function fp(e){let t=new Map,r=[];for(let n of e){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=t.get(i);o?t.set(i,{...n,argument:{...n.argument,typeNames:gp(o.argument.typeNames,n.argument.typeNames)}}):t.set(i,n)}return r.push(...t.values()),r}function gp(e,t){return[...new Set(e.concat(t))]}function yp(e){return Ci(e,(t,r)=>{let n=Ms(t),i=Ms(r);return n!==i?n-i:Ns(t)-Ns(r)})}function Ms(e){let t=0;return Array.isArray(e.selectionPath)&&(t+=e.selectionPath.length),Array.isArray(e.argumentPath)&&(t+=e.argumentPath.length),t}function Ns(e){switch(e.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}c();u();p();m();d();l();var we=class{constructor(t,r){this.name=t;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(t){let{colors:{green:r}}=t.context;t.addMarginSymbol(r(this.isRequired?"+":"?")),t.write(r(this.name)),this.isRequired||t.write(r("?")),t.write(r(": ")),typeof this.value=="string"?t.write(r(this.value)):t.write(this.value)}};c();u();p();m();d();l();c();u();p();m();d();l();$s();c();u();p();m();d();l();var Et=class{constructor(t=0,r){this.context=r;this.currentIndent=t}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(t){return typeof t=="string"?this.currentLine+=t:t.write(this),this}writeJoined(t,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(t){return this.marginSymbol=t,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let t=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+t.slice(1):t}};Fs();c();u();p();m();d();l();c();u();p();m();d();l();var gn=class{constructor(t){this.value=t}write(t){t.write(this.value)}markAsError(){this.value.markAsError()}};c();u();p();m();d();l();var yn=e=>e,hn={bold:yn,red:yn,green:yn,dim:yn,enabled:!1},Vs={bold:Xr,red:ft,green:os,dim:en,enabled:!0},xt={write(e){e.writeLine(",")}};c();u();p();m();d();l();var Se=class{constructor(t){this.contents=t}isUnderlined=!1;color=t=>t;underline(){return this.isUnderlined=!0,this}setColor(t){return this.color=t,this}write(t){let r=t.getCurrentLineLength();t.write(this.color(this.contents)),this.isUnderlined&&t.afterNextNewline(()=>{t.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};c();u();p();m();d();l();var Be=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var Pt=class extends Be{items=[];addItem(t){return this.items.push(new gn(t)),this}getField(t){return this.items[t]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(t){if(this.items.length===0){this.writeEmpty(t);return}this.writeWithItems(t)}writeEmpty(t){let r=new Se("[]");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithItems(t){let{colors:r}=t.context;t.writeLine("[").withIndent(()=>t.writeJoined(xt,this.items).newLine()).write("]"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var Tt=class e extends Be{fields={};suggestions=[];addField(t){this.fields[t.name]=t}addSuggestion(t){this.suggestions.push(t)}getField(t){return this.fields[t]}getDeepField(t){let[r,...n]=t,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof e?a=o.value.getField(s):o.value instanceof Pt&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(t){return t.length===0?this:this.getDeepField(t)?.value}hasField(t){return!!this.getField(t)}removeAllFields(){this.fields={}}removeField(t){delete this.fields[t]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(t){return this.getField(t)?.value}getDeepSubSelectionValue(t){let r=this;for(let n of t){if(!(r instanceof e))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(t){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of t){let o=n.value.getFieldValue(i);if(!o||!(o instanceof e))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let t=this.getField("select")?.value.asObject();if(t)return{kind:"select",value:t};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(t){return this.getSelectionParent()?.value.fields[t].value}getPrintWidth(){let t=Object.values(this.fields);return t.length==0?2:Math.max(...t.map(n=>n.getPrintWidth()))+2}write(t){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(t);return}this.writeWithContents(t,r)}asObject(){return this}writeEmpty(t){let r=new Se("{}");this.hasError&&r.setColor(t.context.colors.red).underline(),t.write(r)}writeWithContents(t,r){t.writeLine("{").withIndent(()=>{t.writeJoined(xt,[...r,...this.suggestions]).newLine()}),t.write("}"),this.hasError&&t.afterNextNewline(()=>{t.writeLine(t.context.colors.red("~".repeat(this.getPrintWidth())))})}};c();u();p();m();d();l();var re=class extends Be{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new Se(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};c();u();p();m();d();l();var sr=class{fields=[];addField(t,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${t}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(t){let{colors:{green:r}}=t.context;t.writeLine(r("{")).withIndent(()=>{t.writeJoined(xt,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function fn(e,t,r){switch(e.kind){case"MutuallyExclusiveFields":hp(e,t);break;case"IncludeOnScalar":wp(e,t);break;case"EmptySelection":bp(e,t,r);break;case"UnknownSelectionField":Tp(e,t);break;case"InvalidSelectionValue":vp(e,t);break;case"UnknownArgument":Ap(e,t);break;case"UnknownInputField":Rp(e,t);break;case"RequiredArgumentMissing":Cp(e,t);break;case"InvalidArgumentType":Sp(e,t);break;case"InvalidArgumentValue":Ip(e,t);break;case"ValueTooLarge":kp(e,t);break;case"SomeFieldsMissing":Op(e,t);break;case"TooManyFieldsGiven":Dp(e,t);break;case"Union":Ls(e,t,r);break;default:throw new Error("not implemented: "+e.kind)}}function hp(e,t){let r=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();r&&(r.getField(e.firstField)?.markAsError(),r.getField(e.secondField)?.markAsError()),t.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${e.firstField}\``)} or ${n.green(`\`${e.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function wp(e,t){let[r,n]=vt(e.selectionPath),i=e.outputType,o=t.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new we(s.name,"true"));t.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${ar(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function bp(e,t,r){let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){Ep(e,t,i);return}if(n.hasField("select")){xp(e,t);return}}if(r?.[qe(e.outputType.name)]){Pp(e,t);return}t.addErrorMessage(()=>`Unknown field at "${e.selectionPath.join(".")} selection"`)}function Ep(e,t,r){r.removeAllFields();for(let n of e.outputType.fields)r.addSuggestion(new we(n.name,"false"));t.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(e.outputType.name)}. At least one field must be included in the result`)}function xp(e,t){let r=e.outputType,n=t.arguments.getDeepSelectionParent(e.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),Qs(n,r)),t.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${ar(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function Pp(e,t){let r=new sr;for(let i of e.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new we("omit",r).makeRequired();if(e.selectionPath.length===0)t.arguments.addSuggestion(n);else{let[i,o]=vt(e.selectionPath),a=t.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let f=a?.value.asObject()??new Tt;f.addSuggestion(n),a.value=f}}t.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(e.outputType.name)}. At least one field must be included in the result`)}function Tp(e,t){let r=Hs(e.selectionPath,t);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":Qs(n,e.outputType);break;case"include":_p(n,e.outputType);break;case"omit":Mp(n,e.outputType);break}}t.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${e.outputType.name}\``)}.`),i.push(ar(n)),i.join(" ")})}function vp(e,t){let r=Hs(e.selectionPath,t);r.parentKind!=="unknown"&&r.field.value.markAsError(),t.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${e.underlyingError}`)}function Ap(e,t){let r=e.argumentPath[0],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Np(n,e.arguments)),t.addErrorMessage(i=>Bs(i,r,e.arguments.map(o=>o.name)))}function Rp(e,t){let[r,n]=vt(e.argumentPath),i=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(i){i.getDeepField(e.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&Gs(o,e.inputType)}t.addErrorMessage(o=>Bs(o,n,e.inputType.fields.map(s=>s.name)))}function Bs(e,t,r){let n=[`Unknown argument \`${e.red(t)}\`.`],i=Up(t,r);return i&&n.push(`Did you mean \`${e.green(i)}\`?`),r.length>0&&n.push(ar(e)),n.join(" ")}function Cp(e,t){let r;t.addErrorMessage(f=>r?.value instanceof re&&r.value.text==="null"?`Argument \`${f.green(o)}\` must not be ${f.red("null")}.`:`Argument \`${f.green(o)}\` is missing.`);let n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(!n)return;let[i,o]=vt(e.argumentPath),s=new sr,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),e.inputTypes.length===1&&e.inputTypes[0].kind==="object"){for(let f of e.inputTypes[0].fields)s.addField(f.name,f.typeNames.join(" | "));a.addSuggestion(new we(o,s).makeRequired())}else{let f=e.inputTypes.map(js).join(" | ");a.addSuggestion(new we(o,f).makeRequired())}if(e.dependentArgumentPath){n.getDeepField(e.dependentArgumentPath)?.markAsError();let[,f]=vt(e.dependentArgumentPath);t.addErrorMessage(w=>`Argument \`${w.green(o)}\` is required because argument \`${w.green(f)}\` was provided.`)}}}function js(e){return e.kind==="list"?`${js(e.elementType)}[]`:e.name}function Sp(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=wn("or",e.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(e.inferredType)}.`})}function Ip(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();n&&n.getDeepFieldValue(e.argumentPath)?.markAsError(),t.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(e.underlyingError&&o.push(`: ${e.underlyingError}`),o.push("."),e.argument.typeNames.length>0){let s=wn("or",e.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function kp(e,t){let r=e.argument.name,n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(e.argumentPath)?.value;s?.markAsError(),s instanceof re&&(i=s.text)}t.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function Op(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(e.argumentPath)?.asObject();i&&Gs(i,e.inputType)}t.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1?e.constraints.requiredFields?o.push(`${i.green("at least one of")} ${wn("or",e.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${e.constraints.minFieldCount}`)} arguments.`),o.push(ar(i)),o.join(" ")})}function Dp(e,t){let r=e.argumentPath[e.argumentPath.length-1],n=t.arguments.getDeepSubSelectionValue(e.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(e.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}t.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(e.inputType.name)} needs`];return e.constraints.minFieldCount===1&&e.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):e.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${e.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${wn("and",i.map(a=>o.red(a)))}. Please choose`),e.constraints.maxFieldCount===1?s.push("one."):s.push(`${e.constraints.maxFieldCount}.`),s.join(" ")})}function Qs(e,t){for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new we(r.name,"true"))}function _p(e,t){for(let r of t.fields)r.isRelation&&!e.hasField(r.name)&&e.addSuggestion(new we(r.name,"true"))}function Mp(e,t){for(let r of t.fields)!e.hasField(r.name)&&!r.isRelation&&e.addSuggestion(new we(r.name,"true"))}function Np(e,t){for(let r of t)e.hasField(r.name)||e.addSuggestion(new we(r.name,r.typeNames.join(" | ")))}function Hs(e,t){let[r,n]=vt(e),i=t.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),f=o?.getField(n);return o&&f?{parentKind:"select",parent:o,field:f,fieldName:n}:(f=s?.getField(n),s&&f?{parentKind:"include",field:f,parent:s,fieldName:n}:(f=a?.getField(n),a&&f?{parentKind:"omit",field:f,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function Gs(e,t){if(t.kind==="object")for(let r of t.fields)e.hasField(r.name)||e.addSuggestion(new we(r.name,r.typeNames.join(" | ")))}function vt(e){let t=[...e],r=t.pop();if(!r)throw new Error("unexpected empty path");return[t,r]}function ar({green:e,enabled:t}){return"Available options are "+(t?`listed in ${e("green")}`:"marked with ?")+"."}function wn(e,t){if(t.length===1)return t[0];let r=[...t],n=r.pop();return`${r.join(", ")} ${e} ${n}`}var Lp=3;function Up(e,t){let r=1/0,n;for(let i of t){let o=(0,qs.default)(e,i);o>Lp||o`}};function At(e){return e instanceof lr}c();u();p();m();d();l();var bn=Symbol(),Oi=new WeakMap,Ne=class{constructor(t){t===bn?Oi.set(this,`Prisma.${this._getName()}`):Oi.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return Oi.get(this)}},cr=class extends Ne{_getNamespace(){return"NullTypes"}},ur=class extends cr{#t};Di(ur,"DbNull");var pr=class extends cr{#t};Di(pr,"JsonNull");var mr=class extends cr{#t};Di(mr,"AnyNull");var En={classes:{DbNull:ur,JsonNull:pr,AnyNull:mr},instances:{DbNull:new ur(bn),JsonNull:new pr(bn),AnyNull:new mr(bn)}};function Di(e,t){Object.defineProperty(e,"name",{value:t,configurable:!0})}c();u();p();m();d();l();var Js=": ",xn=class{constructor(t,r){this.name=t;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+Js.length}write(t){let r=new Se(this.name);this.hasError&&r.underline().setColor(t.context.colors.red),t.write(r).write(Js).write(this.value)}};var _i=class{arguments;errorMessages=[];constructor(t){this.arguments=t}write(t){t.write(this.arguments)}addErrorMessage(t){this.errorMessages.push(t)}renderAllMessages(t){return this.errorMessages.map(r=>r(t)).join(` +`)}};function Rt(e){return new _i(Ws(e))}function Ws(e){let t=new Tt;for(let[r,n]of Object.entries(e)){let i=new xn(r,Ks(n));t.addField(i)}return t}function Ks(e){if(typeof e=="string")return new re(JSON.stringify(e));if(typeof e=="number"||typeof e=="boolean")return new re(String(e));if(typeof e=="bigint")return new re(`${e}n`);if(e===null)return new re("null");if(e===void 0)return new re("undefined");if(bt(e))return new re(`new Prisma.Decimal("${e.toFixed()}")`);if(e instanceof Uint8Array)return y.isBuffer(e)?new re(`Buffer.alloc(${e.byteLength})`):new re(`new Uint8Array(${e.byteLength})`);if(e instanceof Date){let t=mn(e)?e.toISOString():"Invalid Date";return new re(`new Date("${t}")`)}return e instanceof Ne?new re(`Prisma.${e._getName()}`):At(e)?new re(`prisma.${qe(e.modelName)}.$fields.${e.name}`):Array.isArray(e)?Fp(e):typeof e=="object"?Ws(e):new re(Object.prototype.toString.call(e))}function Fp(e){let t=new Pt;for(let r of e)t.addItem(Ks(r));return t}function Pn(e,t){let r=t==="pretty"?Vs:hn,n=e.renderAllMessages(r),i=new Et(0,{colors:r}).write(e).toString();return{message:n,args:i}}function Tn({args:e,errors:t,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=Rt(e);for(let R of t)fn(R,a,s);let{message:f,args:w}=Pn(a,r),A=dn({message:f,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:w});throw new ie(A,{clientVersion:o})}c();u();p();m();d();l();c();u();p();m();d();l();function Ie(e){return e.replace(/^./,t=>t.toLowerCase())}c();u();p();m();d();l();function Ys(e,t,r){let n=Ie(r);return!t.result||!(t.result.$allModels||t.result[n])?e:$p({...e,...zs(t.name,e,t.result.$allModels),...zs(t.name,e,t.result[n])})}function $p(e){let t=new Ce,r=(n,i)=>t.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),e[n]?e[n].needs.flatMap(o=>r(o,i)):[n]));return pn(e,n=>({...n,needs:r(n.name,new Set)}))}function zs(e,t,r){return r?pn(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:Vp(t,o,i)})):{}}function Vp(e,t,r){let n=e?.[t]?.compute;return n?i=>r({...i,[t]:n(i)}):r}function Zs(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(e[n.name])for(let i of n.needs)r[i]=!0;return r}function Xs(e,t){if(!t)return e;let r={...e};for(let n of Object.values(t))if(!e[n.name])for(let i of n.needs)delete r[i];return r}var vn=class{constructor(t,r){this.extension=t;this.previous=r}computedFieldsCache=new Ce;modelExtensionsCache=new Ce;queryCallbacksCache=new Ce;clientExtensions=nr(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=nr(()=>{let t=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?t.concat(r):t});getAllComputedFields(t){return this.computedFieldsCache.getOrCreate(t,()=>Ys(this.previous?.getAllComputedFields(t),this.extension,t))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(t){return this.modelExtensionsCache.getOrCreate(t,()=>{let r=Ie(t);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(t):{...this.previous?.getAllModelExtensions(t),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(t,r){return this.queryCallbacksCache.getOrCreate(`${t}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(t,r)??[],i=[],o=this.extension.query;return!o||!(o[t]||o.$allModels||o[r]||o.$allOperations)?n:(o[t]!==void 0&&(o[t][r]!==void 0&&i.push(o[t][r]),o[t].$allOperations!==void 0&&i.push(o[t].$allOperations)),t!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},Ct=class e{constructor(t){this.head=t}static empty(){return new e}static single(t){return new e(new vn(t))}isEmpty(){return this.head===void 0}append(t){return new e(new vn(t,this.head))}getAllComputedFields(t){return this.head?.getAllComputedFields(t)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(t){return this.head?.getAllModelExtensions(t)}getAllQueryCallbacks(t,r){return this.head?.getAllQueryCallbacks(t,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};c();u();p();m();d();l();var An=class{constructor(t){this.name=t}};function ea(e){return e instanceof An}function ta(e){return new An(e)}c();u();p();m();d();l();c();u();p();m();d();l();var ra=Symbol(),dr=class{constructor(t){if(t!==ra)throw new Error("Skip instance can not be constructed directly")}ifUndefined(t){return t===void 0?Rn:t}},Rn=new dr(ra);function ke(e){return e instanceof dr}var qp={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},na="explicitly `undefined` values are not allowed";function Cn({modelName:e,action:t,args:r,runtimeDataModel:n,extensions:i=Ct.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:f,previewFeatures:w,globalOmit:A}){let R=new Mi({runtimeDataModel:n,modelName:e,action:t,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:f,previewFeatures:w,globalOmit:A});return{modelName:e,action:qp[t],query:fr(r,R)}}function fr({select:e,include:t,...r}={},n){let i=r.omit;return delete r.omit,{arguments:oa(r,n),selection:Bp(e,t,i,n)}}function Bp(e,t,r,n){return e?(t?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),Gp(e,n)):jp(n,t,r)}function jp(e,t,r){let n={};return e.modelOrType&&!e.isRawAction()&&(n.$composites=!0,n.$scalars=!0),t&&Qp(n,t,e),Hp(n,r,e),n}function Qp(e,t,r){for(let[n,i]of Object.entries(t)){if(ke(i))continue;let o=r.nestSelection(n);if(Ni(i,o),i===!1||i===void 0){e[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){e[n]=fr(i===!0?{}:i,o);continue}if(i===!0){e[n]=!0;continue}e[n]=fr(i,o)}}function Hp(e,t,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...t},o=Xs(i,n);for(let[s,a]of Object.entries(o)){if(ke(a))continue;Ni(a,r.nestSelection(s));let f=r.findField(s);n?.[s]&&!f||(e[s]=!a)}}function Gp(e,t){let r={},n=t.getComputedFields(),i=Zs(e,n);for(let[o,s]of Object.entries(i)){if(ke(s))continue;let a=t.nestSelection(o);Ni(s,a);let f=t.findField(o);if(!(n?.[o]&&!f)){if(s===!1||s===void 0||ke(s)){r[o]=!1;continue}if(s===!0){f?.kind==="object"?r[o]=fr({},a):r[o]=!0;continue}r[o]=fr(s,a)}}return r}function ia(e,t){if(e===null)return null;if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e;if(typeof e=="bigint")return{$type:"BigInt",value:String(e)};if(wt(e)){if(mn(e))return{$type:"DateTime",value:e.toISOString()};t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(ea(e))return{$type:"Param",value:e.name};if(At(e))return{$type:"FieldRef",value:{_ref:e.name,_container:e.modelName}};if(Array.isArray(e))return Jp(e,t);if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{$type:"Bytes",value:y.from(r,n,i).toString("base64")}}if(Wp(e))return e.values;if(bt(e))return{$type:"Decimal",value:e.toFixed()};if(e instanceof Ne){if(e!==En.instances[e._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:e._getName()}}if(Kp(e))return e.toJSON();if(typeof e=="object")return oa(e,t);t.throwValidationError({kind:"InvalidArgumentValue",selectionPath:t.getSelectionPath(),argumentPath:t.getArgumentPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(e)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function oa(e,t){if(e.$type)return{$type:"Raw",value:e};let r={};for(let n in e){let i=e[n],o=t.nestArgument(n);ke(i)||(i!==void 0?r[n]=ia(i,o):t.isPreviewFeatureOn("strictUndefinedChecks")&&t.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:t.getSelectionPath(),argument:{name:t.getArgumentName(),typeNames:[]},underlyingError:na}))}return r}function Jp(e,t){let r=[];for(let n=0;n({name:t.name,typeName:"boolean",isRelation:t.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(t){return this.params.previewFeatures.includes(t)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(t){return this.modelOrType?.fields.find(r=>r.name===t)}nestSelection(t){let r=this.findField(t),n=r?.kind==="object"?r.type:void 0;return new e({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(t)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[qe(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Me(this.params.action,"Unknown action")}}nestArgument(t){return new e({...this.params,argumentPath:this.params.argumentPath.concat(t)})}};c();u();p();m();d();l();function sa(e){if(!e._hasPreviewFlag("metrics"))throw new ie("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:e._clientVersion})}var St=class{_client;constructor(t){this._client=t}prometheus(t){return sa(this._client),this._client._engine.metrics({format:"prometheus",...t})}json(t){return sa(this._client),this._client._engine.metrics({format:"json",...t})}};c();u();p();m();d();l();function aa(e,t){let r=nr(()=>zp(t));Object.defineProperty(e,"dmmf",{get:()=>r.get()})}function zp(e){throw new Error("Prisma.dmmf is not available when running in edge runtimes.")}function Li(e){return Object.entries(e).map(([t,r])=>({name:t,...r}))}c();u();p();m();d();l();var Ui=new WeakMap,Sn="$$PrismaTypedSql",gr=class{constructor(t,r){Ui.set(this,{sql:t,values:r}),Object.defineProperty(this,Sn,{value:Sn})}get sql(){return Ui.get(this).sql}get values(){return Ui.get(this).values}};function la(e){return(...t)=>new gr(e,t)}function In(e){return e!=null&&e[Sn]===Sn}c();u();p();m();d();l();var eu=$e(Pi());c();u();p();m();d();l();ca();gs();xs();c();u();p();m();d();l();var fe=class e{constructor(t,r){if(t.length-1!==r.length)throw t.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${t.length} strings to have ${t.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof e?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=t[0];let i=0,o=0;for(;ie.getPropertyValue(r))},getPropertyDescriptor(r){return e.getPropertyDescriptor?.(r)}}}c();u();p();m();d();l();c();u();p();m();d();l();var On={enumerable:!0,configurable:!0,writable:!0};function Dn(e){let t=new Set(e);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>On,has:(r,n)=>t.has(n),set:(r,n,i)=>t.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...t]}}var ma=Symbol.for("nodejs.util.inspect.custom");function Pe(e,t){let r=Yp(t),n=new Set,i=new Proxy(e,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=da(Reflect.ownKeys(o),r),a=da(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let f=r.get(s);return f?f.getPropertyDescriptor?{...On,...f?.getPropertyDescriptor(s)}:On:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[ma]=function(){let o={...this};return delete o[ma],o},i}function Yp(e){let t=new Map;for(let r of e){let n=r.getKeys();for(let i of n)t.set(i,r)}return t}function da(e,t){return e.filter(r=>t.get(r)?.has?.(r)??!0)}c();u();p();m();d();l();function It(e){return{getKeys(){return e},has(){return!1},getPropertyValue(){}}}c();u();p();m();d();l();function kt(e,t){return{batch:e,transaction:t?.kind==="batch"?{isolationLevel:t.options.isolationLevel}:void 0}}c();u();p();m();d();l();function fa(e){if(e===void 0)return"";let t=Rt(e);return new Et(0,{colors:hn}).write(t).toString()}c();u();p();m();d();l();var Zp="P2037";function _n({error:e,user_facing_error:t},r,n){return t.error_code?new X(Xp(t,n),{code:t.error_code,clientVersion:r,meta:t.meta,batchRequestIdx:t.batch_request_idx}):new ne(e,{clientVersion:r,batchRequestIdx:t.batch_request_idx})}function Xp(e,t){let r=e.message;return(t==="postgresql"||t==="postgres"||t==="mysql")&&e.error_code===Zp&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var Vi=class{getLocation(){return null}};function je(e){return typeof $EnabledCallSite=="function"&&e!=="minimal"?new $EnabledCallSite:new Vi}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var ga={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function Ot(e={}){let t=tm(e);return Object.entries(t).reduce((n,[i,o])=>(ga[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function tm(e={}){return typeof e._count=="boolean"?{...e,_count:{_all:e._count}}:e}function Mn(e={}){return t=>(typeof e._count=="boolean"&&(t._count=t._count._all),t)}function ya(e,t){let r=Mn(e);return t({action:"aggregate",unpacker:r,argsMapper:Ot})(e)}c();u();p();m();d();l();function rm(e={}){let{select:t,...r}=e;return typeof t=="object"?Ot({...r,_count:t}):Ot({...r,_count:{_all:!0}})}function nm(e={}){return typeof e.select=="object"?t=>Mn(e)(t)._count:t=>Mn(e)(t)._count._all}function ha(e,t){return t({action:"count",unpacker:nm(e),argsMapper:rm})(e)}c();u();p();m();d();l();function im(e={}){let t=Ot(e);if(Array.isArray(t.by))for(let r of t.by)typeof r=="string"&&(t.select[r]=!0);else typeof t.by=="string"&&(t.select[t.by]=!0);return t}function om(e={}){return t=>(typeof e?._count=="boolean"&&t.forEach(r=>{r._count=r._count._all}),t)}function wa(e,t){return t({action:"groupBy",unpacker:om(e),argsMapper:im})(e)}function ba(e,t,r){if(t==="aggregate")return n=>ya(n,r);if(t==="count")return n=>ha(n,r);if(t==="groupBy")return n=>wa(n,r)}c();u();p();m();d();l();function Ea(e,t){let r=t.fields.filter(i=>!i.relationName),n=Os(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new lr(e,o,s.type,s.isList,s.kind==="enum")},...Dn(Object.keys(n))})}c();u();p();m();d();l();c();u();p();m();d();l();var xa=e=>Array.isArray(e)?e:e.split("."),qi=(e,t)=>xa(t).reduce((r,n)=>r&&r[n],e),Pa=(e,t,r)=>xa(t).reduceRight((n,i,o,s)=>Object.assign({},qi(e,s.slice(0,o)),{[i]:n}),r);function sm(e,t){return e===void 0||t===void 0?[]:[...t,"select",e]}function am(e,t,r){return t===void 0?e??{}:Pa(t,r,e||!0)}function Bi(e,t,r,n,i,o){let a=e._runtimeDataModel.models[t].fields.reduce((f,w)=>({...f,[w.name]:w}),{});return f=>{let w=je(e._errorFormat),A=sm(n,i),R=am(f,o,A),S=r({dataPath:A,callsite:w})(R),C=lm(e,t);return new Proxy(S,{get(L,k){if(!C.includes(k))return L[k];let De=[a[k].type,r,k],ue=[A,R];return Bi(e,...De,...ue)},...Dn([...C,...Object.getOwnPropertyNames(S)])})}}function lm(e,t){return e._runtimeDataModel.models[t].fields.filter(r=>r.kind==="object").map(r=>r.name)}var cm=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],um=["aggregate","count","groupBy"];function ji(e,t){let r=e._extensions.getAllModelExtensions(t)??{},n=[pm(e,t),dm(e,t),yr(r),le("name",()=>t),le("$name",()=>t),le("$parent",()=>e._appliedParent)];return Pe({},n)}function pm(e,t){let r=Ie(t),n=Object.keys(ir).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>f=>{let w=je(e._errorFormat);return e._createPrismaPromise(A=>{let R={args:f,dataPath:[],action:o,model:t,clientMethod:`${r}.${i}`,jsModelName:r,transaction:A,callsite:w};return e._request({...R,...a})},{action:o,args:f,model:t})};return cm.includes(o)?Bi(e,t,s):mm(i)?ba(e,i,s):s({})}}}function mm(e){return um.includes(e)}function dm(e,t){return et(le("fields",()=>{let r=e._runtimeDataModel.models[t];return Ea(t,r)}))}c();u();p();m();d();l();function Ta(e){return e.replace(/^./,t=>t.toUpperCase())}var Qi=Symbol();function hr(e){let t=[fm(e),gm(e),le(Qi,()=>e),le("$parent",()=>e._appliedParent)],r=e._extensions.getAllClientExtensions();return r&&t.push(yr(r)),Pe(e,t)}function fm(e){let t=Object.getPrototypeOf(e._originalClient),r=[...new Set(Object.getOwnPropertyNames(t))];return{getKeys(){return r},getPropertyValue(n){return e[n]}}}function gm(e){let t=Object.keys(e._runtimeDataModel.models),r=t.map(Ie),n=[...new Set(t.concat(r))];return et({getKeys(){return n},getPropertyValue(i){let o=Ta(i);if(e._runtimeDataModel.models[o]!==void 0)return ji(e,o);if(e._runtimeDataModel.models[i]!==void 0)return ji(e,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function va(e){return e[Qi]?e[Qi]:e}function Aa(e){if(typeof e=="function")return e(this);if(e.client?.__AccelerateEngine){let r=e.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let t=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(e)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return hr(t)}c();u();p();m();d();l();c();u();p();m();d();l();function Ra({result:e,modelName:t,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(t);if(!o)return e;let s=[],a=[];for(let f of Object.values(o)){if(n){if(n[f.name])continue;let w=f.needs.filter(A=>n[A]);w.length>0&&a.push(It(w))}else if(r){if(!r[f.name])continue;let w=f.needs.filter(A=>!r[A]);w.length>0&&a.push(It(w))}ym(e,f.needs)&&s.push(hm(f,Pe(e,s)))}return s.length>0||a.length>0?Pe(e,[...s,...a]):e}function ym(e,t){return t.every(r=>Ri(e,r))}function hm(e,t){return et(le(e.name,()=>e.compute(t)))}c();u();p();m();d();l();function Nn({visitor:e,result:t,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(t)){for(let s=0;sA.name===o);if(!f||f.kind!=="object"||!f.relationName)continue;let w=typeof s=="object"?s:{};t[o]=Nn({visitor:i,result:t[o],args:w,modelName:f.type,runtimeDataModel:n})}}function Sa({result:e,modelName:t,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||e==null||typeof e!="object"||!i.models[t]?e:Nn({result:e,args:r??{},modelName:t,runtimeDataModel:i,visitor:(a,f,w)=>{let A=Ie(f);return Ra({result:a,modelName:A,select:w.select,omit:w.select?void 0:{...o?.[A],...w.omit},extensions:n})}})}c();u();p();m();d();l();c();u();p();m();d();l();l();c();u();p();m();d();l();var wm=["$connect","$disconnect","$on","$transaction","$extends"],Ia=wm;function ka(e){if(e instanceof fe)return bm(e);if(In(e))return Em(e);if(Array.isArray(e)){let r=[e[0]];for(let n=1;n{let o=t.customDataProxyFetch;return"transaction"in t&&i!==void 0&&(t.transaction?.kind==="batch"&&t.transaction.lock.then(),t.transaction=i),n===r.length?e._executeRequest(t):r[n]({model:t.model,operation:t.model?t.action:t.clientMethod,args:ka(t.args??{}),__internalParams:t,query:(s,a=t)=>{let f=a.customDataProxyFetch;return a.customDataProxyFetch=La(o,f),a.args=s,Da(e,a,r,n+1)}})})}function _a(e,t){let{jsModelName:r,action:n,clientMethod:i}=t,o=r?n:i;if(e._extensions.isEmpty())return e._executeRequest(t);let s=e._extensions.getAllQueryCallbacks(r??"$none",o);return Da(e,t,s)}function Ma(e){return t=>{let r={requests:t},n=t[0].extensions.getAllBatchQueryCallbacks();return n.length?Na(r,n,0,e):e(r)}}function Na(e,t,r,n){if(r===t.length)return n(e);let i=e.customDataProxyFetch,o=e.requests[0].transaction;return t[r]({args:{queries:e.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:e,query(s,a=e){let f=a.customDataProxyFetch;return a.customDataProxyFetch=La(i,f),Na(a,t,r+1,n)}})}var Oa=e=>e;function La(e=Oa,t=Oa){return r=>e(t(r))}c();u();p();m();d();l();var Ua=K("prisma:client"),Fa={Vercel:"vercel","Netlify CI":"netlify"};function $a({postinstall:e,ciName:t,clientVersion:r,generator:n}){if(Ua("checkPlatformCaching:postinstall",e),Ua("checkPlatformCaching:ciName",t),e===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&t&&t in Fa){let i=`Prisma has detected that this project was built on ${t}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + +Learn how: https://pris.ly/d/${Fa[t]}-build`;throw console.error(i),new F(i,r)}}c();u();p();m();d();l();function Va(e,t){return e?e.datasources?e.datasources:e.datasourceUrl?{[t[0]]:{url:e.datasourceUrl}}:{}:{}}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();function qa(e){return e?e.replace(/".*"/g,'"X"').replace(/[\s:\[]([+-]?([0-9]*[.])?[0-9]+)/g,t=>`${t[0]}5`):""}c();u();p();m();d();l();function Ba(e){return e.split(` +`).map(t=>t.replace(/^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)\s*/,"").replace(/\+\d+\s*ms$/,"")).join(` +`)}c();u();p();m();d();l();var ja=$e(Ss());function Qa({title:e,user:t="prisma",repo:r="prisma",template:n="bug_report.yml",body:i}){return(0,ja.default)({user:t,repo:r,template:n,title:e,body:i})}function Ha({version:e,binaryTarget:t,title:r,description:n,engineVersion:i,database:o,query:s}){let a=ms(6e3-(s?.length??0)),f=Ba(ht(a)),w=n?`# Description +\`\`\` +${n} +\`\`\``:"",A=ht(`Hi Prisma Team! My Prisma Client just crashed. This is the report: +## Versions + +| Name | Version | +|-----------------|--------------------| +| Node | ${g.version?.padEnd(19)}| +| OS | ${t?.padEnd(19)}| +| Prisma Client | ${e?.padEnd(19)}| +| Query Engine | ${i?.padEnd(19)}| +| Database | ${o?.padEnd(19)}| + +${w} + +## Logs +\`\`\` +${f} +\`\`\` + +## Client Snippet +\`\`\`ts +// PLEASE FILL YOUR CODE SNIPPET HERE +\`\`\` + +## Schema +\`\`\`prisma +// PLEASE ADD YOUR SCHEMA HERE IF POSSIBLE +\`\`\` + +## Prisma Engine Query +\`\`\` +${s?qa(s):""} +\`\`\` +`),R=Qa({title:r,body:A});return`${r} + +This is a non-recoverable error which probably happens when the Prisma Query Engine has a panic. + +${tn(R)} + +If you want the Prisma team to look into it, please open the link above \u{1F64F} +To increase the chance of success, please post your schema and a snippet of +how you used Prisma Client in the issue. +`}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();l();c();u();p();m();d();l();l();function $(e,t){throw new Error(t)}function Hi(e,t){return e===t||e!==null&&t!==null&&typeof e=="object"&&typeof t=="object"&&Object.keys(e).length===Object.keys(t).length&&Object.keys(e).every(r=>Hi(e[r],t[r]))}function Dt(e,t){let r=Object.keys(e),n=Object.keys(t);return(r.length{if(typeof e[o]==typeof t[o]&&typeof e[o]!="object")return e[o]===t[o];if(se.isDecimal(e[o])||se.isDecimal(t[o])){let s=Ga(e[o]),a=Ga(t[o]);return s&&a&&s.equals(a)}else if(e[o]instanceof Uint8Array||t[o]instanceof Uint8Array){let s=Ja(e[o]),a=Ja(t[o]);return s&&a&&s.equals(a)}else{if(e[o]instanceof Date||t[o]instanceof Date)return Wa(e[o])?.getTime()===Wa(t[o])?.getTime();if(typeof e[o]=="bigint"||typeof t[o]=="bigint")return Ka(e[o])===Ka(t[o]);if(typeof e[o]=="number"||typeof t[o]=="number")return za(e[o])===za(t[o])}return Hi(e[o],t[o])})}function Ga(e){return se.isDecimal(e)?e:typeof e=="number"||typeof e=="string"?new se(e):void 0}function Ja(e){return y.isBuffer(e)?e:e instanceof Uint8Array?y.from(e.buffer,e.byteOffset,e.byteLength):typeof e=="string"?y.from(e,"base64"):void 0}function Wa(e){return e instanceof Date?e:typeof e=="string"||typeof e=="number"?new Date(e):void 0}function Ka(e){return typeof e=="bigint"?e:typeof e=="number"||typeof e=="string"?BigInt(e):void 0}function za(e){return typeof e=="number"?e:typeof e=="string"?Number(e):void 0}function br(e){return JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():ArrayBuffer.isView(r)?y.from(r.buffer,r.byteOffset,r.byteLength).toString("base64"):r)}function xm(e){return e!==null&&typeof e=="object"&&typeof e.$type=="string"}function Pm(e,t){let r={};for(let n of Object.keys(e))r[n]=t(e[n],n);return r}function Qe(e){return e===null?e:Array.isArray(e)?e.map(Qe):typeof e=="object"?xm(e)?Tm(e):e.constructor!==null&&e.constructor.name!=="Object"?e:Pm(e,Qe):e}function Tm({$type:e,value:t}){switch(e){case"BigInt":return BigInt(t);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=y.from(t,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(t);case"Decimal":return new v(t);case"Json":return JSON.parse(t);default:$(t,"Unknown tagged value")}}c();u();p();m();d();l();var ce=class extends Error{name="UserFacingError";code;meta;constructor(t,r,n){super(t),this.code=r,this.meta=n??{}}toQueryResponseErrorObject(){return{error:this.message,user_facing_error:{is_panic:!1,message:this.message,meta:this.meta,error_code:this.code}}}};function _t(e){if(!nn(e))throw e;let t=vm(e),r=Ya(e);throw!t||!r?e:new ce(r,t,{driverAdapterError:e})}function Ji(e){throw nn(e)?new ce(`Raw query failed. Code: \`${e.cause.originalCode??"N/A"}\`. Message: \`${e.cause.originalMessage??Ya(e)}\``,"P2010",{driverAdapterError:e}):e}function vm(e){switch(e.cause.kind){case"AuthenticationFailed":return"P1000";case"DatabaseNotReachable":return"P1001";case"DatabaseDoesNotExist":return"P1003";case"SocketTimeout":return"P1008";case"DatabaseAlreadyExists":return"P1009";case"DatabaseAccessDenied":return"P1010";case"TlsConnectionError":return"P1011";case"ConnectionClosed":return"P1017";case"TransactionAlreadyClosed":return"P1018";case"LengthMismatch":return"P2000";case"UniqueConstraintViolation":return"P2002";case"ForeignKeyConstraintViolation":return"P2003";case"UnsupportedNativeDataType":return"P2010";case"NullConstraintViolation":return"P2011";case"ValueOutOfRange":return"P2020";case"TableDoesNotExist":return"P2021";case"ColumnNotFound":return"P2022";case"InvalidIsolationLevel":case"InconsistentColumnData":return"P2023";case"MissingFullTextSearchIndex":return"P2030";case"TransactionWriteConflict":return"P2034";case"GenericJs":return"P2036";case"TooManyConnections":return"P2037";case"postgres":case"sqlite":case"mysql":case"mssql":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Ya(e){switch(e.cause.kind){case"AuthenticationFailed":return`Authentication failed against the database server, the provided database credentials for \`${e.cause.user??"(not available)"}\` are not valid`;case"DatabaseNotReachable":{let t=e.cause.host&&e.cause.port?`${e.cause.host}:${e.cause.port}`:e.cause.host;return`Can't reach database server${t?` at ${t}`:""}`}case"DatabaseDoesNotExist":return`Database \`${e.cause.db??"(not available)"}\` does not exist on the database server`;case"SocketTimeout":return"Operation has timed out";case"DatabaseAlreadyExists":return`Database \`${e.cause.db??"(not available)"}\` already exists on the database server`;case"DatabaseAccessDenied":return`User was denied access on the database \`${e.cause.db??"(not available)"}\``;case"TlsConnectionError":return`Error opening a TLS connection: ${e.cause.reason}`;case"ConnectionClosed":return"Server has closed the connection.";case"TransactionAlreadyClosed":return e.cause.cause;case"LengthMismatch":return`The provided value for the column is too long for the column's type. Column: ${e.cause.column??"(not available)"}`;case"UniqueConstraintViolation":return`Unique constraint failed on the ${Gi(e.cause.constraint)}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${Gi(e.cause.constraint)}`;case"UnsupportedNativeDataType":return`Failed to deserialize column of type '${e.cause.type}'. If you're using $queryRaw and this column is explicitly marked as \`Unsupported\` in your Prisma schema, try casting this column to any supported Prisma type such as \`String\`.`;case"NullConstraintViolation":return`Null constraint violation on the ${Gi(e.cause.constraint)}`;case"ValueOutOfRange":return`Value out of range for the type: ${e.cause.cause}`;case"TableDoesNotExist":return`The table \`${e.cause.table??"(not available)"}\` does not exist in the current database.`;case"ColumnNotFound":return`The column \`${e.cause.column??"(not available)"}\` does not exist in the current database.`;case"InvalidIsolationLevel":return`Error in connector: Conversion error: ${e.cause.level}`;case"InconsistentColumnData":return`Inconsistent column data: ${e.cause.cause}`;case"MissingFullTextSearchIndex":return"Cannot find a fulltext index to use for the native search, try adding a @@fulltext([Fields...]) to your schema";case"TransactionWriteConflict":return"Transaction failed due to a write conflict or a deadlock. Please retry your transaction";case"GenericJs":return`Error in external connector (id ${e.cause.id})`;case"TooManyConnections":return`Too many database connections opened: ${e.cause.cause}`;case"sqlite":case"postgres":case"mysql":case"mssql":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Gi(e){return e&&"fields"in e?`fields: (${e.fields.map(t=>`\`${t}\``).join(", ")})`:e&&"index"in e?`constraint: \`${e.index}\``:e&&"foreignKey"in e?"foreign key":"(not available)"}function Za(e,t){let r=e.map(i=>t.keys.reduce((o,s)=>(o[s]=Qe(i[s]),o),{})),n=new Set(t.nestedSelection);return t.arguments.map(i=>{let o=r.findIndex(s=>Dt(s,i));if(o===-1)return t.expectNonEmpty?new ce("An operation failed because it depends on one or more records that were required but not found","P2025"):null;{let s=Object.entries(e[o]).filter(([a])=>n.has(a));return Object.fromEntries(s)}})}c();u();p();m();d();l();l();var G=class extends Error{name="DataMapperError"};function el(e,t,r){switch(t.type){case"affectedRows":if(typeof e!="number")throw new G(`Expected an affected rows count, got: ${typeof e} (${e})`);return{count:e};case"object":return Ki(e,t.fields,r,t.skipNulls);case"field":return Wi(e,"",t.fieldType,r);default:$(t,`Invalid data mapping type: '${t.type}'`)}}function Ki(e,t,r,n){if(e===null)return null;if(Array.isArray(e)){let i=e;return n&&(i=i.filter(o=>o!==null)),i.map(o=>Xa(o,t,r))}if(typeof e=="object")return Xa(e,t,r);if(typeof e=="string"){let i;try{i=JSON.parse(e)}catch(o){throw new G("Expected an array or object, got a string that is not valid JSON",{cause:o})}return Ki(i,t,r,n)}throw new G(`Expected an array or an object, got: ${typeof e}`)}function Xa(e,t,r){if(typeof e!="object")throw new G(`Expected an object, but got '${typeof e}'`);let n={};for(let[i,o]of Object.entries(t))switch(o.type){case"affectedRows":throw new G(`Unexpected 'AffectedRows' node in data mapping for field '${i}'`);case"object":{if(o.serializedName!==null&&!Object.hasOwn(e,o.serializedName))throw new G(`Missing data field (Object): '${i}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`);let s=o.serializedName!==null?e[o.serializedName]:e;n[i]=Ki(s,o.fields,r,o.skipNulls);break}case"field":{let s=o.dbName;if(Object.hasOwn(e,s))n[i]=Am(e[s],s,o.fieldType,r);else throw new G(`Missing data field (Value): '${s}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`)}break;default:$(o,`DataMapper: Invalid data mapping node type: '${o.type}'`)}return n}function Am(e,t,r,n){return e===null?r.arity==="list"?[]:null:r.arity==="list"?e.map((o,s)=>Wi(o,`${t}[${s}]`,r,n)):Wi(e,t,r,n)}function Wi(e,t,r,n){switch(r.type){case"unsupported":return e;case"string":{if(typeof e!="string")throw new G(`Expected a string in column '${t}', got ${typeof e}: ${e}`);return e}case"int":switch(typeof e){case"number":return Math.trunc(e);case"string":{let i=Math.trunc(Number(e));if(Number.isNaN(i)||!Number.isFinite(i))throw new G(`Expected an integer in column '${t}', got string: ${e}`);if(!Number.isSafeInteger(i))throw new G(`Integer value in column '${t}' is too large to represent as a JavaScript number without loss of precision, got: ${e}. Consider using BigInt type.`);return i}default:throw new G(`Expected an integer in column '${t}', got ${typeof e}: ${e}`)}case"bigint":{if(typeof e!="number"&&typeof e!="string")throw new G(`Expected a bigint in column '${t}', got ${typeof e}: ${e}`);return{$type:"BigInt",value:e}}case"float":{if(typeof e=="number")return e;if(typeof e=="string"){let i=Number(e);if(Number.isNaN(i)&&!/^[-+]?nan$/.test(e.toLowerCase()))throw new G(`Expected a float in column '${t}', got string: ${e}`);return i}throw new G(`Expected a float in column '${t}', got ${typeof e}: ${e}`)}case"boolean":{if(typeof e=="boolean")return e;if(typeof e=="number")return e===1;if(typeof e=="string"){if(e==="true"||e==="TRUE"||e==="1")return!0;if(e==="false"||e==="FALSE"||e==="0")return!1;throw new G(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}if(Array.isArray(e)){for(let i of e)if(i!==0)return!0;return!1}throw new G(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}case"decimal":if(typeof e!="number"&&typeof e!="string"&&!se.isDecimal(e))throw new G(`Expected a decimal in column '${t}', got ${typeof e}: ${e}`);return{$type:"Decimal",value:e};case"datetime":{if(typeof e=="string")return{$type:"DateTime",value:Cm(e)};if(typeof e=="number"||e instanceof Date)return{$type:"DateTime",value:e};throw new G(`Expected a date in column '${t}', got ${typeof e}: ${e}`)}case"object":return{$type:"Json",value:br(e)};case"json":return{$type:"Json",value:`${e}`};case"bytes":{switch(r.encoding){case"base64":if(typeof e!="string")throw new G(`Expected a base64-encoded byte array in column '${t}', got ${typeof e}: ${e}`);return{$type:"Bytes",value:e};case"hex":if(typeof e!="string"||!e.startsWith("\\x"))throw new G(`Expected a hex-encoded byte array in column '${t}', got ${typeof e}: ${e}`);return{$type:"Bytes",value:y.from(e.slice(2),"hex").toString("base64")};case"array":if(Array.isArray(e))return{$type:"Bytes",value:y.from(e).toString("base64")};if(e instanceof Uint8Array)return{$type:"Bytes",value:y.from(e).toString("base64")};throw new G(`Expected a byte array in column '${t}', got ${typeof e}: ${e}`);default:$(r.encoding,`DataMapper: Unknown bytes encoding: ${r.encoding}`)}break}case"enum":{let i=n[r.name];if(i===void 0)throw new G(`Unknown enum '${r.name}'`);let o=i[`${e}`];if(o===void 0)throw new G(`Value '${e}' not found in enum '${r.name}'`);return o}default:$(r,`DataMapper: Unknown result type: ${r.type}`)}}var Rm=/\d{2}:\d{2}:\d{2}(?:\.\d+)?(Z|[+-]\d{2}(:?\d{2})?)?$/;function Cm(e){let t=Rm.exec(e);if(t===null)return`${e}T00:00:00Z`;let r=e,[n,i,o]=t;if(i!==void 0&&i!=="Z"&&o===void 0?r=`${e}:00`:i===void 0&&(r=`${e}Z`),n.length===e.length)return`1970-01-01T${r}`;let s=t.index-1;return r[s]===" "&&(r=`${r.slice(0,s)}T${r.slice(s+1)}`),r}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var Er;(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(Er||(Er={}));function Sm(e){switch(e){case"postgresql":case"postgres":case"prisma+postgres":return"postgresql";case"sqlserver":return"mssql";case"mysql":case"sqlite":case"cockroachdb":case"mongodb":return e;default:$(e,`Unknown provider: ${e}`)}}async function Ln({query:e,tracingHelper:t,provider:r,onQuery:n,execute:i}){return await t.runInChildSpan({name:"db_query",kind:Er.CLIENT,attributes:{"db.query.text":e.sql,"db.system.name":Sm(r)}},async()=>{let o=new Date,s=b.now(),a=await i(),f=b.now();return n?.({timestamp:o,duration:f-s,query:e.sql,params:e.args}),a})}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();function tt(e,t){var r="000000000"+e;return r.substr(r.length-t)}var tl=$e(ys(),1);function Im(){try{return tl.default.hostname()}catch{return g.env._CLUSTER_NETWORK_NAME_||g.env.COMPUTERNAME||"hostname"}}var rl=2,km=tt(g.pid.toString(36),rl),nl=Im(),Om=nl.length,Dm=tt(nl.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+Om+36).toString(36),rl);function zi(){return km+Dm}c();u();p();m();d();l();c();u();p();m();d();l();function Un(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function Yi(e){let n=Math.pow(36,4),i=0;function o(){return tt((Math.random()*n<<0).toString(36),4)}function s(){return i=int.length&&(Xt.getRandomValues(nt),Lt=0),Lt+=e}function so(e=21){Ed(e|=0);let t="";for(let r=Lt-e;r{let n=new Uint8Array(1);return r.getRandomValues(n),n[0]/255};if(typeof r?.randomBytes=="function")return()=>r.randomBytes(1).readUInt8()/255;if(yt?.randomBytes)return()=>yt.randomBytes(1).readUInt8()/255;throw new ot(it.PRNGDetectFailure,"Failed to find a reliable PRNG")}function vd(){return Cd()?self:typeof window<"u"?window:typeof globalThis<"u"||typeof globalThis<"u"?globalThis:null}function Ad(e,t){let r="";for(;e>0;e--)r=Pd(t)+r;return r}function Rd(e,t=Zl){if(isNaN(e))throw new ot(it.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>zl)throw new ot(it.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${zl}: ${e}`);if(e<0)throw new ot(it.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new ot(it.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%Rr,n=Yl.charAt(r)+n,e=(e-r)/Rr;return n}function Cd(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Xl(e,t){let r=t||Td(),n=!e||isNaN(e)?Date.now():e;return Rd(n,Zl)+Ad(xd,r)}c();u();p();m();d();l();c();u();p();m();d();l();var oe=[];for(let e=0;e<256;++e)oe.push((e+256).toString(16).slice(1));function qn(e,t=0){return(oe[e[t+0]]+oe[e[t+1]]+oe[e[t+2]]+oe[e[t+3]]+"-"+oe[e[t+4]]+oe[e[t+5]]+"-"+oe[e[t+6]]+oe[e[t+7]]+"-"+oe[e[t+8]]+oe[e[t+9]]+"-"+oe[e[t+10]]+oe[e[t+11]]+oe[e[t+12]]+oe[e[t+13]]+oe[e[t+14]]+oe[e[t+15]]).toLowerCase()}c();u();p();m();d();l();Xe();var jn=new Uint8Array(256),Bn=jn.length;function Ut(){return Bn>jn.length-16&&(sn(jn),Bn=0),jn.slice(Bn,Bn+=16)}c();u();p();m();d();l();c();u();p();m();d();l();Xe();var ao={randomUUID:on};function Sd(e,t,r){if(ao.randomUUID&&!t&&!e)return ao.randomUUID();e=e||{};let n=e.random??e.rng?.()??Ut();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){if(r=r||0,r<0||r+16>t.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)t[r+i]=n[i];return t}return qn(n)}var lo=Sd;c();u();p();m();d();l();var co={};function Id(e,t,r){let n;if(e)n=ec(e.random??e.rng?.()??Ut(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=Ut();kd(co,i,o),n=ec(o,co.msecs,co.seq,t,r)}return t??qn(n)}function kd(e,t,r){return e.msecs??=-1/0,e.seq??=0,t>e.msecs?(e.seq=r[6]<<23|r[7]<<16|r[8]<<8|r[9],e.msecs=t):(e.seq=e.seq+1|0,e.seq===0&&e.msecs++),e}function ec(e,t,r,n,i=0){if(e.length<16)throw new Error("Random bytes length must be >= 16");if(!n)n=new Uint8Array(16),i=0;else if(i<0||i+16>n.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);return t??=Date.now(),r??=e[6]*127<<24|e[7]<<16|e[8]<<8|e[9],n[i++]=t/1099511627776&255,n[i++]=t/4294967296&255,n[i++]=t/16777216&255,n[i++]=t/65536&255,n[i++]=t/256&255,n[i++]=t&255,n[i++]=112|r>>>28&15,n[i++]=r>>>20&255,n[i++]=128|r>>>14&63,n[i++]=r>>>6&255,n[i++]=r<<2&255|e[10]&3,n[i++]=e[11],n[i++]=e[12],n[i++]=e[13],n[i++]=e[14],n[i++]=e[15],n}var uo=Id;var Qn=class{#t={};constructor(){this.register("uuid",new mo),this.register("cuid",new fo),this.register("ulid",new go),this.register("nanoid",new yo),this.register("product",new ho)}snapshot(){return Object.create(this.#t,{now:{value:new po}})}register(t,r){this.#t[t]=r}},po=class{#t=new Date;generate(){return this.#t.toISOString()}},mo=class{generate(t){if(t===4)return lo();if(t===7)return uo();throw new Error("Invalid UUID generator arguments")}},fo=class{generate(t){if(t===1)return il();if(t===2)return(0,tc.createId)();throw new Error("Invalid CUID generator arguments")}},go=class{generate(){return Xl()}},yo=class{generate(t){if(typeof t=="number")return so(t);if(t===void 0)return so();throw new Error("Invalid Nanoid generator arguments")}},ho=class{generate(t,r){if(t===void 0||r===void 0)throw new Error("Invalid Product generator arguments");return Array.isArray(t)&&Array.isArray(r)?t.flatMap(n=>r.map(i=>[n,i])):Array.isArray(t)?t.map(n=>[n,r]):Array.isArray(r)?r.map(n=>[t,n]):[[t,r]]}};c();u();p();m();d();l();function Hn(e,t){return e==null?e:typeof e=="string"?Hn(JSON.parse(e),t):Array.isArray(e)?Dd(e,t):Od(e,t)}function Od(e,t){if(t.pagination){let{skip:r,take:n,cursor:i}=t.pagination;if(r!==null&&r>0||n===0||i!==null&&!Dt(e,i))return null}return nc(e,t.nested)}function nc(e,t){for(let[r,n]of Object.entries(t))e[r]=Hn(e[r],n);return e}function Dd(e,t){if(t.distinct!==null){let r=t.linkingFields!==null?[...t.distinct,...t.linkingFields]:t.distinct;e=_d(e,r)}return t.pagination&&(e=Md(e,t.pagination,t.linkingFields)),t.reverse&&e.reverse(),Object.keys(t.nested).length===0?e:e.map(r=>nc(r,t.nested))}function _d(e,t){let r=new Set,n=[];for(let i of e){let o=Ft(i,t);r.has(o)||(r.add(o),n.push(i))}return n}function Md(e,t,r){if(r===null)return rc(e,t);let n=new Map;for(let o of e){let s=Ft(o,r);n.has(s)||n.set(s,[]),n.get(s).push(o)}let i=Array.from(n.entries());return i.sort(([o],[s])=>os?1:0),i.flatMap(([,o])=>rc(o,t))}function rc(e,{cursor:t,skip:r,take:n}){let i=t!==null?e.findIndex(a=>Dt(a,t)):0;if(i===-1)return[];let o=i+(r??0),s=n!==null?o+n:e.length;return e.slice(o,s)}function Ft(e,t){return JSON.stringify(t.map(r=>e[r]))}c();u();p();m();d();l();c();u();p();m();d();l();function wo(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function bo(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function Po(e,t,r,n){let i=e.args.map(o=>Te(o,t,r));switch(e.type){case"rawSql":return[Ud(e.sql,i,e.argTypes)];case"templateSql":return(e.chunkable?$d(e.fragments,i,n):[i]).map(s=>{if(n!==void 0&&s.length>n)throw new ce("The query parameter limit supported by your database is exceeded.","P2029");return Nd(e.fragments,e.placeholderFormat,s,e.argTypes)});default:$(e.type,"Invalid query type")}}function Te(e,t,r){for(;Fd(e);)if(wo(e)){let n=t[e.prisma__value.name];if(n===void 0)throw new Error(`Missing value for query variable ${e.prisma__value.name}`);e=n}else if(bo(e)){let{name:n,args:i}=e.prisma__value,o=r[n];if(!o)throw new Error(`Encountered an unknown generator '${n}'`);e=o.generate(...i.map(s=>Te(s,t,r)))}else $(e,`Unexpected unevaluated value type: ${e}`);return Array.isArray(e)&&(e=e.map(n=>Te(n,t,r))),e}function Nd(e,t,r,n){let i="",o={placeholderNumber:1},s=[],a=[];for(let f of xo(e,r,n)){if(i+=Ld(f,t,o),f.type==="stringChunk")continue;let w=s.length,A=s.push(...ic(f))-w;if(f.argType.arity==="tuple"){if(A%f.argType.elements.length!==0)throw new Error(`Malformed query template. Expected the number of parameters to match the tuple arity, but got ${A} parameters for a tuple of arity ${f.argType.elements.length}.`);for(let R=0;REo(t,r.placeholderNumber++)).join(",")})`;case"parameterTupleList":return e.value.map(i=>{let o=i.map(()=>Eo(t,r.placeholderNumber++)).join(e.itemSeparator);return`${e.itemPrefix}${o}${e.itemSuffix}`}).join(e.groupSeparator);default:$(n,"Invalid fragment type")}}function Eo(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function Ud(e,t,r){return{sql:e,args:t,argTypes:r}}function Fd(e){return wo(e)||bo(e)}function*xo(e,t,r){let n=0;for(let i of e)switch(i.type){case"parameter":{if(n>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);yield{...i,value:t[n],argType:r?.[n]},n++;break}case"stringChunk":{yield i;break}case"parameterTuple":{if(n>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let o=t[n];yield{...i,value:Array.isArray(o)?o:[o],argType:r?.[n]},n++;break}case"parameterTupleList":{if(n>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let o=t[n];if(!Array.isArray(o))throw new Error("Malformed query template. Tuple list expected.");if(o.length===0)throw new Error("Malformed query template. Tuple list cannot be empty.");for(let s of o)if(!Array.isArray(s))throw new Error("Malformed query template. Tuple expected.");yield{...i,value:o,argType:r?.[n]},n++;break}}}function*ic(e){switch(e.type){case"parameter":yield e.value;break;case"stringChunk":break;case"parameterTuple":yield*e.value;break;case"parameterTupleList":for(let t of e.value)yield*t;break}}function $d(e,t,r){let n=0,i=0;for(let s of xo(e,t,void 0)){let a=0;for(let f of ic(s))a++;i=Math.max(i,a),n+=a}let o=[[]];for(let s of xo(e,t,void 0))switch(s.type){case"parameter":{for(let a of o)a.push(s.value);break}case"stringChunk":break;case"parameterTuple":{let a=s.value.length,f=[];if(r&&o.length===1&&a===i&&n>r&&n-af.map(A=>[...w,A]));break}case"parameterTupleList":{let a=s.value.reduce((R,S)=>R+S.length,0),f=[],w=[],A=0;for(let R of s.value)r&&o.length===1&&a===i&&w.length>0&&n-a+A+R.length>r&&(f.push(w),w=[],A=0),w.push(R),A+=R.length;w.length>0&&f.push(w),o=o.flatMap(R=>f.map(S=>[...R,S]));break}}return o}function Vd(e,t){let r=[];for(let n=0;nt.reduce((r,n,i)=>(r[e.columnNames[i]]=n,r),{}))}function sc(e){return{columns:e.columnNames,types:e.columnTypes.map(t=>qd(t)),rows:e.rows.map(t=>t.map((r,n)=>$t(r,e.columnTypes[n])))}}function $t(e,t){if(e===null)return null;switch(t){case O.Int32:switch(typeof e){case"number":return Math.trunc(e);case"string":return Math.trunc(Number(e));default:throw new Error(`Cannot serialize value of type ${typeof e} as Int32`)}case O.Int32Array:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as Int32Array`);return e.map(r=>$t(r,O.Int32));case O.Int64:switch(typeof e){case"number":return BigInt(Math.trunc(e));case"string":return e;default:throw new Error(`Cannot serialize value of type ${typeof e} as Int64`)}case O.Int64Array:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as Int64Array`);return e.map(r=>$t(r,O.Int64));case O.Json:switch(typeof e){case"string":return JSON.parse(e);default:throw new Error(`Cannot serialize value of type ${typeof e} as Json`)}case O.JsonArray:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as JsonArray`);return e.map(r=>$t(r,O.Json));case O.Bytes:if(Array.isArray(e))return new Uint8Array(e);throw new Error(`Cannot serialize value of type ${typeof e} as Bytes`);case O.BytesArray:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as BytesArray`);return e.map(r=>$t(r,O.Bytes));case O.Boolean:switch(typeof e){case"boolean":return e;case"string":return e==="true"||e==="1";case"number":return e===1;default:throw new Error(`Cannot serialize value of type ${typeof e} as Boolean`)}case O.BooleanArray:if(!Array.isArray(e))throw new Error(`Cannot serialize value of type ${typeof e} as BooleanArray`);return e.map(r=>$t(r,O.Boolean));default:return e}}function qd(e){switch(e){case O.Int32:return"int";case O.Int64:return"bigint";case O.Float:return"float";case O.Double:return"double";case O.Text:return"string";case O.Enum:return"enum";case O.Bytes:return"bytes";case O.Boolean:return"bool";case O.Character:return"char";case O.Numeric:return"decimal";case O.Json:return"json";case O.Uuid:return"uuid";case O.DateTime:return"datetime";case O.Date:return"date";case O.Time:return"time";case O.Int32Array:return"int-array";case O.Int64Array:return"bigint-array";case O.FloatArray:return"float-array";case O.DoubleArray:return"double-array";case O.TextArray:return"string-array";case O.EnumArray:return"string-array";case O.BytesArray:return"bytes-array";case O.BooleanArray:return"bool-array";case O.CharacterArray:return"char-array";case O.NumericArray:return"decimal-array";case O.JsonArray:return"json-array";case O.UuidArray:return"uuid-array";case O.DateTimeArray:return"datetime-array";case O.DateArray:return"date-array";case O.TimeArray:return"time-array";case O.UnknownNumber:return"unknown";case O.Set:return"string";default:$(e,`Unexpected column type: ${e}`)}}c();u();p();m();d();l();function ac(e,t,r){if(!t.every(n=>To(e,n))){let n=Bd(e,r),i=jd(r);throw new ce(n,i,r.context)}}function To(e,t){switch(t.type){case"rowCountEq":return Array.isArray(e)?e.length===t.args:e===null?t.args===0:t.args===1;case"rowCountNeq":return Array.isArray(e)?e.length!==t.args:e===null?t.args!==0:t.args!==1;case"affectedRowCountEq":return e===t.args;case"never":return!1;default:$(t,`Unknown rule type: ${t.type}`)}}function Bd(e,t){switch(t.error_identifier){case"RELATION_VIOLATION":return`The change you are trying to make would violate the required relation '${t.context.relation}' between the \`${t.context.modelA}\` and \`${t.context.modelB}\` models.`;case"MISSING_RECORD":return`An operation failed because it depends on one or more records that were required but not found. No record was found for ${t.context.operation}.`;case"MISSING_RELATED_RECORD":{let r=t.context.neededFor?` (needed to ${t.context.neededFor})`:"";return`An operation failed because it depends on one or more records that were required but not found. No '${t.context.model}' record${r} was found for ${t.context.operation} on ${t.context.relationType} relation '${t.context.relation}'.`}case"INCOMPLETE_CONNECT_INPUT":return`An operation failed because it depends on one or more records that were required but not found. Expected ${t.context.expectedRows} records to be connected, found only ${Array.isArray(e)?e.length:e}.`;case"INCOMPLETE_CONNECT_OUTPUT":return`The required connected records were not found. Expected ${t.context.expectedRows} records to be connected after connect operation on ${t.context.relationType} relation '${t.context.relation}', found ${Array.isArray(e)?e.length:e}.`;case"RECORDS_NOT_CONNECTED":return`The records for relation \`${t.context.relation}\` between the \`${t.context.parent}\` and \`${t.context.child}\` models are not connected.`;default:$(t,`Unknown error identifier: ${t}`)}}function jd(e){switch(e.error_identifier){case"RELATION_VIOLATION":return"P2014";case"RECORDS_NOT_CONNECTED":return"P2017";case"INCOMPLETE_CONNECT_OUTPUT":return"P2018";case"MISSING_RECORD":case"MISSING_RELATED_RECORD":case"INCOMPLETE_CONNECT_INPUT":return"P2025";default:$(e,`Unknown error identifier: ${e}`)}}var Cr=class e{#t;#e;#r;#n=new Qn;#s;#i;#a;#o;#c;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o,rawSerializer:s,provider:a,connectionInfo:f}){this.#t=t,this.#e=r,this.#r=n,this.#s=i,this.#i=o,this.#a=s??o,this.#o=a,this.#c=f}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:oc,rawSerializer:sc,provider:t.provider,connectionInfo:t.connectionInfo})}async run(t,r){let{value:n}=await this.interpretNode(t,r,this.#e,this.#n.snapshot()).catch(i=>_t(i));return n}async interpretNode(t,r,n,i){switch(t.type){case"value":return{value:Te(t.args,n,i)};case"seq":{let o;for(let s of t.args)o=await this.interpretNode(s,r,n,i);return o??{value:void 0}}case"get":return{value:n[t.args.name]};case"let":{let o=Object.create(n);for(let s of t.args.bindings){let{value:a}=await this.interpretNode(s.expr,r,o,i);o[s.name]=a}return this.interpretNode(t.args.expr,r,o,i)}case"getFirstNonEmpty":{for(let o of t.args.names){let s=n[o];if(!lc(s))return{value:s}}return{value:[]}}case"concat":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>s.concat(vo(a)),[]):[]}}case"sum":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>Oe(s)+Oe(a)):0}}case"execute":{let o=Po(t.args,n,i,this.#l()),s=0;for(let a of o)s+=await this.#u(a,r,()=>r.executeRaw(a).catch(f=>t.args.type==="rawSql"?Ji(f):_t(f)));return{value:s}}case"query":{let o=Po(t.args,n,i,this.#l()),s;for(let a of o){let f=await this.#u(a,r,()=>r.queryRaw(a).catch(w=>t.args.type==="rawSql"?Ji(w):_t(w)));s===void 0?s=f:(s.rows.push(...f.rows),s.lastInsertId=f.lastInsertId)}return{value:t.args.type==="rawSql"?this.#a(s):this.#i(s),lastInsertId:s?.lastInsertId}}case"reverse":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);return{value:Array.isArray(o)?o.reverse():o,lastInsertId:s}}case"unique":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(!Array.isArray(o))return{value:o,lastInsertId:s};if(o.length>1)throw new Error(`Expected zero or one element, got ${o.length}`);return{value:o[0]??null,lastInsertId:s}}case"required":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(lc(o))throw new Error("Required value is empty");return{value:o,lastInsertId:s}}case"mapField":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.records,r,n,i);return{value:cc(o,t.args.field),lastInsertId:s}}case"join":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.parent,r,n,i);if(o===null)return{value:null,lastInsertId:s};let a=await Promise.all(t.args.children.map(async f=>({joinExpr:f,childRecords:(await this.interpretNode(f.child,r,n,i)).value})));return{value:Qd(o,a),lastInsertId:s}}case"transaction":{if(!this.#t.enabled)return this.interpretNode(t.args,r,n,i);let o=this.#t.manager,s=await o.startInternalTransaction(),a=await o.getTransaction(s,"query");try{let f=await this.interpretNode(t.args,a,n,i);return await o.commitTransaction(s.id),f}catch(f){throw await o.rollbackTransaction(s.id),f}}case"dataMap":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return{value:el(o,t.args.structure,t.args.enums),lastInsertId:s}}case"validate":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return ac(o,t.args.rules,t.args),{value:o,lastInsertId:s}}case"if":{let{value:o}=await this.interpretNode(t.args.value,r,n,i);return To(o,t.args.rule)?await this.interpretNode(t.args.then,r,n,i):await this.interpretNode(t.args.else,r,n,i)}case"unit":return{value:void 0};case"diff":{let{value:o}=await this.interpretNode(t.args.from,r,n,i),{value:s}=await this.interpretNode(t.args.to,r,n,i),a=w=>w!==null?Ft(Gn(w),t.args.fields):null,f=new Set(vo(s).map(a));return{value:vo(o).filter(w=>!f.has(a(w)))}}case"process":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return{value:Hn(o,t.args.operations),lastInsertId:s}}case"initializeRecord":{let{lastInsertId:o}=await this.interpretNode(t.args.expr,r,n,i),s={};for(let[a,f]of Object.entries(t.args.fields))s[a]=Hd(f,o,n,i);return{value:s,lastInsertId:o}}case"mapRecord":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=o===null?{}:Gn(o);for(let[f,w]of Object.entries(t.args.fields))a[f]=Gd(w,a[f],n,i);return{value:a,lastInsertId:s}}default:$(t,`Unexpected node type: ${t.type}`)}}#l(){return this.#c?.maxBindValues!==void 0?this.#c.maxBindValues:this.#p()}#p(){if(this.#o!==void 0)switch(this.#o){case"cockroachdb":case"postgres":case"postgresql":case"prisma+postgres":return 32766;case"mysql":return 65535;case"sqlite":return 999;case"sqlserver":return 2098;case"mongodb":return;default:$(this.#o,`Unexpected provider: ${this.#o}`)}}#u(t,r,n){return Ln({query:t,execute:n,provider:this.#o??r.provider,tracingHelper:this.#s,onQuery:this.#r})}};function lc(e){return Array.isArray(e)?e.length===0:e==null}function vo(e){return Array.isArray(e)?e:[e]}function Oe(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function Gn(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function cc(e,t){return Array.isArray(e)?e.map(r=>cc(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function Qd(e,t){for(let{joinExpr:r,childRecords:n}of t){let i=r.on.map(([a])=>a),o=r.on.map(([,a])=>a),s={};for(let a of Array.isArray(e)?e:[e]){let f=Gn(a),w=Ft(f,i);s[w]||(s[w]=[]),s[w].push(f),r.isRelationUnique?f[r.parentField]=null:f[r.parentField]=[]}for(let a of Array.isArray(n)?n:[n]){if(a===null)continue;let f=Ft(Gn(a),o);for(let w of s[f]??[])r.isRelationUnique?w[r.parentField]=a:w[r.parentField].push(a)}}return e}function Hd(e,t,r,n){switch(e.type){case"value":return Te(e.value,r,n);case"lastInsertId":return t;default:$(e,`Unexpected field initializer type: ${e.type}`)}}function Gd(e,t,r,n){switch(e.type){case"set":return Te(e.value,r,n);case"add":return Oe(t)+Oe(Te(e.value,r,n));case"subtract":return Oe(t)-Oe(Te(e.value,r,n));case"multiply":return Oe(t)*Oe(Te(e.value,r,n));case"divide":{let i=Oe(t),o=Oe(Te(e.value,r,n));return o===0?null:i/o}default:$(e,`Unexpected field operation type: ${e.type}`)}}c();u();p();m();d();l();c();u();p();m();d();l();async function Jd(){return globalThis.crypto??await Promise.resolve().then(()=>(Xe(),xi))}async function uc(){return(await Jd()).randomUUID()}c();u();p();m();d();l();var Ee=class extends ce{name="TransactionManagerError";constructor(t,r){super("Transaction API error: "+t,"P2028",r)}},Sr=class extends Ee{constructor(){super("Transaction not found. Transaction ID is invalid, refers to an old closed transaction Prisma doesn't have information about anymore, or was obtained before disconnecting.")}},Jn=class extends Ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction.`)}},Wn=class extends Ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`)}},Kn=class extends Ee{constructor(){super("Unable to start a transaction in the given time.")}},zn=class extends Ee{constructor(t,{timeout:r,timeTaken:n}){super(`A ${t} cannot be executed on an expired transaction. The timeout for this transaction was ${r} ms, however ${n} ms passed since the start of the transaction. Consider increasing the interactive transaction timeout or doing less work in the transaction.`,{operation:t,timeout:r,timeTaken:n})}},Vt=class extends Ee{constructor(t){super(`Internal Consistency Error: ${t}`)}},Yn=class extends Ee{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var Wd=100,Ir=K("prisma:client:transactionManager"),Kd=()=>({sql:"COMMIT",args:[],argTypes:[]}),zd=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),Yd=()=>({sql:'-- Implicit "COMMIT" query via underlying driver',args:[],argTypes:[]}),Zd=()=>({sql:'-- Implicit "ROLLBACK" query via underlying driver',args:[],argTypes:[]}),kr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;#t;#e;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n,onQuery:i,provider:o}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n,this.#t=i,this.#e=o}async startInternalTransaction(t){let r=t!==void 0?this.#a(t):{};return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#r(r))}async startTransaction(t){let r=t!==void 0?this.#a(t):this.transactionOptions;return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#r(r))}async#r(t){let r={id:await uc(),status:"waiting",timer:void 0,timeout:t.timeout,startedAt:Date.now(),transaction:void 0};this.transactions.set(r.id,r);let n=!1,i=pc(()=>n=!0,t.maxWait);switch(i?.unref?.(),r.transaction=await this.driverAdapter.startTransaction(t.isolationLevel).catch(_t),clearTimeout(i),r.status){case"waiting":if(n)throw await this.#i(r,"timed_out"),new Kn;return r.status="running",r.timer=this.#s(r.id,t.timeout),{id:r.id};case"timed_out":case"running":case"committed":case"rolled_back":throw new Vt(`Transaction in invalid state ${r.status} although it just finished startup.`);default:$(r.status,"Unknown transaction status.")}}async commitTransaction(t){return await this.tracingHelper.runInChildSpan("commit_transaction",async()=>{let r=this.#n(t,"commit");await this.#i(r,"committed")})}async rollbackTransaction(t){return await this.tracingHelper.runInChildSpan("rollback_transaction",async()=>{let r=this.#n(t,"rollback");await this.#i(r,"rolled_back")})}async getTransaction(t,r){let n=this.#n(t.id,r);if(n.status==="closing"&&(await n.closing,n=this.#n(t.id,r)),!n.transaction)throw new Sr;return n.transaction}#n(t,r){let n=this.transactions.get(t);if(!n){let i=this.closedTransactions.find(o=>o.id===t);if(i)switch(Ir("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"closing":case"waiting":case"running":throw new Vt("Active transaction found in closed transactions list.");case"committed":throw new Jn(r);case"rolled_back":throw new Wn(r);case"timed_out":throw new zn(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw Ir("Transaction not found.",t),new Sr}if(["committed","rolled_back","timed_out"].includes(n.status))throw new Vt("Closed transaction found in active transactions map.");return n}async cancelAllTransactions(){await Promise.allSettled([...this.transactions.values()].map(t=>this.#i(t,"rolled_back")))}#s(t,r){let n=Date.now(),i=pc(async()=>{Ir("Transaction timed out.",{transactionId:t,timeoutStartedAt:n,timeout:r});let o=this.transactions.get(t);o&&["running","waiting"].includes(o.status)?await this.#i(o,"timed_out"):Ir("Transaction already committed or rolled back when timeout happened.",t)},r);return i?.unref?.(),i}async#i(t,r){let n=async()=>{Ir("Closing transaction.",{transactionId:t.id,status:r});try{if(t.transaction&&r==="committed")if(t.transaction.options.usePhantomQuery)await this.#o(Yd(),t.transaction,()=>t.transaction.commit());else{let i=Kd();await this.#o(i,t.transaction,()=>t.transaction.executeRaw(i)),await t.transaction.commit()}else if(t.transaction)if(t.transaction.options.usePhantomQuery)await this.#o(Zd(),t.transaction,()=>t.transaction.rollback());else{let i=zd();await this.#o(i,t.transaction,()=>t.transaction.executeRaw(i)),await t.transaction.rollback()}}finally{t.status=r,clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>Wd&&this.closedTransactions.shift()}};t.status==="closing"?(await t.closing,this.#n(t.id,r==="committed"?"commit":"rollback")):await Object.assign(t,{status:"closing",reason:r,closing:n()}).closing}#a(t){if(!t.timeout)throw new Ee("timeout is required");if(!t.maxWait)throw new Ee("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new Yn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}#o(t,r,n){return Ln({query:t,execute:n,provider:this.#e??r.provider,tracingHelper:this.tracingHelper,onQuery:this.#t})}};function pc(e,t){return t!==void 0?setTimeout(e,t):void 0}var Zn="6.19.1";c();u();p();m();d();l();var Xn=class e{#t;#e;#r;#n;constructor(t,r,n){this.#t=t,this.#e=r,this.#r=n,this.#n=r.getConnectionInfo?.()}static async connect(t){let r,n;try{r=await t.driverAdapterFactory.connect(),n=new kr({driverAdapter:r,transactionOptions:t.transactionOptions,tracingHelper:t.tracingHelper,onQuery:t.onQuery,provider:t.provider})}catch(i){throw await r?.dispose(),i}return new e(t,r,n)}getConnectionInfo(){let t=this.#n??{supportsRelationJoins:!1};return Promise.resolve({provider:this.#e.provider,connectionInfo:t})}async execute({plan:t,placeholderValues:r,transaction:n,batchIndex:i}){let o=n?await this.#r.getTransaction(n,i!==void 0?"batch query":"query"):this.#e;return await Cr.forSql({transactionManager:n?{enabled:!1}:{enabled:!0,manager:this.#r},placeholderValues:r,onQuery:this.#t.onQuery,tracingHelper:this.#t.tracingHelper,provider:this.#t.provider,connectionInfo:this.#n}).run(t,o)}async startTransaction(t){return{...await this.#r.startTransaction(t),payload:void 0}}async commitTransaction(t){await this.#r.commitTransaction(t.id)}async rollbackTransaction(t){await this.#r.rollbackTransaction(t.id)}async disconnect(){try{await this.#r.cancelAllTransactions()}finally{await this.#e.dispose()}}apiKey(){return null}};c();u();p();m();d();l();c();u();p();m();d();l();var ei=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function mc(e,t,r){let n=r||{},i=n.encode||encodeURIComponent;if(typeof i!="function")throw new TypeError("option encode is invalid");if(!ei.test(e))throw new TypeError("argument name is invalid");let o=i(t);if(o&&!ei.test(o))throw new TypeError("argument val is invalid");let s=e+"="+o;if(n.maxAge!==void 0&&n.maxAge!==null){let a=n.maxAge-0;if(Number.isNaN(a)||!Number.isFinite(a))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+Math.floor(a)}if(n.domain){if(!ei.test(n.domain))throw new TypeError("option domain is invalid");s+="; Domain="+n.domain}if(n.path){if(!ei.test(n.path))throw new TypeError("option path is invalid");s+="; Path="+n.path}if(n.expires){if(!ef(n.expires)||Number.isNaN(n.expires.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(s+="; HttpOnly"),n.secure&&(s+="; Secure"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():n.priority){case"low":{s+="; Priority=Low";break}case"medium":{s+="; Priority=Medium";break}case"high":{s+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:{s+="; SameSite=Strict";break}case"lax":{s+="; SameSite=Lax";break}case"strict":{s+="; SameSite=Strict";break}case"none":{s+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return n.partitioned&&(s+="; Partitioned"),s}function ef(e){return Object.prototype.toString.call(e)==="[object Date]"||e instanceof Date}function dc(e,t){let r=(e||"").split(";").filter(f=>typeof f=="string"&&!!f.trim()),n=r.shift()||"",i=tf(n),o=i.name,s=i.value;try{s=t?.decode===!1?s:(t?.decode||decodeURIComponent)(s)}catch{}let a={name:o,value:s};for(let f of r){let w=f.split("="),A=(w.shift()||"").trimStart().toLowerCase(),R=w.join("=");switch(A){case"expires":{a.expires=new Date(R);break}case"max-age":{a.maxAge=Number.parseInt(R,10);break}case"secure":{a.secure=!0;break}case"httponly":{a.httpOnly=!0;break}case"samesite":{a.sameSite=R;break}default:a[A]=R}}return a}function tf(e){let t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var rf=()=>globalThis.process?.release?.name==="node",nf=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,of=()=>!!globalThis.Deno,sf=()=>typeof globalThis.Netlify=="object",af=()=>typeof globalThis.EdgeRuntime=="object",lf=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function cf(){return[[sf,"netlify"],[af,"edge-light"],[lf,"workerd"],[of,"deno"],[nf,"bun"],[rf,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var uf={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function ti(){let e=cf();return{id:e,prettyName:uf[e]||e,isEdge:["workerd","deno","netlify","edge-light"].includes(e)}}function qt({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw ti().id==="workerd"?new F(`error: Environment variable not found: ${s.fromEnvVar}. + +In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new F(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new F("error: Missing URL environment variable, value, or override.",n);return i}c();u();p();m();d();l();c();u();p();m();d();l();c();u();p();m();d();l();var ri=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ge=class extends ri{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};c();u();p();m();d();l();function N(e,t){return{...e,isRetryable:t}}var st=class extends ge{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,N(r,!1))}};D(st,"InvalidDatasourceError");function ni(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=qt({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof g<"u"?g.env:{}}}),i;try{i=new URL(n)}catch{throw new st(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==ln)throw new st(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new st(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let f=Ti(i)?"http:":"https:";g.env.TEST_CLIENT_ENGINE_REMOTE_EXECUTOR&&i.searchParams.has("use_http")&&(f="http:");let w=new URL(i.href.replace(o,f));return{apiKey:a,url:w}}c();u();p();m();d();l();var fc=$e(Ts()),Bt=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":fc.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#t();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#t(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};c();u();p();m();d();l();function pf(e){return e[0]*1e3+e[1]/1e6}function jt(e){return new Date(pf(e))}var gc=K("prisma:client:clientEngine:remoteExecutor"),ii=class{#t;#e;#r;#n;#s;constructor(t){this.#t=t.clientVersion,this.#n=t.logEmitter,this.#s=t.tracingHelper;let{url:r,apiKey:n}=ni({clientVersion:t.clientVersion,env:t.env,inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources});this.#r=new Ao(r),this.#e=new Bt({apiKey:n,engineHash:t.clientVersion,logLevel:t.logLevel,logQueries:t.logQueries,tracingHelper:t.tracingHelper})}async getConnectionInfo(){return await this.#i({path:"/connection-info",method:"GET"})}async execute({plan:t,placeholderValues:r,batchIndex:n,model:i,operation:o,transaction:s,customFetch:a}){return(await this.#i({path:s?`/transaction/${s.id}/query`:"/query",method:"POST",body:{model:i,operation:o,plan:t,params:r},batchRequestIdx:n,fetch:a})).data}async startTransaction(t){return{...await this.#i({path:"/transaction/start",method:"POST",body:t}),payload:void 0}}async commitTransaction(t){await this.#i({path:`/transaction/${t.id}/commit`,method:"POST"})}async rollbackTransaction(t){await this.#i({path:`/transaction/${t.id}/rollback`,method:"POST"})}disconnect(){return Promise.resolve()}apiKey(){return this.#e.apiKey}async#i({path:t,method:r,body:n,fetch:i=globalThis.fetch,batchRequestIdx:o}){let s=await this.#r.request({method:r,path:t,headers:this.#e.build(),body:n,fetch:i});s.ok||await this.#a(s,o);let a=await s.json();return typeof a.extensions=="object"&&a.extensions!==null&&this.#o(a.extensions),a}async#a(t,r){let n=t.headers.get("Prisma-Error-Code"),i=await t.text(),o,s=i;try{o=JSON.parse(i)}catch{o={}}typeof o.code=="string"&&(n=o.code),typeof o.error=="string"?s=o.error:typeof o.message=="string"?s=o.message:typeof o.InvalidRequestError=="object"&&o.InvalidRequestError!==null&&typeof o.InvalidRequestError.reason=="string"&&(s=o.InvalidRequestError.reason),s=s||`HTTP ${t.status}: ${t.statusText}`;let a=typeof o.meta=="object"&&o.meta!==null?o.meta:o;throw new X(s,{clientVersion:this.#t,code:n??"P6000",batchRequestIdx:r,meta:a})}#o(t){if(t.logs)for(let r of t.logs)this.#c(r);t.traces&&this.#s.dispatchEngineSpans(t.traces)}#c(t){switch(t.level){case"debug":case"trace":gc(t);break;case"error":case"warn":case"info":{this.#n.emit(t.level,{timestamp:jt(t.timestamp),message:t.attributes.message??"",target:t.target??"RemoteExecutor"});break}case"query":{this.#n.emit("query",{query:t.attributes.query??"",timestamp:jt(t.timestamp),duration:t.attributes.duration_ms??0,params:t.attributes.params??"",target:t.target??"RemoteExecutor"});break}default:throw new Error(`Unexpected log level: ${t.level}`)}}},Ao=class{#t;#e;#r;constructor(t){this.#t=t,this.#e=new Map}async request({method:t,path:r,headers:n,body:i,fetch:o}){let s=new URL(r,this.#t),a=this.#n(s);a&&(n.Cookie=a),this.#r&&(n["Accelerate-Query-Engine-Jwt"]=this.#r);let f=await o(s.href,{method:t,body:i!==void 0?JSON.stringify(i):void 0,headers:n});return gc(t,s,f.status,f.statusText),this.#r=f.headers.get("Accelerate-Query-Engine-Jwt")??void 0,this.#s(s,f),f}#n(t){let r=[],n=new Date;for(let[i,o]of this.#e){if(o.expires&&o.expires0?r.join("; "):void 0}#s(t,r){let n=r.headers.getSetCookie?.()||[];if(n.length===0){let i=r.headers.get("Set-Cookie");i&&n.push(i)}for(let i of n){let o=dc(i),s=o.domain??t.hostname,a=o.path??"/",f=`${s}:${a}:${o.name}`;this.#e.set(f,{name:o.name,value:o.value,domain:s,path:a,expires:o.expires})}}};c();u();p();m();d();l();var Ro={},yc={async loadQueryCompiler(e){let{clientVersion:t,compilerWasm:r}=e;if(r===void 0)throw new F("WASM query compiler was unexpectedly `undefined`",t);let n;return e.activeProvider===void 0||Ro[e.activeProvider]===void 0?(n=(async()=>{let i=await r.getRuntime(),o=await r.getQueryCompilerWasmModule();if(o==null)throw new F("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",t);let s={"./query_compiler_bg.js":i},a=new WebAssembly.Instance(o,s),f=a.exports.__wbindgen_start;return i.__wbg_set_wasm(a.exports),f(),i.QueryCompiler})(),e.activeProvider!==void 0&&(Ro[e.activeProvider]=n)):n=Ro[e.activeProvider],await n}};var mf="P2038",Or=K("prisma:client:clientEngine"),wc=globalThis;wc.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new ae(e,Zn)}};var Dr=class{name="ClientEngine";#t;#e={type:"disconnected"};#r;#n;config;datamodel;logEmitter;logQueries;logLevel;tracingHelper;#s;constructor(t,r,n){if(r)this.#n={remote:!0};else if(t.adapter)this.#n={remote:!1,driverAdapterFactory:t.adapter},Or("Using driver adapter: %O",t.adapter);else throw new F("Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.",t.clientVersion,mf);this.#r=n??yc,this.config=t,this.logQueries=t.logQueries??!1,this.logLevel=t.logLevel??"error",this.logEmitter=t.logEmitter,this.datamodel=t.inlineSchema,this.tracingHelper=t.tracingHelper,t.enableDebugLogs&&(this.logLevel="debug"),this.logQueries&&(this.#s=i=>{this.logEmitter.emit("query",{...i,params:br(i.params),target:"ClientEngine"})})}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async#i(){switch(this.#e.type){case"disconnected":{let t=this.tracingHelper.runInChildSpan("connect",async()=>{let r,n;try{r=await this.#a(),n=await this.#o(r)}catch(o){throw this.#e={type:"disconnected"},n?.free(),await r?.disconnect(),o}let i={executor:r,queryCompiler:n};return this.#e={type:"connected",engine:i},i});return this.#e={type:"connecting",promise:t},await t}case"connecting":return await this.#e.promise;case"connected":return this.#e.engine;case"disconnecting":return await this.#e.promise,await this.#i()}}async#a(){return this.#n.remote?new ii({clientVersion:this.config.clientVersion,env:this.config.env,inlineDatasources:this.config.inlineDatasources,logEmitter:this.logEmitter,logLevel:this.logLevel,logQueries:this.logQueries,overrideDatasources:this.config.overrideDatasources,tracingHelper:this.tracingHelper}):await Xn.connect({driverAdapterFactory:this.#n.driverAdapterFactory,tracingHelper:this.tracingHelper,transactionOptions:{...this.config.transactionOptions,isolationLevel:this.#m(this.config.transactionOptions.isolationLevel)},onQuery:this.#s,provider:this.config.activeProvider})}async#o(t){let r=this.#t;r===void 0&&(r=await this.#r.loadQueryCompiler(this.config),this.#t=r);let{provider:n,connectionInfo:i}=await t.getConnectionInfo();try{return this.#u(()=>new r({datamodel:this.datamodel,provider:n,connectionInfo:i}),void 0,!1)}catch(o){throw this.#c(o)}}#c(t){if(t instanceof ae)return t;try{let r=JSON.parse(t.message);return new F(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#l(t,r){if(t instanceof F)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new ae(hc(this,t.message,r),this.config.clientVersion);if(t instanceof ce)return new X(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let n=JSON.parse(t);return new ne(`${n.message} +${n.backtrace}`,{clientVersion:this.config.clientVersion})}catch{return t}}#p(t){return t instanceof ae?t:typeof t.message=="string"&&typeof t.code=="string"?new X(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion}):typeof t.message=="string"?new ne(t.message,{clientVersion:this.config.clientVersion}):t}#u(t,r,n=!0){let i=wc.PRISMA_WASM_PANIC_REGISTRY.set_message,o;globalThis.PRISMA_WASM_PANIC_REGISTRY.set_message=s=>{o=s};try{return t()}finally{if(globalThis.PRISMA_WASM_PANIC_REGISTRY.set_message=i,o)throw this.#t=void 0,n&&this.stop().catch(s=>Or("failed to disconnect:",s)),new ae(hc(this,o,r),this.config.clientVersion)}}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the client engine, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){await this.#i()}async stop(){switch(this.#e.type){case"disconnected":return;case"connecting":return await this.#e.promise,await this.stop();case"connected":{let t=this.#e.engine,r=this.tracingHelper.runInChildSpan("disconnect",async()=>{try{await t.executor.disconnect(),t.queryCompiler.free()}finally{this.#e={type:"disconnected"}}});return this.#e={type:"disconnecting",promise:r},await r}case"disconnecting":return await this.#e.promise}}version(){return"unknown"}async transaction(t,r,n){let i,{executor:o}=await this.#i();try{if(t==="start"){let s=n;i=await o.startTransaction({...s,isolationLevel:this.#m(s.isolationLevel)})}else if(t==="commit"){let s=n;await o.commitTransaction(s)}else if(t==="rollback"){let s=n;await o.rollbackTransaction(s)}else Me(t,"Invalid transaction action.")}catch(s){throw this.#l(s)}return i?{id:i.id,payload:void 0}:void 0}async request(t,{interactiveTransaction:r,customDataProxyFetch:n}){Or("sending request");let i=JSON.stringify(t),{executor:o,queryCompiler:s}=await this.#i().catch(f=>{throw this.#l(f,i)}),a;try{a=this.#u(()=>this.#d({queries:[t],execute:()=>s.compile(i)}))}catch(f){throw this.#p(f)}try{Or("query plan created",a);let f={},w=await o.execute({plan:a,model:t.modelName,operation:t.action,placeholderValues:f,transaction:r,batchIndex:void 0,customFetch:n?.(globalThis.fetch)});return Or("query plan executed"),{data:{[t.action]:w}}}catch(f){throw this.#l(f,i)}}async requestBatch(t,{transaction:r,customDataProxyFetch:n}){if(t.length===0)return[];let i=t[0].action,o=JSON.stringify(kt(t,r)),{executor:s,queryCompiler:a}=await this.#i().catch(w=>{throw this.#l(w,o)}),f;try{f=this.#u(()=>this.#d({queries:t,execute:()=>a.compileBatch(o)}))}catch(w){throw this.#p(w)}try{let w;r?.kind==="itx"&&(w=r.options);let A={};switch(f.type){case"multi":{if(r?.kind!=="itx"){let C=r?.options.isolationLevel?{...this.config.transactionOptions,isolationLevel:r.options.isolationLevel}:this.config.transactionOptions;w=await this.transaction("start",{},C)}let R=[],S=!1;for(let[C,L]of f.plans.entries())try{let k=await s.execute({plan:L,placeholderValues:A,model:t[C].modelName,operation:t[C].action,batchIndex:C,transaction:w,customFetch:n?.(globalThis.fetch)});R.push({data:{[t[C].action]:k}})}catch(k){R.push(k),S=!0;break}return w!==void 0&&r?.kind!=="itx"&&(S?await this.transaction("rollback",{},w):await this.transaction("commit",{},w)),R}case"compacted":{if(!t.every(C=>C.action===i))throw new Error("All queries in a batch must have the same action");let R=await s.execute({plan:f.plan,placeholderValues:A,model:t[0].modelName,operation:i,batchIndex:void 0,transaction:w,customFetch:n?.(globalThis.fetch)});return Za(R,f).map(C=>({data:{[i]:C}}))}}}catch(w){throw this.#l(w,o)}}metrics(t){throw new Error("Method not implemented.")}async apiKey(){let{executor:t}=await this.#i();return t.apiKey()}#m(t){switch(t){case void 0:return;case"ReadUncommitted":return"READ UNCOMMITTED";case"ReadCommitted":return"READ COMMITTED";case"RepeatableRead":return"REPEATABLE READ";case"Serializable":return"SERIALIZABLE";case"Snapshot":return"SNAPSHOT";default:throw new X(`Inconsistent column data: Conversion failed: Invalid isolation level \`${t}\``,{code:"P2023",clientVersion:this.config.clientVersion,meta:{providedIsolationLevel:t}})}}#d({queries:t,execute:r}){return this.tracingHelper.runInChildSpan({name:"compile",attributes:{models:t.map(n=>n.modelName).filter(n=>n!==void 0),actions:t.map(n=>n.action)}},r)}};function hc(e,t,r){return Ha({binaryTarget:void 0,title:t,version:e.config.clientVersion,engineVersion:"unknown",database:e.config.activeProvider,query:r})}c();u();p();m();d();l();c();u();p();m();d();l();var Qt=class extends ge{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",N(t,!0))}};D(Qt,"ForcedRetryError");c();u();p();m();d();l();var at=class extends ge{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,N(r,!1))}};D(at,"NotImplementedYetError");c();u();p();m();d();l();c();u();p();m();d();l();var Q=class extends ge{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var lt=class extends Q{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",N(t,!0))}};D(lt,"SchemaMissingError");c();u();p();m();d();l();c();u();p();m();d();l();var Co="This request could not be understood by the server",_r=class extends Q{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Co,N(t,!1)),n&&(this.code=n)}};D(_r,"BadRequestError");c();u();p();m();d();l();var Mr=class extends Q{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",N(t,!0)),this.logs=r}};D(Mr,"HealthcheckTimeoutError");c();u();p();m();d();l();var Nr=class extends Q{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,N(t,!0)),this.logs=n}};D(Nr,"EngineStartupError");c();u();p();m();d();l();var Lr=class extends Q{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",N(t,!1))}};D(Lr,"EngineVersionNotSupportedError");c();u();p();m();d();l();var So="Request timed out",Ur=class extends Q{name="GatewayTimeoutError";code="P5009";constructor(t,r=So){super(r,N(t,!1))}};D(Ur,"GatewayTimeoutError");c();u();p();m();d();l();var df="Interactive transaction error",Fr=class extends Q{name="InteractiveTransactionError";code="P5015";constructor(t,r=df){super(r,N(t,!1))}};D(Fr,"InteractiveTransactionError");c();u();p();m();d();l();var ff="Request parameters are invalid",$r=class extends Q{name="InvalidRequestError";code="P5011";constructor(t,r=ff){super(r,N(t,!1))}};D($r,"InvalidRequestError");c();u();p();m();d();l();var Io="Requested resource does not exist",Vr=class extends Q{name="NotFoundError";code="P5003";constructor(t,r=Io){super(r,N(t,!1))}};D(Vr,"NotFoundError");c();u();p();m();d();l();var ko="Unknown server error",Ht=class extends Q{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||ko,N(t,!0)),this.logs=n}};D(Ht,"ServerError");c();u();p();m();d();l();var Oo="Unauthorized, check your connection string",qr=class extends Q{name="UnauthorizedError";code="P5007";constructor(t,r=Oo){super(r,N(t,!1))}};D(qr,"UnauthorizedError");c();u();p();m();d();l();var Do="Usage exceeded, retry again later",Br=class extends Q{name="UsageExceededError";code="P5008";constructor(t,r=Do){super(r,N(t,!0))}};D(Br,"UsageExceededError");async function gf(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function jr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await gf(e);if(n.type==="QueryEngineError")throw new X(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Ht(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new lt(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Lr(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Nr(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new F(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Mr(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new Fr(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new $r(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new qr(r,Gt(Oo,n));if(e.status===404)return new Vr(r,Gt(Io,n));if(e.status===429)throw new Br(r,Gt(Do,n));if(e.status===504)throw new Ur(r,Gt(So,n));if(e.status>=500)throw new Ht(r,Gt(ko,n));if(e.status>=400)throw new _r(r,Gt(Co,n))}function Gt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}c();u();p();m();d();l();function bc(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}c();u();p();m();d();l();var Fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Ec(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,f,w,A;for(let R=0;R>18,a=(A&258048)>>12,f=(A&4032)>>6,w=A&63,r+=Fe[s]+Fe[a]+Fe[f]+Fe[w];return i==1?(A=t[o],s=(A&252)>>2,a=(A&3)<<4,r+=Fe[s]+Fe[a]+"=="):i==2&&(A=t[o]<<8|t[o+1],s=(A&64512)>>10,a=(A&1008)>>4,f=(A&15)<<2,r+=Fe[s]+Fe[a]+Fe[f]+"="),r}c();u();p();m();d();l();function xc(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new F("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}c();u();p();m();d();l();var Pc={"@prisma/debug":"workspace:*","@prisma/engines-version":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};c();u();p();m();d();l();c();u();p();m();d();l();var Qr=class extends ge{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service: +${t}`,N(r,!0))}};D(Qr,"RequestError");async function ct(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new Qr(a,{clientVersion:n,cause:s})}}var hf=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Tc=K("prisma:client:dataproxyEngine");async function wf(e,t){let r=Pc["@prisma/engines-version"],n=t.clientVersion??"unknown";if(g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return g.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&hf.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,f,w]=s.split("."),A=bf(`<=${a}.${f}.${w}`),R=await ct(A,{clientVersion:n});if(!R.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${R.status} ${R.statusText}, response body: ${await R.text()||""}`);let S=await R.text();Tc("length of body fetched from unpkg.com",S.length);let C;try{C=JSON.parse(S)}catch(L){throw console.error("JSON.parse error: body fetched from unpkg.com: ",S),L}return C.version}throw new at("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function vc(e,t){let r=await wf(e,t);return Tc("version",r),r}function bf(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Ac=3,Hr=K("prisma:client:dataproxyEngine"),Gr=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){xc(t),this.config=t,this.env=t.env,this.inlineSchema=Ec(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new Bt({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await vc(this.host,this.config),Hr("host",this.host),Hr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":Hr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:jt(r.timestamp),message:r.attributes.message??"",target:r.target??"BinaryEngine"});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:jt(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target??"BinaryEngine"});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await ct(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||Hr("schema response status",r.status);let n=await jr(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=kt(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(f=>(f.extensions&&this.propagateResponseExtensions(f.extensions),"errors"in f?this.convertProtocolErrorsToClientError(f.errors):f))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await ct(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||Hr("graphql response status",a.status),await this.handleError(await jr(a,this.clientVersion));let f=await a.json();if(f.extensions&&this.propagateResponseExtensions(f.extensions),"errors"in f)throw this.convertProtocolErrorsToClientError(f.errors);return"batchResult"in f?f.batchResult:f}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let f=await ct(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await jr(f,this.clientVersion));let w=await f.json(),{extensions:A}=w;A&&this.propagateResponseExtensions(A);let R=w.id,S=w["data-proxy"].endpoint;return{id:R,payload:{endpoint:S}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await ct(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await jr(a,this.clientVersion));let f=await a.json(),{extensions:w}=f;w&&this.propagateResponseExtensions(w);return}}})}getURLAndAPIKey(){return ni({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new at("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ge)||!i.isRetryable)throw i;if(r>=Ac)throw i instanceof Qt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${Ac} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await bc(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof lt)throw await this.uploadSchema(),new Qt({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?_n(t[0],this.config.clientVersion,this.config.activeProvider):new ne(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};c();u();p();m();d();l();function Rc({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=k=>{i.push({_tag:"warning",value:k})},a=k=>{let M=k.join(` +`);o.push({_tag:"error",value:M})},f=!!e?.startsWith("prisma://"),w=cn(e),A=!!t,R=f||w;!A&&r&&R&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let S=R||!r;A&&(S||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):R?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let C={accelerate:S,ppg:w,driverAdapters:A};function L(k){return k.length>0}return L(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:C}:{ok:!0,diagnostics:{warnings:i},isUsing:C}}function Cc({copyEngine:e=!0},t){let r;try{r=qt({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...g.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=Rc({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"wasm-compiler-edge"});for(let R of o.warnings)rr(...R.value);if(!n){let R=o.errors[0];throw new ie(R.value,{clientVersion:t.clientVersion})}let s=gt(t.generator),a=s==="library",f=s==="binary",w=s==="client",A=(i.accelerate||i.ppg)&&!i.driverAdapters;return w?new Dr(t,A):i.accelerate?new Gr(t):(i.driverAdapters,i.accelerate,new _o({clientVersion:t.clientVersion}))}var _o=class{constructor(t){return new Proxy(this,{get(r,n){let i=`In order to run Prisma Client on edge runtime, either: +- Use Prisma Accelerate: https://pris.ly/d/accelerate +- Use Driver Adapters: https://pris.ly/d/driver-adapters`;throw new ie(i,t)}})}};c();u();p();m();d();l();function Sc({generator:e}){return e?.previewFeatures??[]}c();u();p();m();d();l();var Ic=e=>({command:e});c();u();p();m();d();l();c();u();p();m();d();l();var kc=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);c();u();p();m();d();l();l();function Jt(e){try{return Oc(e,"fast")}catch{return Oc(e,"slow")}}function Oc(e,t){return JSON.stringify(e.map(r=>_c(r,t)))}function _c(e,t){if(Array.isArray(e))return e.map(r=>_c(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(wt(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(se.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(y.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(Ef(e))return{prisma__type:"bytes",prisma__value:y.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:y.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?Mc(e):e}function Ef(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Mc(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Dc);let t={};for(let r of Object.keys(e))t[r]=Dc(e[r]);return t}function Dc(e){return typeof e=="bigint"?e.toString():Mc(e)}var xf=/^(\s*alter\s)/i,Nc=K("prisma:client");function Mo(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&xf.exec(t))throw new Error(`Running ALTER using ${n} is not supported +Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. + +Example: + await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) + +More Information: https://pris.ly/d/execute-raw +`)}var No=({clientMethod:e,activeProvider:t})=>r=>{let n="",i;if(In(r))n=r.sql,i={values:Jt(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:Jt(s||[]),__prismaRawParameters__:!0}}else switch(t){case"sqlite":case"mysql":{n=r.sql,i={values:Jt(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:Jt(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=kc(r),i={values:Jt(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${t} provider does not support ${e}`)}return i?.values?Nc(`prisma.${e}(${n}, ${i.values})`):Nc(`prisma.${e}(${n})`),{query:n,parameters:i}},Lc={requestArgsToMiddlewareArgs(e){return[e.strings,...e.values]},middlewareArgsToRequestArgs(e){let[t,...r]=e;return new fe(t,r)}},Uc={requestArgsToMiddlewareArgs(e){return[e]},middlewareArgsToRequestArgs(e){return e[0]}};c();u();p();m();d();l();function Lo(e){return function(r,n){let i,o=(s=e)=>{try{return s===void 0||s?.kind==="itx"?i??=Fc(r(s)):Fc(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Fc(e){return typeof e.then=="function"?e:Promise.resolve(e)}c();u();p();m();d();l();var Pf=Ei.split(".")[0],Tf={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(e,t){return t()}},Uo=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(t){return this.getGlobalTracingHelper().getTraceParent(t)}dispatchEngineSpans(t){return this.getGlobalTracingHelper().dispatchEngineSpans(t)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(t,r){return this.getGlobalTracingHelper().runInChildSpan(t,r)}getGlobalTracingHelper(){let t=globalThis[`V${Pf}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return t?.helper??r?.helper??Tf}};function $c(){return new Uo}c();u();p();m();d();l();function Vc(e,t=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--e===0&&r(t()),i?.(n)}}}c();u();p();m();d();l();function qc(e){return typeof e=="string"?e:e.reduce((t,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?t:t&&(r==="info"||t==="info")?"info":n},void 0)}c();u();p();m();d();l();c();u();p();m();d();l();function oi(e){return typeof e.batchRequestIdx=="number"}c();u();p();m();d();l();function Bc(e){if(e.action!=="findUnique"&&e.action!=="findUniqueOrThrow")return;let t=[];return e.modelName&&t.push(e.modelName),e.query.arguments&&t.push(Fo(e.query.arguments)),t.push(Fo(e.query.selection)),t.join("")}function Fo(e){return`(${Object.keys(e).sort().map(r=>{let n=e[r];return typeof n=="object"&&n!==null?`(${r} ${Fo(n)})`:r}).join(" ")})`}c();u();p();m();d();l();var vf={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function $o(e){return vf[e]}c();u();p();m();d();l();var si=class{constructor(t){this.options=t;this.batches={}}batches;tickActive=!1;request(t){let r=this.options.batchBy(t);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,g.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:t,resolve:n,reject:i})})):this.options.singleLoader(t)}dispatchBatches(){for(let t in this.batches){let r=this.batches[t];delete this.batches[t],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;iut("bigint",r));case"bytes-array":return t.map(r=>ut("bytes",r));case"decimal-array":return t.map(r=>ut("decimal",r));case"datetime-array":return t.map(r=>ut("datetime",r));case"date-array":return t.map(r=>ut("date",r));case"time-array":return t.map(r=>ut("time",r));default:return t}}function ai(e){let t=[],r=Af(e);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(R=>R.protocolQuery),f=this.client._tracingHelper.getTraceParent(s),w=n.some(R=>$o(R.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:f,transaction:Cf(o),containsWrite:w,customDataProxyFetch:i})).map((R,S)=>{if(R instanceof Error)return R;try{return this.mapQueryEngineResult(n[S],R)}catch(C){return C}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?jc(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:$o(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Bc(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(t){try{return await this.dataloader.request(t)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=t;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:t.globalOmit})}}mapQueryEngineResult({dataPath:t,unpacker:r},n){let i=n?.data,o=this.unpack(i,t,r);return g.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(t){try{this.handleRequestError(t)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:t.clientMethod,timestamp:new Date}),r}}handleRequestError({error:t,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(Rf(t),Sf(t,i))throw t;if(t instanceof X&&If(t)){let w=Qc(t.meta);Tn({args:o,errors:[w],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let f=t.message;if(n&&(f=dn({callsite:n,originalMethod:r,isPanic:t.isPanic,showColors:this.client._errorFormat==="pretty",message:f})),f=this.sanitizeMessage(f),t.code){let w=s?{modelName:s,...t.meta}:t.meta;throw new X(f,{code:t.code,clientVersion:this.client._clientVersion,meta:w,batchRequestIdx:t.batchRequestIdx})}else{if(t.isPanic)throw new ae(f,this.client._clientVersion);if(t instanceof ne)throw new ne(f,{clientVersion:this.client._clientVersion,batchRequestIdx:t.batchRequestIdx});if(t instanceof F)throw new F(f,this.client._clientVersion);if(t instanceof ae)throw new ae(f,this.client._clientVersion)}throw t.clientVersion=this.client._clientVersion,t}sanitizeMessage(t){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?ht(t):t}unpack(t,r,n){if(!t||(t.data&&(t=t.data),!t))return t;let i=Object.keys(t)[0],o=Object.values(t)[0],s=r.filter(w=>w!=="select"&&w!=="include"),a=qi(o,s),f=i==="queryRaw"?ai(a):Qe(a);return n?n(f):f}get[Symbol.toStringTag](){return"RequestHandler"}};function Cf(e){if(e){if(e.kind==="batch")return{kind:"batch",options:{isolationLevel:e.isolationLevel}};if(e.kind==="itx")return{kind:"itx",options:jc(e)};Me(e,"Unknown transaction kind")}}function jc(e){return{id:e.id,payload:e.payload}}function Sf(e,t){return oi(e)&&t?.kind==="batch"&&e.batchRequestIdx!==t.index}function If(e){return e.code==="P2009"||e.code==="P2012"}function Qc(e){if(e.kind==="Union")return{kind:"Union",errors:e.errors.map(Qc)};if(Array.isArray(e.selectionPath)){let[,...t]=e.selectionPath;return{...e,selectionPath:t}}return e}c();u();p();m();d();l();var Hc=Zn;c();u();p();m();d();l();var zc=$e(Ii());c();u();p();m();d();l();var V=class extends Error{constructor(t){super(t+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};D(V,"PrismaClientConstructorValidationError");var Gc=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],Jc=["pretty","colorless","minimal"],Wc=["info","query","warn","error"],kf={datasources:(e,{datasourceNames:t})=>{if(e){if(typeof e!="object"||Array.isArray(e))throw new V(`Invalid value ${JSON.stringify(e)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(e)){if(!t.includes(r)){let i=Wt(r,t)||` Available datasources: ${t.join(", ")}`;throw new V(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new V(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new V(`Invalid value ${JSON.stringify(e)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new V(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(e,t)=>{if(!e&>(t.generator)==="client")throw new V('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(e!==null){if(e===void 0)throw new V('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(gt(t.generator)==="binary")throw new V('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:e=>{if(typeof e<"u"&&typeof e!="string")throw new V(`Invalid value ${JSON.stringify(e)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:e=>{if(e){if(typeof e!="string")throw new V(`Invalid value ${JSON.stringify(e)} for "errorFormat" provided to PrismaClient constructor.`);if(!Jc.includes(e)){let t=Wt(e,Jc);throw new V(`Invalid errorFormat ${e} provided to PrismaClient constructor.${t}`)}}},log:e=>{if(!e)return;if(!Array.isArray(e))throw new V(`Invalid value ${JSON.stringify(e)} for "log" provided to PrismaClient constructor.`);function t(r){if(typeof r=="string"&&!Wc.includes(r)){let n=Wt(r,Wc);throw new V(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of e){t(r);let n={level:t,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=Wt(i,o);throw new V(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new V(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:e=>{if(!e)return;let t=e.maxWait;if(t!=null&&t<=0)throw new V(`Invalid value ${t} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=e.timeout;if(r!=null&&r<=0)throw new V(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(e,t)=>{if(typeof e!="object")throw new V('"omit" option is expected to be an object.');if(e===null)throw new V('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(e)){let o=Df(n,t.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let f=o.fields.find(w=>w.name===s);if(!f){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(f.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new V(_f(e,r))},__internal:e=>{if(!e)return;let t=["debug","engine","configOverride"];if(typeof e!="object")throw new V(`Invalid value ${JSON.stringify(e)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(e))if(!t.includes(r)){let n=Wt(r,t);throw new V(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function Yc(e,t){for(let[r,n]of Object.entries(e)){if(!Gc.includes(r)){let i=Wt(r,Gc);throw new V(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}kf[r](n,t)}if(e.datasourceUrl&&e.datasources)throw new V('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function Wt(e,t){if(t.length===0||typeof e!="string")return"";let r=Of(e,t);return r?` Did you mean "${r}"?`:""}function Of(e,t){if(t.length===0)return null;let r=t.map(i=>({value:i,distance:(0,zc.default)(e,i)}));r.sort((i,o)=>i.distanceqe(n)===t);if(r)return e[r]}function _f(e,t){let r=Rt(e);for(let o of t)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Pn(r,"colorless");return`Error validating "omit" option: + +${i} + +${n}`}c();u();p();m();d();l();function Zc(e){return e.length===0?Promise.resolve([]):new Promise((t,r)=>{let n=new Array(e.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===e.length&&(o=!0,i?r(i):t(n)))},f=w=>{o||(o=!0,r(w))};for(let w=0;w{n[w]=A,a()},A=>{if(!oi(A)){f(A);return}A.batchRequestIdx===w?f(A):(i||(i=A),a())})})}var We=K("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Mf={requestArgsToMiddlewareArgs:e=>e,middlewareArgsToRequestArgs:e=>e},Nf=Symbol.for("prisma.client.transaction.id"),Lf={id:0,nextId(){return++this.id}};function tu(e){class t{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=Lo();constructor(n){e=n?.__internal?.configOverride?.(e)??e,$a(e),n&&Yc(n,e);let i=new kn().on("error",()=>{});this._extensions=Ct.empty(),this._previewFeatures=Sc(e),this._clientVersion=e.clientVersion??Hc,this._activeProvider=e.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=$c();let o=e.relativeEnvPaths&&{rootEnvPath:e.relativeEnvPaths.rootEnvPath&&rn.resolve(e.dirname,e.relativeEnvPaths.rootEnvPath),schemaEnvPath:e.relativeEnvPaths.schemaEnvPath&&rn.resolve(e.dirname,e.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let f=e.activeProvider==="postgresql"||e.activeProvider==="cockroachdb"?"postgres":e.activeProvider;if(s.provider!==f)throw new F(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${f}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new F("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=e.injectableEdgeEnv?.();try{let f=n??{},w=f.__internal??{},A=w.debug===!0;A&&K.enable("prisma:client");let R=rn.resolve(e.dirname,e.relativePath);fs.existsSync(R)||(R=e.dirname),We("dirname",e.dirname),We("relativePath",e.relativePath),We("cwd",R);let S=w.engine||{};if(f.errorFormat?this._errorFormat=f.errorFormat:g.env.NODE_ENV==="production"?this._errorFormat="minimal":g.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=e.runtimeDataModel,this._engineConfig={cwd:R,dirname:e.dirname,enableDebugLogs:A,allowTriggerPanic:S.allowTriggerPanic,prismaPath:S.binaryPath??void 0,engineEndpoint:S.endpoint,generator:e.generator,showColors:this._errorFormat==="pretty",logLevel:f.log&&qc(f.log),logQueries:f.log&&!!(typeof f.log=="string"?f.log==="query":f.log.find(C=>typeof C=="string"?C==="query":C.level==="query")),env:a?.parsed??{},flags:[],engineWasm:e.engineWasm,compilerWasm:e.compilerWasm,clientVersion:e.clientVersion,engineVersion:e.engineVersion,previewFeatures:this._previewFeatures,activeProvider:e.activeProvider,inlineSchema:e.inlineSchema,overrideDatasources:Va(f,e.datasourceNames),inlineDatasources:e.inlineDatasources,inlineSchemaHash:e.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:f.transactionOptions?.maxWait??2e3,timeout:f.transactionOptions?.timeout??5e3,isolationLevel:f.transactionOptions?.isolationLevel},logEmitter:i,isBundled:e.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:qt,getBatchRequestPayload:kt,prismaGraphQLToJSError:_n,PrismaClientUnknownRequestError:ne,PrismaClientInitializationError:F,PrismaClientKnownRequestError:X,debug:K("prisma:client:accelerateEngine"),engineVersion:eu.version,clientVersion:e.clientVersion}},We("clientVersion",e.clientVersion),this._engine=Cc(e,this._engineConfig),this._requestHandler=new li(this,i),f.log)for(let C of f.log){let L=typeof C=="string"?C:C.emit==="stdout"?C.level:null;L&&this.$on(L,k=>{tr.log(`${tr.tags[L]??""}`,k.message||k.query)})}}catch(f){throw f.clientVersion=this._clientVersion,f}return this._appliedParent=hr(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{ds()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:No({clientMethod:i,activeProvider:a}),callsite:je(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=Xc(n,i);return Mo(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new ie("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(Mo(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(e.activeProvider!=="mongodb")throw new ie(`The ${e.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:Ic,callsite:je(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:No({clientMethod:i,activeProvider:a}),callsite:je(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...Xc(n,i));throw new ie("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new ie("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Lf.nextId(),s=Vc(n.length),a=n.map((f,w)=>{if(f?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let A=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,R={kind:"batch",id:o,index:w,isolationLevel:A,lock:s};return f.requestTransaction?.(R)??f});return Zc(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),f;try{let w={kind:"itx",...a};f=await n(this._createItxClient(w)),await this._engine.transaction("commit",o,a)}catch(w){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),w}return f}_createItxClient(n){return Pe(hr(Pe(va(this),[le("_appliedParent",()=>this._appliedParent._createItxClient(n)),le("_createPrismaPromise",()=>Lo(n)),le(Nf,()=>n.id)])),[It(Ia)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Mf,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async f=>{let{runInTransaction:w,args:A,...R}=f,S={...n,...R};A&&(S.args=i.middlewareArgsToRequestArgs(A)),n.transaction!==void 0&&w===!1&&delete S.transaction;let C=await _a(this,S);return S.model?Sa({result:C,modelName:S.model,args:S.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):C};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:f,argsMapper:w,transaction:A,unpacker:R,otelParentCtx:S,customDataProxyFetch:C}){try{n=w?w(n):n;let L={name:"serialize"},k=this._tracingHelper.runInChildSpan(L,()=>Cn({modelName:f,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return K.enabled("prisma:client")&&(We("Prisma Client call:"),We(`prisma.${i}(${fa(n)})`),We("Generated request:"),We(JSON.stringify(k,null,2)+` +`)),A?.kind==="batch"&&await A.lock,this._requestHandler.request({protocolQuery:k,modelName:f,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:A,unpacker:R,otelParentCtx:S,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:C})}catch(L){throw L.clientVersion=this._clientVersion,L}}$metrics=new St(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=Aa}return t}function Xc(e,t){return Uf(e)?[new fe(e,t),Lc]:[e,Uc]}function Uf(e){return Array.isArray(e)&&Array.isArray(e.raw)}c();u();p();m();d();l();var Ff=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function ru(e){return new Proxy(e,{get(t,r){if(r in t)return t[r];if(!Ff.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}c();u();p();m();d();l();l();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); +//# sourceMappingURL=wasm-compiler-edge.js.map diff --git a/packages/identity-prisma-client/runtime/wasm-engine-edge.js b/packages/identity-prisma-client/runtime/wasm-engine-edge.js new file mode 100644 index 0000000..4068e4e --- /dev/null +++ b/packages/identity-prisma-client/runtime/wasm-engine-edge.js @@ -0,0 +1,37 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +"use strict";var zo=Object.create;var St=Object.defineProperty;var Yo=Object.getOwnPropertyDescriptor;var Xo=Object.getOwnPropertyNames;var Zo=Object.getPrototypeOf,es=Object.prototype.hasOwnProperty;var ie=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ot=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),rt=(t,e)=>{for(var r in e)St(t,r,{get:e[r],enumerable:!0})},dn=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Xo(e))!es.call(t,i)&&i!==r&&St(t,i,{get:()=>e[i],enumerable:!(n=Yo(e,i))||n.enumerable});return t};var kt=(t,e,r)=>(r=t!=null?zo(Zo(t)):{},dn(e||!t||!t.__esModule?St(r,"default",{value:t,enumerable:!0}):r,t)),ts=t=>dn(St({},"__esModule",{value:!0}),t);function xr(t,e){if(e=e.toLowerCase(),e==="utf8"||e==="utf-8")return new y(os.encode(t));if(e==="base64"||e==="base64url")return t=t.replace(/-/g,"+").replace(/_/g,"/"),t=t.replace(/[^A-Za-z0-9+/]/g,""),new y([...atob(t)].map(r=>r.charCodeAt(0)));if(e==="binary"||e==="ascii"||e==="latin1"||e==="latin-1")return new y([...t].map(r=>r.charCodeAt(0)));if(e==="ucs2"||e==="ucs-2"||e==="utf16le"||e==="utf-16le"){let r=new y(t.length*2),n=new DataView(r.buffer);for(let i=0;ia.startsWith("get")||a.startsWith("set")),n=r.map(a=>a.replace("get","read").replace("set","write")),i=(a,f)=>function(h=0){return V(h,"offset"),X(h,"offset"),$(h,"offset",this.length-1),new DataView(this.buffer)[r[a]](h,f)},o=(a,f)=>function(h,C=0){let A=r[a].match(/set(\w+\d+)/)[1].toLowerCase(),k=is[A];return V(C,"offset"),X(C,"offset"),$(C,"offset",this.length-1),ns(h,"value",k[0],k[1]),new DataView(this.buffer)[r[a]](C,h,f),C+parseInt(r[a].match(/\d+/)[0])/8},s=a=>{a.forEach(f=>{f.includes("Uint")&&(t[f.replace("Uint","UInt")]=t[f]),f.includes("Float64")&&(t[f.replace("Float64","Double")]=t[f]),f.includes("Float32")&&(t[f.replace("Float32","Float")]=t[f])})};n.forEach((a,f)=>{a.startsWith("read")&&(t[a]=i(f,!1),t[a+"LE"]=i(f,!0),t[a+"BE"]=i(f,!1)),a.startsWith("write")&&(t[a]=o(f,!1),t[a+"LE"]=o(f,!0),t[a+"BE"]=o(f,!1)),s([a,a+"LE",a+"BE"])})}function gn(t){throw new Error(`Buffer polyfill does not implement "${t}"`)}function Dt(t,e){if(!(t instanceof Uint8Array))throw new TypeError(`The "${e}" argument must be an instance of Buffer or Uint8Array`)}function $(t,e,r=ls+1){if(t<0||t>r){let n=new RangeError(`The value of "${e}" is out of range. It must be >= 0 && <= ${r}. Received ${t}`);throw n.code="ERR_OUT_OF_RANGE",n}}function V(t,e){if(typeof t!="number"){let r=new TypeError(`The "${e}" argument must be of type number. Received type ${typeof t}.`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function X(t,e){if(!Number.isInteger(t)||Number.isNaN(t)){let r=new RangeError(`The value of "${e}" is out of range. It must be an integer. Received ${t}`);throw r.code="ERR_OUT_OF_RANGE",r}}function ns(t,e,r,n){if(tn){let i=new RangeError(`The value of "${e}" is out of range. It must be >= ${r} and <= ${n}. Received ${t}`);throw i.code="ERR_OUT_OF_RANGE",i}}function fn(t,e){if(typeof t!="string"){let r=new TypeError(`The "${e}" argument must be of type string. Received type ${typeof t}`);throw r.code="ERR_INVALID_ARG_TYPE",r}}function us(t,e="utf8"){return y.from(t,e)}var y,is,os,ss,as,ls,b,Er,u=ie(()=>{"use strict";y=class t extends Uint8Array{_isBuffer=!0;get offset(){return this.byteOffset}static alloc(e,r=0,n="utf8"){return fn(n,"encoding"),t.allocUnsafe(e).fill(r,n)}static allocUnsafe(e){return t.from(e)}static allocUnsafeSlow(e){return t.from(e)}static isBuffer(e){return e&&!!e._isBuffer}static byteLength(e,r="utf8"){if(typeof e=="string")return xr(e,r).byteLength;if(e&&e.byteLength)return e.byteLength;let n=new TypeError('The "string" argument must be of type string or an instance of Buffer or ArrayBuffer.');throw n.code="ERR_INVALID_ARG_TYPE",n}static isEncoding(e){return as.includes(e)}static compare(e,r){Dt(e,"buff1"),Dt(r,"buff2");for(let n=0;nr[n])return 1}return e.length===r.length?0:e.length>r.length?1:-1}static from(e,r="utf8"){if(e&&typeof e=="object"&&e.type==="Buffer")return new t(e.data);if(typeof e=="number")return new t(new Uint8Array(e));if(typeof e=="string")return xr(e,r);if(ArrayBuffer.isView(e)){let{byteOffset:n,byteLength:i,buffer:o}=e;return"map"in e&&typeof e.map=="function"?new t(e.map(s=>s%256),n,i):new t(o,n,i)}if(e&&typeof e=="object"&&("length"in e||"byteLength"in e||"buffer"in e))return new t(e);throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}static concat(e,r){if(e.length===0)return t.alloc(0);let n=[].concat(...e.map(o=>[...o])),i=t.alloc(r!==void 0?r:n.length);return i.set(r!==void 0?n.slice(0,r):n),i}slice(e=0,r=this.length){return this.subarray(e,r)}subarray(e=0,r=this.length){return Object.setPrototypeOf(super.subarray(e,r),t.prototype)}reverse(){return super.reverse(),this}readIntBE(e,r){V(e,"offset"),X(e,"offset"),$(e,"offset",this.length-1),V(r,"byteLength"),X(r,"byteLength");let n=new DataView(this.buffer,e,r),i=0;for(let o=0;o=0;o--)i.setUint8(o,e&255),e=e/256;return r+n}writeUintBE(e,r,n){return this.writeUIntBE(e,r,n)}writeUIntLE(e,r,n){V(r,"offset"),X(r,"offset"),$(r,"offset",this.length-1),V(n,"byteLength"),X(n,"byteLength");let i=new DataView(this.buffer,r,n);for(let o=0;or===e[n])}copy(e,r=0,n=0,i=this.length){$(r,"targetStart"),$(n,"sourceStart",this.length),$(i,"sourceEnd"),r>>>=0,n>>>=0,i>>>=0;let o=0;for(;n=this.length?this.length-a:e.length),a);return this}includes(e,r=null,n="utf-8"){return this.indexOf(e,r,n)!==-1}lastIndexOf(e,r=null,n="utf-8"){return this.indexOf(e,r,n,!0)}indexOf(e,r=null,n="utf-8",i=!1){let o=i?this.findLastIndex.bind(this):this.findIndex.bind(this);n=typeof r=="string"?r:n;let s=t.from(typeof e=="number"?[e]:e,n),a=typeof r=="string"?0:r;return a=typeof r=="number"?a:null,a=Number.isNaN(a)?null:a,a??=i?this.length:0,a=a<0?this.length+a:a,s.length===0&&i===!1?a>=this.length?this.length:a:s.length===0&&i===!0?(a>=this.length?this.length:a)||this.length:o((f,h)=>(i?h<=a:h>=a)&&this[h]===s[0]&&s.every((A,k)=>this[h+k]===A))}toString(e="utf8",r=0,n=this.length){if(r=r<0?0:r,e=e.toString().toLowerCase(),n<=0)return"";if(e==="utf8"||e==="utf-8")return ss.decode(this.slice(r,n));if(e==="base64"||e==="base64url"){let i=btoa(this.reduce((o,s)=>o+Er(s),""));return e==="base64url"?i.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):i}if(e==="binary"||e==="ascii"||e==="latin1"||e==="latin-1")return this.slice(r,n).reduce((i,o)=>i+Er(o&(e==="ascii"?127:255)),"");if(e==="ucs2"||e==="ucs-2"||e==="utf16le"||e==="utf-16le"){let i=new DataView(this.buffer.slice(r,n));return Array.from({length:i.byteLength/2},(o,s)=>s*2+1i+o.toString(16).padStart(2,"0"),"");gn(`encoding "${e}"`)}toLocaleString(){return this.toString()}inspect(){return``}};is={int8:[-128,127],int16:[-32768,32767],int32:[-2147483648,2147483647],uint8:[0,255],uint16:[0,65535],uint32:[0,4294967295],float32:[-1/0,1/0],float64:[-1/0,1/0],bigint64:[-0x8000000000000000n,0x7fffffffffffffffn],biguint64:[0n,0xffffffffffffffffn]},os=new TextEncoder,ss=new TextDecoder,as=["utf8","utf-8","hex","base64","ascii","binary","base64url","ucs2","ucs-2","utf16le","utf-16le","latin1","latin-1"],ls=4294967295;rs(y.prototype);b=new Proxy(us,{construct(t,[e,r]){return y.from(e,r)},get(t,e){return y[e]}}),Er=String.fromCodePoint});var g,E,c=ie(()=>{"use strict";g={nextTick:(t,...e)=>{setTimeout(()=>{t(...e)},0)},env:{},version:"",cwd:()=>"/",stderr:{},argv:["/bin/node"],pid:1e4},{cwd:E}=g});var P,m=ie(()=>{"use strict";P=globalThis.performance??(()=>{let t=Date.now();return{now:()=>Date.now()-t}})()});var x,p=ie(()=>{"use strict";x=()=>{};x.prototype=x});var w,d=ie(()=>{"use strict";w=class{value;constructor(e){this.value=e}deref(){return this.value}}});function wn(t,e){var r,n,i,o,s,a,f,h,C=t.constructor,A=C.precision;if(!t.s||!e.s)return e.s||(e=new C(t)),q?L(e,A):e;if(f=t.d,h=e.d,s=t.e,i=e.e,f=f.slice(),o=s-i,o){for(o<0?(n=f,o=-o,a=h.length):(n=h,i=s,a=f.length),s=Math.ceil(A/N),a=s>a?s+1:a+1,o>a&&(o=a,n.length=1),n.reverse();o--;)n.push(0);n.reverse()}for(a=f.length,o=h.length,a-o<0&&(o=a,n=h,h=f,f=n),r=0;o;)r=(f[--o]=f[o]+h[o]+r)/J|0,f[o]%=J;for(r&&(f.unshift(r),++i),a=f.length;f[--a]==0;)f.pop();return e.d=f,e.e=i,q?L(e,A):e}function ce(t,e,r){if(t!==~~t||tr)throw Error(Oe+t)}function ue(t){var e,r,n,i=t.length-1,o="",s=t[0];if(i>0){for(o+=s,e=1;e16)throw Error(vr+j(t));if(!t.s)return new C(te);for(e==null?(q=!1,a=A):a=e,s=new C(.03125);t.abs().gte(.1);)t=t.times(s),h+=5;for(n=Math.log(Se(2,h))/Math.LN10*2+5|0,a+=n,r=i=o=new C(te),C.precision=a;;){if(i=L(i.times(t),a),r=r.times(++f),s=o.plus(he(i,r,a)),ue(s.d).slice(0,a)===ue(o.d).slice(0,a)){for(;h--;)o=L(o.times(o),a);return C.precision=A,e==null?(q=!0,L(o,A)):o}o=s}}function j(t){for(var e=t.e*N,r=t.d[0];r>=10;r/=10)e++;return e}function Pr(t,e,r){if(e>t.LN10.sd())throw q=!0,r&&(t.precision=r),Error(oe+"LN10 precision limit exceeded");return L(new t(t.LN10),e)}function Pe(t){for(var e="";t--;)e+="0";return e}function nt(t,e){var r,n,i,o,s,a,f,h,C,A=1,k=10,R=t,_=R.d,O=R.constructor,D=O.precision;if(R.s<1)throw Error(oe+(R.s?"NaN":"-Infinity"));if(R.eq(te))return new O(0);if(e==null?(q=!1,h=D):h=e,R.eq(10))return e==null&&(q=!0),Pr(O,h);if(h+=k,O.precision=h,r=ue(_),n=r.charAt(0),o=j(R),Math.abs(o)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)R=R.times(t),r=ue(R.d),n=r.charAt(0),A++;o=j(R),n>1?(R=new O("0."+r),o++):R=new O(n+"."+r.slice(1))}else return f=Pr(O,h+2,D).times(o+""),R=nt(new O(n+"."+r.slice(1)),h-k).plus(f),O.precision=D,e==null?(q=!0,L(R,D)):R;for(a=s=R=he(R.minus(te),R.plus(te),h),C=L(R.times(R),h),i=3;;){if(s=L(s.times(C),h),f=a.plus(he(s,new O(i),h)),ue(f.d).slice(0,h)===ue(a.d).slice(0,h))return a=a.times(2),o!==0&&(a=a.plus(Pr(O,h+2,D).times(o+""))),a=he(a,new O(A),h),O.precision=D,e==null?(q=!0,L(a,D)):a;a=f,i+=2}}function yn(t,e){var r,n,i;for((r=e.indexOf("."))>-1&&(e=e.replace(".","")),(n=e.search(/e/i))>0?(r<0&&(r=n),r+=+e.slice(n+1),e=e.substring(0,n)):r<0&&(r=e.length),n=0;e.charCodeAt(n)===48;)++n;for(i=e.length;e.charCodeAt(i-1)===48;)--i;if(e=e.slice(n,i),e){if(i-=n,r=r-n-1,t.e=Fe(r/N),t.d=[],n=(r+1)%N,r<0&&(n+=N),nIt||t.e<-It))throw Error(vr+r)}else t.s=0,t.e=0,t.d=[0];return t}function L(t,e,r){var n,i,o,s,a,f,h,C,A=t.d;for(s=1,o=A[0];o>=10;o/=10)s++;if(n=e-s,n<0)n+=N,i=e,h=A[C=0];else{if(C=Math.ceil((n+1)/N),o=A.length,C>=o)return t;for(h=o=A[C],s=1;o>=10;o/=10)s++;n%=N,i=n-N+s}if(r!==void 0&&(o=Se(10,s-i-1),a=h/o%10|0,f=e<0||A[C+1]!==void 0||h%o,f=r<4?(a||f)&&(r==0||r==(t.s<0?3:2)):a>5||a==5&&(r==4||f||r==6&&(n>0?i>0?h/Se(10,s-i):0:A[C-1])%10&1||r==(t.s<0?8:7))),e<1||!A[0])return f?(o=j(t),A.length=1,e=e-o-1,A[0]=Se(10,(N-e%N)%N),t.e=Fe(-e/N)||0):(A.length=1,A[0]=t.e=t.s=0),t;if(n==0?(A.length=C,o=1,C--):(A.length=C+1,o=Se(10,N-n),A[C]=i>0?(h/Se(10,s-i)%Se(10,i)|0)*o:0),f)for(;;)if(C==0){(A[0]+=o)==J&&(A[0]=1,++t.e);break}else{if(A[C]+=o,A[C]!=J)break;A[C--]=0,o=1}for(n=A.length;A[--n]===0;)A.pop();if(q&&(t.e>It||t.e<-It))throw Error(vr+j(t));return t}function En(t,e){var r,n,i,o,s,a,f,h,C,A,k=t.constructor,R=k.precision;if(!t.s||!e.s)return e.s?e.s=-e.s:e=new k(t),q?L(e,R):e;if(f=t.d,A=e.d,n=e.e,h=t.e,f=f.slice(),s=h-n,s){for(C=s<0,C?(r=f,s=-s,a=A.length):(r=A,n=h,a=f.length),i=Math.max(Math.ceil(R/N),a)+2,s>i&&(s=i,r.length=1),r.reverse(),i=s;i--;)r.push(0);r.reverse()}else{for(i=f.length,a=A.length,C=i0;--i)f[a++]=0;for(i=A.length;i>s;){if(f[--i]0?o=o.charAt(0)+"."+o.slice(1)+Pe(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(i<0?"e":"e+")+i):i<0?(o="0."+Pe(-i-1)+o,r&&(n=r-s)>0&&(o+=Pe(n))):i>=s?(o+=Pe(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+Pe(n))):((n=i+1)0&&(i+1===s&&(o+="."),o+=Pe(n))),t.s<0?"-"+o:o}function hn(t,e){if(t.length>e)return t.length=e,!0}function Pn(t){var e,r,n;function i(o){var s=this;if(!(s instanceof i))return new i(o);if(s.constructor=i,o instanceof i){s.s=o.s,s.e=o.e,s.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Oe+o);if(o>0)s.s=1;else if(o<0)o=-o,s.s=-1;else{s.s=0,s.e=0,s.d=[0];return}if(o===~~o&&o<1e7){s.e=0,s.d=[o];return}return yn(s,o.toString())}else if(typeof o!="string")throw Error(Oe+o);if(o.charCodeAt(0)===45?(o=o.slice(1),s.s=-1):s.s=1,ms.test(o))yn(s,o);else throw Error(Oe+o)}if(i.prototype=S,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=Pn,i.config=i.set=ps,t===void 0&&(t={}),t)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],e=0;e=i[e+1]&&n<=i[e+2])this[r]=n;else throw Error(Oe+r+": "+n);if((n=t[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Oe+r+": "+n);return this}var Le,cs,Tr,q,oe,Oe,vr,Fe,Se,ms,te,J,N,bn,It,S,he,Tr,Mt,vn=ie(()=>{"use strict";u();c();m();p();d();l();Le=1e9,cs={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},q=!0,oe="[DecimalError] ",Oe=oe+"Invalid argument: ",vr=oe+"Exponent out of range: ",Fe=Math.floor,Se=Math.pow,ms=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,J=1e7,N=7,bn=9007199254740991,It=Fe(bn/N),S={};S.absoluteValue=S.abs=function(){var t=new this.constructor(this);return t.s&&(t.s=1),t};S.comparedTo=S.cmp=function(t){var e,r,n,i,o=this;if(t=new o.constructor(t),o.s!==t.s)return o.s||-t.s;if(o.e!==t.e)return o.e>t.e^o.s<0?1:-1;for(n=o.d.length,i=t.d.length,e=0,r=nt.d[e]^o.s<0?1:-1;return n===i?0:n>i^o.s<0?1:-1};S.decimalPlaces=S.dp=function(){var t=this,e=t.d.length-1,r=(e-t.e)*N;if(e=t.d[e],e)for(;e%10==0;e/=10)r--;return r<0?0:r};S.dividedBy=S.div=function(t){return he(this,new this.constructor(t))};S.dividedToIntegerBy=S.idiv=function(t){var e=this,r=e.constructor;return L(he(e,new r(t),0,1),r.precision)};S.equals=S.eq=function(t){return!this.cmp(t)};S.exponent=function(){return j(this)};S.greaterThan=S.gt=function(t){return this.cmp(t)>0};S.greaterThanOrEqualTo=S.gte=function(t){return this.cmp(t)>=0};S.isInteger=S.isint=function(){return this.e>this.d.length-2};S.isNegative=S.isneg=function(){return this.s<0};S.isPositive=S.ispos=function(){return this.s>0};S.isZero=function(){return this.s===0};S.lessThan=S.lt=function(t){return this.cmp(t)<0};S.lessThanOrEqualTo=S.lte=function(t){return this.cmp(t)<1};S.logarithm=S.log=function(t){var e,r=this,n=r.constructor,i=n.precision,o=i+5;if(t===void 0)t=new n(10);else if(t=new n(t),t.s<1||t.eq(te))throw Error(oe+"NaN");if(r.s<1)throw Error(oe+(r.s?"NaN":"-Infinity"));return r.eq(te)?new n(0):(q=!1,e=he(nt(r,o),nt(t,o),o),q=!0,L(e,i))};S.minus=S.sub=function(t){var e=this;return t=new e.constructor(t),e.s==t.s?En(e,t):wn(e,(t.s=-t.s,t))};S.modulo=S.mod=function(t){var e,r=this,n=r.constructor,i=n.precision;if(t=new n(t),!t.s)throw Error(oe+"NaN");return r.s?(q=!1,e=he(r,t,0,1).times(t),q=!0,r.minus(e)):L(new n(r),i)};S.naturalExponential=S.exp=function(){return xn(this)};S.naturalLogarithm=S.ln=function(){return nt(this)};S.negated=S.neg=function(){var t=new this.constructor(this);return t.s=-t.s||0,t};S.plus=S.add=function(t){var e=this;return t=new e.constructor(t),e.s==t.s?wn(e,t):En(e,(t.s=-t.s,t))};S.precision=S.sd=function(t){var e,r,n,i=this;if(t!==void 0&&t!==!!t&&t!==1&&t!==0)throw Error(Oe+t);if(e=j(i)+1,n=i.d.length-1,r=n*N+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return t&&e>r?e:r};S.squareRoot=S.sqrt=function(){var t,e,r,n,i,o,s,a=this,f=a.constructor;if(a.s<1){if(!a.s)return new f(0);throw Error(oe+"NaN")}for(t=j(a),q=!1,i=Math.sqrt(+a),i==0||i==1/0?(e=ue(a.d),(e.length+t)%2==0&&(e+="0"),i=Math.sqrt(e),t=Fe((t+1)/2)-(t<0||t%2),i==1/0?e="5e"+t:(e=i.toExponential(),e=e.slice(0,e.indexOf("e")+1)+t),n=new f(e)):n=new f(i.toString()),r=f.precision,i=s=r+3;;)if(o=n,n=o.plus(he(a,o,s+2)).times(.5),ue(o.d).slice(0,s)===(e=ue(n.d)).slice(0,s)){if(e=e.slice(s-3,s+1),i==s&&e=="4999"){if(L(o,r+1,0),o.times(o).eq(a)){n=o;break}}else if(e!="9999")break;s+=4}return q=!0,L(n,r)};S.times=S.mul=function(t){var e,r,n,i,o,s,a,f,h,C=this,A=C.constructor,k=C.d,R=(t=new A(t)).d;if(!C.s||!t.s)return new A(0);for(t.s*=C.s,r=C.e+t.e,f=k.length,h=R.length,f=0;){for(e=0,i=f+n;i>n;)a=o[i]+R[n]*k[i-n-1]+e,o[i--]=a%J|0,e=a/J|0;o[i]=(o[i]+e)%J|0}for(;!o[--s];)o.pop();return e?++r:o.shift(),t.d=o,t.e=r,q?L(t,A.precision):t};S.toDecimalPlaces=S.todp=function(t,e){var r=this,n=r.constructor;return r=new n(r),t===void 0?r:(ce(t,0,Le),e===void 0?e=n.rounding:ce(e,0,8),L(r,t+j(r)+1,e))};S.toExponential=function(t,e){var r,n=this,i=n.constructor;return t===void 0?r=ke(n,!0):(ce(t,0,Le),e===void 0?e=i.rounding:ce(e,0,8),n=L(new i(n),t+1,e),r=ke(n,!0,t+1)),r};S.toFixed=function(t,e){var r,n,i=this,o=i.constructor;return t===void 0?ke(i):(ce(t,0,Le),e===void 0?e=o.rounding:ce(e,0,8),n=L(new o(i),t+j(i)+1,e),r=ke(n.abs(),!1,t+j(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};S.toInteger=S.toint=function(){var t=this,e=t.constructor;return L(new e(t),j(t)+1,e.rounding)};S.toNumber=function(){return+this};S.toPower=S.pow=function(t){var e,r,n,i,o,s,a=this,f=a.constructor,h=12,C=+(t=new f(t));if(!t.s)return new f(te);if(a=new f(a),!a.s){if(t.s<1)throw Error(oe+"Infinity");return a}if(a.eq(te))return a;if(n=f.precision,t.eq(te))return L(a,n);if(e=t.e,r=t.d.length-1,s=e>=r,o=a.s,s){if((r=C<0?-C:C)<=bn){for(i=new f(te),e=Math.ceil(n/N+4),q=!1;r%2&&(i=i.times(a),hn(i.d,e)),r=Fe(r/2),r!==0;)a=a.times(a),hn(a.d,e);return q=!0,t.s<0?new f(te).div(i):L(i,n)}}else if(o<0)throw Error(oe+"NaN");return o=o<0&&t.d[Math.max(e,r)]&1?-1:1,a.s=1,q=!1,i=t.times(nt(a,n+h)),q=!0,i=xn(i),i.s=o,i};S.toPrecision=function(t,e){var r,n,i=this,o=i.constructor;return t===void 0?(r=j(i),n=ke(i,r<=o.toExpNeg||r>=o.toExpPos)):(ce(t,1,Le),e===void 0?e=o.rounding:ce(e,0,8),i=L(new o(i),t,e),r=j(i),n=ke(i,t<=r||r<=o.toExpNeg,t)),n};S.toSignificantDigits=S.tosd=function(t,e){var r=this,n=r.constructor;return t===void 0?(t=n.precision,e=n.rounding):(ce(t,1,Le),e===void 0?e=n.rounding:ce(e,0,8)),L(new n(r),t,e)};S.toString=S.valueOf=S.val=S.toJSON=S[Symbol.for("nodejs.util.inspect.custom")]=function(){var t=this,e=j(t),r=t.constructor;return ke(t,e<=r.toExpNeg||e>=r.toExpPos)};he=function(){function t(n,i){var o,s=0,a=n.length;for(n=n.slice();a--;)o=n[a]*i+s,n[a]=o%J|0,s=o/J|0;return s&&n.unshift(s),n}function e(n,i,o,s){var a,f;if(o!=s)f=o>s?1:-1;else for(a=f=0;ai[a]?1:-1;break}return f}function r(n,i,o){for(var s=0;o--;)n[o]-=s,s=n[o]1;)n.shift()}return function(n,i,o,s){var a,f,h,C,A,k,R,_,O,D,ye,z,F,Y,Re,wr,se,At,Rt=n.constructor,Ho=n.s==i.s?1:-1,le=n.d,B=i.d;if(!n.s)return new Rt(n);if(!i.s)throw Error(oe+"Division by zero");for(f=n.e-i.e,se=B.length,Re=le.length,R=new Rt(Ho),_=R.d=[],h=0;B[h]==(le[h]||0);)++h;if(B[h]>(le[h]||0)&&--f,o==null?z=o=Rt.precision:s?z=o+(j(n)-j(i))+1:z=o,z<0)return new Rt(0);if(z=z/N+2|0,h=0,se==1)for(C=0,B=B[0],z++;(h1&&(B=t(B,C),le=t(le,C),se=B.length,Re=le.length),Y=se,O=le.slice(0,se),D=O.length;D=J/2&&++wr;do C=0,a=e(B,O,se,D),a<0?(ye=O[0],se!=D&&(ye=ye*J+(O[1]||0)),C=ye/wr|0,C>1?(C>=J&&(C=J-1),A=t(B,C),k=A.length,D=O.length,a=e(A,O,k,D),a==1&&(C--,r(A,se{"use strict";vn();v=class extends Mt{static isDecimal(e){return e instanceof Mt}static random(e=20){{let n=globalThis.crypto.getRandomValues(new Uint8Array(e)).reduce((i,o)=>i+o,"");return new Mt(`0.${n.slice(0,e)}`)}}},be=v});function bs(){return!1}function Or(){return{dev:0,ino:0,mode:0,nlink:0,uid:0,gid:0,rdev:0,size:0,blksize:0,blocks:0,atimeMs:0,mtimeMs:0,ctimeMs:0,birthtimeMs:0,atime:new Date,mtime:new Date,ctime:new Date,birthtime:new Date}}function ws(){return Or()}function xs(){return[]}function Es(t){t(null,[])}function Ps(){return""}function vs(){return""}function Ts(){}function Cs(){}function As(){}function Rs(){}function Ss(){}function Os(){}function ks(){}function Ds(){}function Is(){return{close:()=>{},on:()=>{},removeAllListeners:()=>{}}}function Ms(t,e){e(null,Or())}var _s,Ls,Bn,Vn=ie(()=>{"use strict";u();c();m();p();d();l();_s={},Ls={existsSync:bs,lstatSync:Or,stat:Ms,statSync:ws,readdirSync:xs,readdir:Es,readlinkSync:Ps,realpathSync:vs,chmodSync:Ts,renameSync:Cs,mkdirSync:As,rmdirSync:Rs,rmSync:Ss,unlinkSync:Os,watchFile:ks,unwatchFile:Ds,watch:Is,promises:_s},Bn=Ls});var jn=Ot((Zc,Fs)=>{Fs.exports={name:"@prisma/internals",version:"6.19.1",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek ",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0","escape-string-regexp":"5.0.0",execa:"8.0.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","global-directory":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-engine-wasm":"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});function Ns(...t){return t.join("/")}function qs(...t){return t.join("/")}function Bs(t){let e=$n(t),r=Qn(t),[n,i]=e.split(".");return{root:"/",dir:r,base:e,ext:i,name:n}}function $n(t){let e=t.split("/");return e[e.length-1]}function Qn(t){return t.split("/").slice(0,-1).join("/")}function js(t){let e=t.split("/").filter(i=>i!==""&&i!=="."),r=[];for(let i of e)i===".."?r.pop():r.push(i);let n=r.join("/");return t.startsWith("/")?"/"+n:n}var Jn,Vs,$s,Qs,Ut,Gn=ie(()=>{"use strict";u();c();m();p();d();l();Jn="/",Vs=":";$s={sep:Jn},Qs={basename:$n,delimiter:Vs,dirname:Qn,join:qs,normalize:js,parse:Bs,posix:$s,resolve:Ns,sep:Jn},Ut=Qs});var Yn=Ot((bp,zn)=>{"use strict";u();c();m();p();d();l();zn.exports=(t,e=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof t!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof t}\``);if(typeof e!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof e}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(e===0)return t;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return t.replace(n,r.indent.repeat(e))}});var Vr=Ot((Hy,ni)=>{"use strict";u();c();m();p();d();l();ni.exports=function(){function t(e,r,n,i,o){return en?n+1:e+1:i===o?r:r+1}return function(e,r){if(e===r)return 0;if(e.length>r.length){var n=e;e=r,r=n}for(var i=e.length,o=r.length;i>0&&e.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s{"use strict";u();c();m();p();d();l()});var ui=ie(()=>{"use strict";u();c();m();p();d();l()});var Mi=Ot((zP,Qa)=>{Qa.exports={name:"@prisma/engines-version",version:"7.1.1-3.c2990dca591cba766e3b7ef5d9e8a84796e47ab7",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek ",prisma:{enginesVersion:"c2990dca591cba766e3b7ef5d9e8a84796e47ab7"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var sr,_i=ie(()=>{"use strict";u();c();m();p();d();l();sr=class{events={};on(e,r){return this.events[e]||(this.events[e]=[]),this.events[e].push(r),this}emit(e,...r){return this.events[e]?(this.events[e].forEach(n=>{n(...r)}),!0):!1}}});var Xl={};rt(Xl,{DMMF:()=>ct,Debug:()=>G,Decimal:()=>be,Extensions:()=>Cr,MetricsClient:()=>He,PrismaClientInitializationError:()=>I,PrismaClientKnownRequestError:()=>Z,PrismaClientRustPanicError:()=>xe,PrismaClientUnknownRequestError:()=>Q,PrismaClientValidationError:()=>K,Public:()=>Ar,Sql:()=>ee,createParam:()=>Ci,defineDmmfProperty:()=>Di,deserializeJsonResponse:()=>Xe,deserializeRawResult:()=>hr,dmmfToRuntimeDataModel:()=>ri,empty:()=>Fi,getPrismaClient:()=>Go,getRuntime:()=>Ze,join:()=>Li,makeStrictEnum:()=>Wo,makeTypedQueryFactory:()=>Ii,objectEnumValues:()=>zt,raw:()=>zr,serializeJsonQuery:()=>nr,skip:()=>rr,sqltag:()=>Yr,warnEnvConflicts:()=>void 0,warnOnce:()=>at});module.exports=ts(Xl);u();c();m();p();d();l();var Cr={};rt(Cr,{defineExtension:()=>Tn,getExtensionContext:()=>Cn});u();c();m();p();d();l();u();c();m();p();d();l();function Tn(t){return typeof t=="function"?t:e=>e.$extends(t)}u();c();m();p();d();l();function Cn(t){return t}var Ar={};rt(Ar,{validator:()=>An});u();c();m();p();d();l();u();c();m();p();d();l();function An(...t){return e=>e}u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();var Rr,Rn,Sn,On,kn=!0;typeof g<"u"&&({FORCE_COLOR:Rr,NODE_DISABLE_COLORS:Rn,NO_COLOR:Sn,TERM:On}=g.env||{},kn=g.stdout&&g.stdout.isTTY);var ds={enabled:!Rn&&Sn==null&&On!=="dumb"&&(Rr!=null&&Rr!=="0"||kn)};function U(t,e){let r=new RegExp(`\\x1b\\[${e}m`,"g"),n=`\x1B[${t}m`,i=`\x1B[${e}m`;return function(o){return!ds.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var zu=U(0,0),_t=U(1,22),Lt=U(2,22),Yu=U(3,23),Dn=U(4,24),Xu=U(7,27),Zu=U(8,28),ec=U(9,29),tc=U(30,39),Ue=U(31,39),In=U(32,39),Mn=U(33,39),_n=U(34,39),rc=U(35,39),Ln=U(36,39),nc=U(37,39),Fn=U(90,39),ic=U(90,39),oc=U(40,49),sc=U(41,49),ac=U(42,49),lc=U(43,49),uc=U(44,49),cc=U(45,49),mc=U(46,49),pc=U(47,49);u();c();m();p();d();l();var fs=100,Un=["green","yellow","blue","magenta","cyan","red"],Ft=[],Nn=Date.now(),gs=0,Sr=typeof g<"u"?g.env:{};globalThis.DEBUG??=Sr.DEBUG??"";globalThis.DEBUG_COLORS??=Sr.DEBUG_COLORS?Sr.DEBUG_COLORS==="true":!0;var it={enable(t){typeof t=="string"&&(globalThis.DEBUG=t)},disable(){let t=globalThis.DEBUG;return globalThis.DEBUG="",t},enabled(t){let e=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=e.some(i=>i===""||i[0]==="-"?!1:t.match(RegExp(i.split("*").join(".*")+"$"))),n=e.some(i=>i===""||i[0]!=="-"?!1:t.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...t)=>{let[e,r,...n]=t;(console.warn??console.log)(`${e} ${r}`,...n)},formatters:{}};function ys(t){let e={color:Un[gs++%Un.length],enabled:it.enabled(t),namespace:t,log:it.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=e;if(n.length!==0&&Ft.push([o,...n]),Ft.length>fs&&Ft.shift(),it.enabled(o)||i){let f=n.map(C=>typeof C=="string"?C:hs(C)),h=`+${Date.now()-Nn}ms`;Nn=Date.now(),a(o,...f,h)}};return new Proxy(r,{get:(n,i)=>e[i],set:(n,i,o)=>e[i]=o})}var G=new Proxy(ys,{get:(t,e)=>it[e],set:(t,e,r)=>it[e]=r});function hs(t,e=2){let r=new Set;return JSON.stringify(t,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},e)}function qn(){Ft.length=0}u();c();m();p();d();l();u();c();m();p();d();l();var kr=["darwin","darwin-arm64","debian-openssl-1.0.x","debian-openssl-1.1.x","debian-openssl-3.0.x","rhel-openssl-1.0.x","rhel-openssl-1.1.x","rhel-openssl-3.0.x","linux-arm64-openssl-1.1.x","linux-arm64-openssl-1.0.x","linux-arm64-openssl-3.0.x","linux-arm-openssl-1.1.x","linux-arm-openssl-1.0.x","linux-arm-openssl-3.0.x","linux-musl","linux-musl-openssl-3.0.x","linux-musl-arm64-openssl-1.1.x","linux-musl-arm64-openssl-3.0.x","linux-nixos","linux-static-x64","linux-static-arm64","windows","freebsd11","freebsd12","freebsd13","freebsd14","freebsd15","openbsd","netbsd","arm"];u();c();m();p();d();l();var Us=jn(),Dr=Us.version;u();c();m();p();d();l();function Ne(t){let e=Js();return e||(t?.config.engineType==="library"?"library":t?.config.engineType==="binary"?"binary":t?.config.engineType==="client"?"client":Gs())}function Js(){let t=g.env.PRISMA_CLIENT_ENGINE_TYPE;return t==="library"?"library":t==="binary"?"binary":t==="client"?"client":void 0}function Gs(){return"library"}u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();function Ir(t){return t.name==="DriverAdapterError"&&typeof t.cause=="object"}u();c();m();p();d();l();function Nt(t){return{ok:!0,value:t,map(e){return Nt(e(t))},flatMap(e){return e(t)}}}function De(t){return{ok:!1,error:t,map(){return De(t)},flatMap(){return De(t)}}}var Wn=G("driver-adapter-utils"),Mr=class{registeredErrors=[];consumeError(e){return this.registeredErrors[e]}registerNewError(e){let r=0;for(;this.registeredErrors[r]!==void 0;)r++;return this.registeredErrors[r]={error:e},r}};var qt=(t,e=new Mr)=>{let r={adapterName:t.adapterName,errorRegistry:e,queryRaw:we(e,t.queryRaw.bind(t)),executeRaw:we(e,t.executeRaw.bind(t)),executeScript:we(e,t.executeScript.bind(t)),dispose:we(e,t.dispose.bind(t)),provider:t.provider,startTransaction:async(...n)=>(await we(e,t.startTransaction.bind(t))(...n)).map(o=>Ws(e,o))};return t.getConnectionInfo&&(r.getConnectionInfo=Ks(e,t.getConnectionInfo.bind(t))),r},Ws=(t,e)=>({adapterName:e.adapterName,provider:e.provider,options:e.options,queryRaw:we(t,e.queryRaw.bind(e)),executeRaw:we(t,e.executeRaw.bind(e)),commit:we(t,e.commit.bind(e)),rollback:we(t,e.rollback.bind(e))});function we(t,e){return async(...r)=>{try{return Nt(await e(...r))}catch(n){if(Wn("[error@wrapAsync]",n),Ir(n))return De(n.cause);let i=t.registerNewError(n);return De({kind:"GenericJs",id:i})}}}function Ks(t,e){return(...r)=>{try{return Nt(e(...r))}catch(n){if(Wn("[error@wrapSync]",n),Ir(n))return De(n.cause);let i=t.registerNewError(n);return De({kind:"GenericJs",id:i})}}}u();c();m();p();d();l();var Kn="prisma+postgres",Hn=`${Kn}:`;function _r(t){return t?.toString().startsWith(`${Hn}//`)??!1}var st={};rt(st,{error:()=>Ys,info:()=>zs,log:()=>Hs,query:()=>Xs,should:()=>Xn,tags:()=>ot,warn:()=>Lr});u();c();m();p();d();l();var ot={error:Ue("prisma:error"),warn:Mn("prisma:warn"),info:Ln("prisma:info"),query:_n("prisma:query")},Xn={warn:()=>!g.env.PRISMA_DISABLE_WARNINGS};function Hs(...t){console.log(...t)}function Lr(t,...e){Xn.warn()&&console.warn(`${ot.warn} ${t}`,...e)}function zs(t,...e){console.info(`${ot.info} ${t}`,...e)}function Ys(t,...e){console.error(`${ot.error} ${t}`,...e)}function Xs(t,...e){console.log(`${ot.query} ${t}`,...e)}u();c();m();p();d();l();function Bt(t,e){if(!t)throw new Error(`${e}. This should never happen. If you see this error, please, open an issue at https://pris.ly/prisma-prisma-bug-report`)}u();c();m();p();d();l();function Ie(t,e){throw new Error(e)}u();c();m();p();d();l();u();c();m();p();d();l();function Fr({onlyFirst:t=!1}={}){let r=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(r,t?void 0:"g")}var Zs=Fr();function Ur(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(Zs,"")}u();c();m();p();d();l();function Nr(t,e){return Object.prototype.hasOwnProperty.call(t,e)}u();c();m();p();d();l();function Vt(t,e){let r={};for(let n of Object.keys(t))r[n]=e(t[n],n);return r}u();c();m();p();d();l();function qr(t,e){if(t.length===0)return;let r=t[0];for(let n=1;n{Zn.has(t)||(Zn.add(t),Lr(e,...r))};var I=class t extends Error{clientVersion;errorCode;retryable;constructor(e,r,n){super(e),this.name="PrismaClientInitializationError",this.clientVersion=r,this.errorCode=n,Error.captureStackTrace(t)}get[Symbol.toStringTag](){return"PrismaClientInitializationError"}};re(I,"PrismaClientInitializationError");u();c();m();p();d();l();var Z=class extends Error{code;meta;clientVersion;batchRequestIdx;constructor(e,{code:r,clientVersion:n,meta:i,batchRequestIdx:o}){super(e),this.name="PrismaClientKnownRequestError",this.code=r,this.clientVersion=n,this.meta=i,Object.defineProperty(this,"batchRequestIdx",{value:o,enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return"PrismaClientKnownRequestError"}};re(Z,"PrismaClientKnownRequestError");u();c();m();p();d();l();var xe=class extends Error{clientVersion;constructor(e,r){super(e),this.name="PrismaClientRustPanicError",this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientRustPanicError"}};re(xe,"PrismaClientRustPanicError");u();c();m();p();d();l();var Q=class extends Error{clientVersion;batchRequestIdx;constructor(e,{clientVersion:r,batchRequestIdx:n}){super(e),this.name="PrismaClientUnknownRequestError",this.clientVersion=r,Object.defineProperty(this,"batchRequestIdx",{value:n,writable:!0,enumerable:!1})}get[Symbol.toStringTag](){return"PrismaClientUnknownRequestError"}};re(Q,"PrismaClientUnknownRequestError");u();c();m();p();d();l();var K=class extends Error{name="PrismaClientValidationError";clientVersion;constructor(e,{clientVersion:r}){super(e),this.clientVersion=r}get[Symbol.toStringTag](){return"PrismaClientValidationError"}};re(K,"PrismaClientValidationError");u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();var me=class{_map=new Map;get(e){return this._map.get(e)?.value}set(e,r){this._map.set(e,{value:r})}getOrCreate(e,r){let n=this._map.get(e);if(n)return n.value;let i=r();return this.set(e,i),i}};u();c();m();p();d();l();function ve(t){return t.substring(0,1).toLowerCase()+t.substring(1)}u();c();m();p();d();l();function ti(t,e){let r={};for(let n of t){let i=n[e];r[i]=n}return r}u();c();m();p();d();l();function lt(t){let e;return{get(){return e||(e={value:t()}),e.value}}}u();c();m();p();d();l();function ri(t){return{models:Br(t.models),enums:Br(t.enums),types:Br(t.types)}}function Br(t){let e={};for(let{name:r,...n}of t)e[r]=n;return e}u();c();m();p();d();l();function qe(t){return t instanceof Date||Object.prototype.toString.call(t)==="[object Date]"}function jt(t){return t.toString()!=="Invalid Date"}u();c();m();p();d();l();l();function Be(t){return v.isDecimal(t)?!0:t!==null&&typeof t=="object"&&typeof t.s=="number"&&typeof t.e=="number"&&typeof t.toFixed=="function"&&Array.isArray(t.d)}u();c();m();p();d();l();u();c();m();p();d();l();var ct={};rt(ct,{ModelAction:()=>ut,datamodelEnumToSchemaEnum:()=>ea});u();c();m();p();d();l();u();c();m();p();d();l();function ea(t){return{name:t.name,values:t.values.map(e=>e.name)}}u();c();m();p();d();l();var ut=(F=>(F.findUnique="findUnique",F.findUniqueOrThrow="findUniqueOrThrow",F.findFirst="findFirst",F.findFirstOrThrow="findFirstOrThrow",F.findMany="findMany",F.create="create",F.createMany="createMany",F.createManyAndReturn="createManyAndReturn",F.update="update",F.updateMany="updateMany",F.updateManyAndReturn="updateManyAndReturn",F.upsert="upsert",F.delete="delete",F.deleteMany="deleteMany",F.groupBy="groupBy",F.count="count",F.aggregate="aggregate",F.findRaw="findRaw",F.aggregateRaw="aggregateRaw",F))(ut||{});var ta=kt(Yn());var ra={red:Ue,gray:Fn,dim:Lt,bold:_t,underline:Dn,highlightSource:t=>t.highlight()},na={red:t=>t,gray:t=>t,dim:t=>t,bold:t=>t,underline:t=>t,highlightSource:t=>t};function ia({message:t,originalMethod:e,isPanic:r,callArguments:n}){return{functionName:`prisma.${e}()`,message:t,isPanic:r??!1,callArguments:n}}function oa({functionName:t,location:e,message:r,isPanic:n,contextLines:i,callArguments:o},s){let a=[""],f=e?" in":":";if(n?(a.push(s.red(`Oops, an unknown error occurred! This is ${s.bold("on us")}, you did nothing wrong.`)),a.push(s.red(`It occurred in the ${s.bold(`\`${t}\``)} invocation${f}`))):a.push(s.red(`Invalid ${s.bold(`\`${t}\``)} invocation${f}`)),e&&a.push(s.underline(sa(e))),i){a.push("");let h=[i.toString()];o&&(h.push(o),h.push(s.dim(")"))),a.push(h.join("")),o&&a.push("")}else a.push(""),o&&a.push(o),a.push("");return a.push(r),a.join(` +`)}function sa(t){let e=[t.fileName];return t.lineNumber&&e.push(String(t.lineNumber)),t.columnNumber&&e.push(String(t.columnNumber)),e.join(":")}function $t(t){let e=t.showColors?ra:na,r;return typeof $getTemplateParameters<"u"?r=$getTemplateParameters(t,e):r=ia(t),oa(r,e)}u();c();m();p();d();l();var mi=kt(Vr());u();c();m();p();d();l();function si(t,e,r){let n=ai(t),i=aa(n),o=ua(i);o?Qt(o,e,r):e.addErrorMessage(()=>"Unknown error")}function ai(t){return t.errors.flatMap(e=>e.kind==="Union"?ai(e):[e])}function aa(t){let e=new Map,r=[];for(let n of t){if(n.kind!=="InvalidArgumentType"){r.push(n);continue}let i=`${n.selectionPath.join(".")}:${n.argumentPath.join(".")}`,o=e.get(i);o?e.set(i,{...n,argument:{...n.argument,typeNames:la(o.argument.typeNames,n.argument.typeNames)}}):e.set(i,n)}return r.push(...e.values()),r}function la(t,e){return[...new Set(t.concat(e))]}function ua(t){return qr(t,(e,r)=>{let n=ii(e),i=ii(r);return n!==i?n-i:oi(e)-oi(r)})}function ii(t){let e=0;return Array.isArray(t.selectionPath)&&(e+=t.selectionPath.length),Array.isArray(t.argumentPath)&&(e+=t.argumentPath.length),e}function oi(t){switch(t.kind){case"InvalidArgumentValue":case"ValueTooLarge":return 20;case"InvalidArgumentType":return 10;case"RequiredArgumentMissing":return-10;default:return 0}}u();c();m();p();d();l();var ne=class{constructor(e,r){this.name=e;this.value=r}isRequired=!1;makeRequired(){return this.isRequired=!0,this}write(e){let{colors:{green:r}}=e.context;e.addMarginSymbol(r(this.isRequired?"+":"?")),e.write(r(this.name)),this.isRequired||e.write(r("?")),e.write(r(": ")),typeof this.value=="string"?e.write(r(this.value)):e.write(this.value)}};u();c();m();p();d();l();u();c();m();p();d();l();ui();u();c();m();p();d();l();var Ve=class{constructor(e=0,r){this.context=r;this.currentIndent=e}lines=[];currentLine="";currentIndent=0;marginSymbol;afterNextNewLineCallback;write(e){return typeof e=="string"?this.currentLine+=e:e.write(this),this}writeJoined(e,r,n=(i,o)=>o.write(i)){let i=r.length-1;for(let o=0;o0&&this.currentIndent--,this}addMarginSymbol(e){return this.marginSymbol=e,this}toString(){return this.lines.concat(this.indentedCurrentLine()).join(` +`)}getCurrentLineLength(){return this.currentLine.length}indentedCurrentLine(){let e=this.currentLine.padStart(this.currentLine.length+2*this.currentIndent);return this.marginSymbol?this.marginSymbol+e.slice(1):e}};li();u();c();m();p();d();l();u();c();m();p();d();l();var Jt=class{constructor(e){this.value=e}write(e){e.write(this.value)}markAsError(){this.value.markAsError()}};u();c();m();p();d();l();var Gt=t=>t,Wt={bold:Gt,red:Gt,green:Gt,dim:Gt,enabled:!1},ci={bold:_t,red:Ue,green:In,dim:Lt,enabled:!0},je={write(t){t.writeLine(",")}};u();c();m();p();d();l();var pe=class{constructor(e){this.contents=e}isUnderlined=!1;color=e=>e;underline(){return this.isUnderlined=!0,this}setColor(e){return this.color=e,this}write(e){let r=e.getCurrentLineLength();e.write(this.color(this.contents)),this.isUnderlined&&e.afterNextNewline(()=>{e.write(" ".repeat(r)).writeLine(this.color("~".repeat(this.contents.length)))})}};u();c();m();p();d();l();var Te=class{hasError=!1;markAsError(){return this.hasError=!0,this}};var $e=class extends Te{items=[];addItem(e){return this.items.push(new Jt(e)),this}getField(e){return this.items[e]}getPrintWidth(){return this.items.length===0?2:Math.max(...this.items.map(r=>r.value.getPrintWidth()))+2}write(e){if(this.items.length===0){this.writeEmpty(e);return}this.writeWithItems(e)}writeEmpty(e){let r=new pe("[]");this.hasError&&r.setColor(e.context.colors.red).underline(),e.write(r)}writeWithItems(e){let{colors:r}=e.context;e.writeLine("[").withIndent(()=>e.writeJoined(je,this.items).newLine()).write("]"),this.hasError&&e.afterNextNewline(()=>{e.writeLine(r.red("~".repeat(this.getPrintWidth())))})}asObject(){}};var Qe=class t extends Te{fields={};suggestions=[];addField(e){this.fields[e.name]=e}addSuggestion(e){this.suggestions.push(e)}getField(e){return this.fields[e]}getDeepField(e){let[r,...n]=e,i=this.getField(r);if(!i)return;let o=i;for(let s of n){let a;if(o.value instanceof t?a=o.value.getField(s):o.value instanceof $e&&(a=o.value.getField(Number(s))),!a)return;o=a}return o}getDeepFieldValue(e){return e.length===0?this:this.getDeepField(e)?.value}hasField(e){return!!this.getField(e)}removeAllFields(){this.fields={}}removeField(e){delete this.fields[e]}getFields(){return this.fields}isEmpty(){return Object.keys(this.fields).length===0}getFieldValue(e){return this.getField(e)?.value}getDeepSubSelectionValue(e){let r=this;for(let n of e){if(!(r instanceof t))return;let i=r.getSubSelectionValue(n);if(!i)return;r=i}return r}getDeepSelectionParent(e){let r=this.getSelectionParent();if(!r)return;let n=r;for(let i of e){let o=n.value.getFieldValue(i);if(!o||!(o instanceof t))return;let s=o.getSelectionParent();if(!s)return;n=s}return n}getSelectionParent(){let e=this.getField("select")?.value.asObject();if(e)return{kind:"select",value:e};let r=this.getField("include")?.value.asObject();if(r)return{kind:"include",value:r}}getSubSelectionValue(e){return this.getSelectionParent()?.value.fields[e].value}getPrintWidth(){let e=Object.values(this.fields);return e.length==0?2:Math.max(...e.map(n=>n.getPrintWidth()))+2}write(e){let r=Object.values(this.fields);if(r.length===0&&this.suggestions.length===0){this.writeEmpty(e);return}this.writeWithContents(e,r)}asObject(){return this}writeEmpty(e){let r=new pe("{}");this.hasError&&r.setColor(e.context.colors.red).underline(),e.write(r)}writeWithContents(e,r){e.writeLine("{").withIndent(()=>{e.writeJoined(je,[...r,...this.suggestions]).newLine()}),e.write("}"),this.hasError&&e.afterNextNewline(()=>{e.writeLine(e.context.colors.red("~".repeat(this.getPrintWidth())))})}};u();c();m();p();d();l();var W=class extends Te{constructor(r){super();this.text=r}getPrintWidth(){return this.text.length}write(r){let n=new pe(this.text);this.hasError&&n.underline().setColor(r.context.colors.red),r.write(n)}asObject(){}};u();c();m();p();d();l();var mt=class{fields=[];addField(e,r){return this.fields.push({write(n){let{green:i,dim:o}=n.context.colors;n.write(i(o(`${e}: ${r}`))).addMarginSymbol(i(o("+")))}}),this}write(e){let{colors:{green:r}}=e.context;e.writeLine(r("{")).withIndent(()=>{e.writeJoined(je,this.fields).newLine()}).write(r("}")).addMarginSymbol(r("+"))}};function Qt(t,e,r){switch(t.kind){case"MutuallyExclusiveFields":ca(t,e);break;case"IncludeOnScalar":ma(t,e);break;case"EmptySelection":pa(t,e,r);break;case"UnknownSelectionField":ya(t,e);break;case"InvalidSelectionValue":ha(t,e);break;case"UnknownArgument":ba(t,e);break;case"UnknownInputField":wa(t,e);break;case"RequiredArgumentMissing":xa(t,e);break;case"InvalidArgumentType":Ea(t,e);break;case"InvalidArgumentValue":Pa(t,e);break;case"ValueTooLarge":va(t,e);break;case"SomeFieldsMissing":Ta(t,e);break;case"TooManyFieldsGiven":Ca(t,e);break;case"Union":si(t,e,r);break;default:throw new Error("not implemented: "+t.kind)}}function ca(t,e){let r=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();r&&(r.getField(t.firstField)?.markAsError(),r.getField(t.secondField)?.markAsError()),e.addErrorMessage(n=>`Please ${n.bold("either")} use ${n.green(`\`${t.firstField}\``)} or ${n.green(`\`${t.secondField}\``)}, but ${n.red("not both")} at the same time.`)}function ma(t,e){let[r,n]=Je(t.selectionPath),i=t.outputType,o=e.arguments.getDeepSelectionParent(r)?.value;if(o&&(o.getField(n)?.markAsError(),i))for(let s of i.fields)s.isRelation&&o.addSuggestion(new ne(s.name,"true"));e.addErrorMessage(s=>{let a=`Invalid scalar field ${s.red(`\`${n}\``)} for ${s.bold("include")} statement`;return i?a+=` on model ${s.bold(i.name)}. ${pt(s)}`:a+=".",a+=` +Note that ${s.bold("include")} statements only accept relation fields.`,a})}function pa(t,e,r){let n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(n){let i=n.getField("omit")?.value.asObject();if(i){da(t,e,i);return}if(n.hasField("select")){fa(t,e);return}}if(r?.[ve(t.outputType.name)]){ga(t,e);return}e.addErrorMessage(()=>`Unknown field at "${t.selectionPath.join(".")} selection"`)}function da(t,e,r){r.removeAllFields();for(let n of t.outputType.fields)r.addSuggestion(new ne(n.name,"false"));e.addErrorMessage(n=>`The ${n.red("omit")} statement includes every field of the model ${n.bold(t.outputType.name)}. At least one field must be included in the result`)}function fa(t,e){let r=t.outputType,n=e.arguments.getDeepSelectionParent(t.selectionPath)?.value,i=n?.isEmpty()??!1;n&&(n.removeAllFields(),fi(n,r)),e.addErrorMessage(o=>i?`The ${o.red("`select`")} statement for type ${o.bold(r.name)} must not be empty. ${pt(o)}`:`The ${o.red("`select`")} statement for type ${o.bold(r.name)} needs ${o.bold("at least one truthy value")}.`)}function ga(t,e){let r=new mt;for(let i of t.outputType.fields)i.isRelation||r.addField(i.name,"false");let n=new ne("omit",r).makeRequired();if(t.selectionPath.length===0)e.arguments.addSuggestion(n);else{let[i,o]=Je(t.selectionPath),a=e.arguments.getDeepSelectionParent(i)?.value.asObject()?.getField(o);if(a){let f=a?.value.asObject()??new Qe;f.addSuggestion(n),a.value=f}}e.addErrorMessage(i=>`The global ${i.red("omit")} configuration excludes every field of the model ${i.bold(t.outputType.name)}. At least one field must be included in the result`)}function ya(t,e){let r=gi(t.selectionPath,e);if(r.parentKind!=="unknown"){r.field.markAsError();let n=r.parent;switch(r.parentKind){case"select":fi(n,t.outputType);break;case"include":Aa(n,t.outputType);break;case"omit":Ra(n,t.outputType);break}}e.addErrorMessage(n=>{let i=[`Unknown field ${n.red(`\`${r.fieldName}\``)}`];return r.parentKind!=="unknown"&&i.push(`for ${n.bold(r.parentKind)} statement`),i.push(`on model ${n.bold(`\`${t.outputType.name}\``)}.`),i.push(pt(n)),i.join(" ")})}function ha(t,e){let r=gi(t.selectionPath,e);r.parentKind!=="unknown"&&r.field.value.markAsError(),e.addErrorMessage(n=>`Invalid value for selection field \`${n.red(r.fieldName)}\`: ${t.underlyingError}`)}function ba(t,e){let r=t.argumentPath[0],n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();n&&(n.getField(r)?.markAsError(),Sa(n,t.arguments)),e.addErrorMessage(i=>pi(i,r,t.arguments.map(o=>o.name)))}function wa(t,e){let[r,n]=Je(t.argumentPath),i=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(i){i.getDeepField(t.argumentPath)?.markAsError();let o=i.getDeepFieldValue(r)?.asObject();o&&yi(o,t.inputType)}e.addErrorMessage(o=>pi(o,n,t.inputType.fields.map(s=>s.name)))}function pi(t,e,r){let n=[`Unknown argument \`${t.red(e)}\`.`],i=ka(e,r);return i&&n.push(`Did you mean \`${t.green(i)}\`?`),r.length>0&&n.push(pt(t)),n.join(" ")}function xa(t,e){let r;e.addErrorMessage(f=>r?.value instanceof W&&r.value.text==="null"?`Argument \`${f.green(o)}\` must not be ${f.red("null")}.`:`Argument \`${f.green(o)}\` is missing.`);let n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(!n)return;let[i,o]=Je(t.argumentPath),s=new mt,a=n.getDeepFieldValue(i)?.asObject();if(a){if(r=a.getField(o),r&&a.removeField(o),t.inputTypes.length===1&&t.inputTypes[0].kind==="object"){for(let f of t.inputTypes[0].fields)s.addField(f.name,f.typeNames.join(" | "));a.addSuggestion(new ne(o,s).makeRequired())}else{let f=t.inputTypes.map(di).join(" | ");a.addSuggestion(new ne(o,f).makeRequired())}if(t.dependentArgumentPath){n.getDeepField(t.dependentArgumentPath)?.markAsError();let[,f]=Je(t.dependentArgumentPath);e.addErrorMessage(h=>`Argument \`${h.green(o)}\` is required because argument \`${h.green(f)}\` was provided.`)}}}function di(t){return t.kind==="list"?`${di(t.elementType)}[]`:t.name}function Ea(t,e){let r=t.argument.name,n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();n&&n.getDeepFieldValue(t.argumentPath)?.markAsError(),e.addErrorMessage(i=>{let o=Kt("or",t.argument.typeNames.map(s=>i.green(s)));return`Argument \`${i.bold(r)}\`: Invalid value provided. Expected ${o}, provided ${i.red(t.inferredType)}.`})}function Pa(t,e){let r=t.argument.name,n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();n&&n.getDeepFieldValue(t.argumentPath)?.markAsError(),e.addErrorMessage(i=>{let o=[`Invalid value for argument \`${i.bold(r)}\``];if(t.underlyingError&&o.push(`: ${t.underlyingError}`),o.push("."),t.argument.typeNames.length>0){let s=Kt("or",t.argument.typeNames.map(a=>i.green(a)));o.push(` Expected ${s}.`)}return o.join("")})}function va(t,e){let r=t.argument.name,n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(),i;if(n){let s=n.getDeepField(t.argumentPath)?.value;s?.markAsError(),s instanceof W&&(i=s.text)}e.addErrorMessage(o=>{let s=["Unable to fit value"];return i&&s.push(o.red(i)),s.push(`into a 64-bit signed integer for field \`${o.bold(r)}\``),s.join(" ")})}function Ta(t,e){let r=t.argumentPath[t.argumentPath.length-1],n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject();if(n){let i=n.getDeepFieldValue(t.argumentPath)?.asObject();i&&yi(i,t.inputType)}e.addErrorMessage(i=>{let o=[`Argument \`${i.bold(r)}\` of type ${i.bold(t.inputType.name)} needs`];return t.constraints.minFieldCount===1?t.constraints.requiredFields?o.push(`${i.green("at least one of")} ${Kt("or",t.constraints.requiredFields.map(s=>`\`${i.bold(s)}\``))} arguments.`):o.push(`${i.green("at least one")} argument.`):o.push(`${i.green(`at least ${t.constraints.minFieldCount}`)} arguments.`),o.push(pt(i)),o.join(" ")})}function Ca(t,e){let r=t.argumentPath[t.argumentPath.length-1],n=e.arguments.getDeepSubSelectionValue(t.selectionPath)?.asObject(),i=[];if(n){let o=n.getDeepFieldValue(t.argumentPath)?.asObject();o&&(o.markAsError(),i=Object.keys(o.getFields()))}e.addErrorMessage(o=>{let s=[`Argument \`${o.bold(r)}\` of type ${o.bold(t.inputType.name)} needs`];return t.constraints.minFieldCount===1&&t.constraints.maxFieldCount==1?s.push(`${o.green("exactly one")} argument,`):t.constraints.maxFieldCount==1?s.push(`${o.green("at most one")} argument,`):s.push(`${o.green(`at most ${t.constraints.maxFieldCount}`)} arguments,`),s.push(`but you provided ${Kt("and",i.map(a=>o.red(a)))}. Please choose`),t.constraints.maxFieldCount===1?s.push("one."):s.push(`${t.constraints.maxFieldCount}.`),s.join(" ")})}function fi(t,e){for(let r of e.fields)t.hasField(r.name)||t.addSuggestion(new ne(r.name,"true"))}function Aa(t,e){for(let r of e.fields)r.isRelation&&!t.hasField(r.name)&&t.addSuggestion(new ne(r.name,"true"))}function Ra(t,e){for(let r of e.fields)!t.hasField(r.name)&&!r.isRelation&&t.addSuggestion(new ne(r.name,"true"))}function Sa(t,e){for(let r of e)t.hasField(r.name)||t.addSuggestion(new ne(r.name,r.typeNames.join(" | ")))}function gi(t,e){let[r,n]=Je(t),i=e.arguments.getDeepSubSelectionValue(r)?.asObject();if(!i)return{parentKind:"unknown",fieldName:n};let o=i.getFieldValue("select")?.asObject(),s=i.getFieldValue("include")?.asObject(),a=i.getFieldValue("omit")?.asObject(),f=o?.getField(n);return o&&f?{parentKind:"select",parent:o,field:f,fieldName:n}:(f=s?.getField(n),s&&f?{parentKind:"include",field:f,parent:s,fieldName:n}:(f=a?.getField(n),a&&f?{parentKind:"omit",field:f,parent:a,fieldName:n}:{parentKind:"unknown",fieldName:n}))}function yi(t,e){if(e.kind==="object")for(let r of e.fields)t.hasField(r.name)||t.addSuggestion(new ne(r.name,r.typeNames.join(" | ")))}function Je(t){let e=[...t],r=e.pop();if(!r)throw new Error("unexpected empty path");return[e,r]}function pt({green:t,enabled:e}){return"Available options are "+(e?`listed in ${t("green")}`:"marked with ?")+"."}function Kt(t,e){if(e.length===1)return e[0];let r=[...e],n=r.pop();return`${r.join(", ")} ${t} ${n}`}var Oa=3;function ka(t,e){let r=1/0,n;for(let i of e){let o=(0,mi.default)(t,i);o>Oa||o`}};function Ge(t){return t instanceof dt}u();c();m();p();d();l();var Ht=Symbol(),$r=new WeakMap,Ee=class{constructor(e){e===Ht?$r.set(this,`Prisma.${this._getName()}`):$r.set(this,`new Prisma.${this._getNamespace()}.${this._getName()}()`)}_getName(){return this.constructor.name}toString(){return $r.get(this)}},ft=class extends Ee{_getNamespace(){return"NullTypes"}},gt=class extends ft{#e};Qr(gt,"DbNull");var yt=class extends ft{#e};Qr(yt,"JsonNull");var ht=class extends ft{#e};Qr(ht,"AnyNull");var zt={classes:{DbNull:gt,JsonNull:yt,AnyNull:ht},instances:{DbNull:new gt(Ht),JsonNull:new yt(Ht),AnyNull:new ht(Ht)}};function Qr(t,e){Object.defineProperty(t,"name",{value:e,configurable:!0})}u();c();m();p();d();l();var hi=": ",Yt=class{constructor(e,r){this.name=e;this.value=r}hasError=!1;markAsError(){this.hasError=!0}getPrintWidth(){return this.name.length+this.value.getPrintWidth()+hi.length}write(e){let r=new pe(this.name);this.hasError&&r.underline().setColor(e.context.colors.red),e.write(r).write(hi).write(this.value)}};var Jr=class{arguments;errorMessages=[];constructor(e){this.arguments=e}write(e){e.write(this.arguments)}addErrorMessage(e){this.errorMessages.push(e)}renderAllMessages(e){return this.errorMessages.map(r=>r(e)).join(` +`)}};function We(t){return new Jr(bi(t))}function bi(t){let e=new Qe;for(let[r,n]of Object.entries(t)){let i=new Yt(r,wi(n));e.addField(i)}return e}function wi(t){if(typeof t=="string")return new W(JSON.stringify(t));if(typeof t=="number"||typeof t=="boolean")return new W(String(t));if(typeof t=="bigint")return new W(`${t}n`);if(t===null)return new W("null");if(t===void 0)return new W("undefined");if(Be(t))return new W(`new Prisma.Decimal("${t.toFixed()}")`);if(t instanceof Uint8Array)return b.isBuffer(t)?new W(`Buffer.alloc(${t.byteLength})`):new W(`new Uint8Array(${t.byteLength})`);if(t instanceof Date){let e=jt(t)?t.toISOString():"Invalid Date";return new W(`new Date("${e}")`)}return t instanceof Ee?new W(`Prisma.${t._getName()}`):Ge(t)?new W(`prisma.${ve(t.modelName)}.$fields.${t.name}`):Array.isArray(t)?Da(t):typeof t=="object"?bi(t):new W(Object.prototype.toString.call(t))}function Da(t){let e=new $e;for(let r of t)e.addItem(wi(r));return e}function Xt(t,e){let r=e==="pretty"?ci:Wt,n=t.renderAllMessages(r),i=new Ve(0,{colors:r}).write(t).toString();return{message:n,args:i}}function Zt({args:t,errors:e,errorFormat:r,callsite:n,originalMethod:i,clientVersion:o,globalOmit:s}){let a=We(t);for(let A of e)Qt(A,a,s);let{message:f,args:h}=Xt(a,r),C=$t({message:f,callsite:n,originalMethod:i,showColors:r==="pretty",callArguments:h});throw new K(C,{clientVersion:o})}u();c();m();p();d();l();u();c();m();p();d();l();function de(t){return t.replace(/^./,e=>e.toLowerCase())}u();c();m();p();d();l();function Ei(t,e,r){let n=de(r);return!e.result||!(e.result.$allModels||e.result[n])?t:Ia({...t,...xi(e.name,t,e.result.$allModels),...xi(e.name,t,e.result[n])})}function Ia(t){let e=new me,r=(n,i)=>e.getOrCreate(n,()=>i.has(n)?[n]:(i.add(n),t[n]?t[n].needs.flatMap(o=>r(o,i)):[n]));return Vt(t,n=>({...n,needs:r(n.name,new Set)}))}function xi(t,e,r){return r?Vt(r,({needs:n,compute:i},o)=>({name:o,needs:n?Object.keys(n).filter(s=>n[s]):[],compute:Ma(e,o,i)})):{}}function Ma(t,e,r){let n=t?.[e]?.compute;return n?i=>r({...i,[e]:n(i)}):r}function Pi(t,e){if(!e)return t;let r={...t};for(let n of Object.values(e))if(t[n.name])for(let i of n.needs)r[i]=!0;return r}function vi(t,e){if(!e)return t;let r={...t};for(let n of Object.values(e))if(!t[n.name])for(let i of n.needs)delete r[i];return r}var er=class{constructor(e,r){this.extension=e;this.previous=r}computedFieldsCache=new me;modelExtensionsCache=new me;queryCallbacksCache=new me;clientExtensions=lt(()=>this.extension.client?{...this.previous?.getAllClientExtensions(),...this.extension.client}:this.previous?.getAllClientExtensions());batchCallbacks=lt(()=>{let e=this.previous?.getAllBatchQueryCallbacks()??[],r=this.extension.query?.$__internalBatch;return r?e.concat(r):e});getAllComputedFields(e){return this.computedFieldsCache.getOrCreate(e,()=>Ei(this.previous?.getAllComputedFields(e),this.extension,e))}getAllClientExtensions(){return this.clientExtensions.get()}getAllModelExtensions(e){return this.modelExtensionsCache.getOrCreate(e,()=>{let r=de(e);return!this.extension.model||!(this.extension.model[r]||this.extension.model.$allModels)?this.previous?.getAllModelExtensions(e):{...this.previous?.getAllModelExtensions(e),...this.extension.model.$allModels,...this.extension.model[r]}})}getAllQueryCallbacks(e,r){return this.queryCallbacksCache.getOrCreate(`${e}:${r}`,()=>{let n=this.previous?.getAllQueryCallbacks(e,r)??[],i=[],o=this.extension.query;return!o||!(o[e]||o.$allModels||o[r]||o.$allOperations)?n:(o[e]!==void 0&&(o[e][r]!==void 0&&i.push(o[e][r]),o[e].$allOperations!==void 0&&i.push(o[e].$allOperations)),e!=="$none"&&o.$allModels!==void 0&&(o.$allModels[r]!==void 0&&i.push(o.$allModels[r]),o.$allModels.$allOperations!==void 0&&i.push(o.$allModels.$allOperations)),o[r]!==void 0&&i.push(o[r]),o.$allOperations!==void 0&&i.push(o.$allOperations),n.concat(i))})}getAllBatchQueryCallbacks(){return this.batchCallbacks.get()}},Ke=class t{constructor(e){this.head=e}static empty(){return new t}static single(e){return new t(new er(e))}isEmpty(){return this.head===void 0}append(e){return new t(new er(e,this.head))}getAllComputedFields(e){return this.head?.getAllComputedFields(e)}getAllClientExtensions(){return this.head?.getAllClientExtensions()}getAllModelExtensions(e){return this.head?.getAllModelExtensions(e)}getAllQueryCallbacks(e,r){return this.head?.getAllQueryCallbacks(e,r)??[]}getAllBatchQueryCallbacks(){return this.head?.getAllBatchQueryCallbacks()??[]}};u();c();m();p();d();l();var tr=class{constructor(e){this.name=e}};function Ti(t){return t instanceof tr}function Ci(t){return new tr(t)}u();c();m();p();d();l();u();c();m();p();d();l();var Ai=Symbol(),bt=class{constructor(e){if(e!==Ai)throw new Error("Skip instance can not be constructed directly")}ifUndefined(e){return e===void 0?rr:e}},rr=new bt(Ai);function fe(t){return t instanceof bt}var _a={findUnique:"findUnique",findUniqueOrThrow:"findUniqueOrThrow",findFirst:"findFirst",findFirstOrThrow:"findFirstOrThrow",findMany:"findMany",count:"aggregate",create:"createOne",createMany:"createMany",createManyAndReturn:"createManyAndReturn",update:"updateOne",updateMany:"updateMany",updateManyAndReturn:"updateManyAndReturn",upsert:"upsertOne",delete:"deleteOne",deleteMany:"deleteMany",executeRaw:"executeRaw",queryRaw:"queryRaw",aggregate:"aggregate",groupBy:"groupBy",runCommandRaw:"runCommandRaw",findRaw:"findRaw",aggregateRaw:"aggregateRaw"},Ri="explicitly `undefined` values are not allowed";function nr({modelName:t,action:e,args:r,runtimeDataModel:n,extensions:i=Ke.empty(),callsite:o,clientMethod:s,errorFormat:a,clientVersion:f,previewFeatures:h,globalOmit:C}){let A=new Gr({runtimeDataModel:n,modelName:t,action:e,rootArgs:r,callsite:o,extensions:i,selectionPath:[],argumentPath:[],originalMethod:s,errorFormat:a,clientVersion:f,previewFeatures:h,globalOmit:C});return{modelName:t,action:_a[e],query:wt(r,A)}}function wt({select:t,include:e,...r}={},n){let i=r.omit;return delete r.omit,{arguments:Oi(r,n),selection:La(t,e,i,n)}}function La(t,e,r,n){return t?(e?n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"include",secondField:"select",selectionPath:n.getSelectionPath()}):r&&n.throwValidationError({kind:"MutuallyExclusiveFields",firstField:"omit",secondField:"select",selectionPath:n.getSelectionPath()}),qa(t,n)):Fa(n,e,r)}function Fa(t,e,r){let n={};return t.modelOrType&&!t.isRawAction()&&(n.$composites=!0,n.$scalars=!0),e&&Ua(n,e,t),Na(n,r,t),n}function Ua(t,e,r){for(let[n,i]of Object.entries(e)){if(fe(i))continue;let o=r.nestSelection(n);if(Wr(i,o),i===!1||i===void 0){t[n]=!1;continue}let s=r.findField(n);if(s&&s.kind!=="object"&&r.throwValidationError({kind:"IncludeOnScalar",selectionPath:r.getSelectionPath().concat(n),outputType:r.getOutputTypeDescription()}),s){t[n]=wt(i===!0?{}:i,o);continue}if(i===!0){t[n]=!0;continue}t[n]=wt(i,o)}}function Na(t,e,r){let n=r.getComputedFields(),i={...r.getGlobalOmit(),...e},o=vi(i,n);for(let[s,a]of Object.entries(o)){if(fe(a))continue;Wr(a,r.nestSelection(s));let f=r.findField(s);n?.[s]&&!f||(t[s]=!a)}}function qa(t,e){let r={},n=e.getComputedFields(),i=Pi(t,n);for(let[o,s]of Object.entries(i)){if(fe(s))continue;let a=e.nestSelection(o);Wr(s,a);let f=e.findField(o);if(!(n?.[o]&&!f)){if(s===!1||s===void 0||fe(s)){r[o]=!1;continue}if(s===!0){f?.kind==="object"?r[o]=wt({},a):r[o]=!0;continue}r[o]=wt(s,a)}}return r}function Si(t,e){if(t===null)return null;if(typeof t=="string"||typeof t=="number"||typeof t=="boolean")return t;if(typeof t=="bigint")return{$type:"BigInt",value:String(t)};if(qe(t)){if(jt(t))return{$type:"DateTime",value:t.toISOString()};e.throwValidationError({kind:"InvalidArgumentValue",selectionPath:e.getSelectionPath(),argumentPath:e.getArgumentPath(),argument:{name:e.getArgumentName(),typeNames:["Date"]},underlyingError:"Provided Date object is invalid"})}if(Ti(t))return{$type:"Param",value:t.name};if(Ge(t))return{$type:"FieldRef",value:{_ref:t.name,_container:t.modelName}};if(Array.isArray(t))return Ba(t,e);if(ArrayBuffer.isView(t)){let{buffer:r,byteOffset:n,byteLength:i}=t;return{$type:"Bytes",value:b.from(r,n,i).toString("base64")}}if(Va(t))return t.values;if(Be(t))return{$type:"Decimal",value:t.toFixed()};if(t instanceof Ee){if(t!==zt.instances[t._getName()])throw new Error("Invalid ObjectEnumValue");return{$type:"Enum",value:t._getName()}}if(ja(t))return t.toJSON();if(typeof t=="object")return Oi(t,e);e.throwValidationError({kind:"InvalidArgumentValue",selectionPath:e.getSelectionPath(),argumentPath:e.getArgumentPath(),argument:{name:e.getArgumentName(),typeNames:[]},underlyingError:`We could not serialize ${Object.prototype.toString.call(t)} value. Serialize the object to JSON or implement a ".toJSON()" method on it`})}function Oi(t,e){if(t.$type)return{$type:"Raw",value:t};let r={};for(let n in t){let i=t[n],o=e.nestArgument(n);fe(i)||(i!==void 0?r[n]=Si(i,o):e.isPreviewFeatureOn("strictUndefinedChecks")&&e.throwValidationError({kind:"InvalidArgumentValue",argumentPath:o.getArgumentPath(),selectionPath:e.getSelectionPath(),argument:{name:e.getArgumentName(),typeNames:[]},underlyingError:Ri}))}return r}function Ba(t,e){let r=[];for(let n=0;n({name:e.name,typeName:"boolean",isRelation:e.kind==="object"}))}}isRawAction(){return["executeRaw","queryRaw","runCommandRaw","findRaw","aggregateRaw"].includes(this.params.action)}isPreviewFeatureOn(e){return this.params.previewFeatures.includes(e)}getComputedFields(){if(this.params.modelName)return this.params.extensions.getAllComputedFields(this.params.modelName)}findField(e){return this.modelOrType?.fields.find(r=>r.name===e)}nestSelection(e){let r=this.findField(e),n=r?.kind==="object"?r.type:void 0;return new t({...this.params,modelName:n,selectionPath:this.params.selectionPath.concat(e)})}getGlobalOmit(){return this.params.modelName&&this.shouldApplyGlobalOmit()?this.params.globalOmit?.[ve(this.params.modelName)]??{}:{}}shouldApplyGlobalOmit(){switch(this.params.action){case"findFirst":case"findFirstOrThrow":case"findUniqueOrThrow":case"findMany":case"upsert":case"findUnique":case"createManyAndReturn":case"create":case"update":case"updateManyAndReturn":case"delete":return!0;case"executeRaw":case"aggregateRaw":case"runCommandRaw":case"findRaw":case"createMany":case"deleteMany":case"groupBy":case"updateMany":case"count":case"aggregate":case"queryRaw":return!1;default:Ie(this.params.action,"Unknown action")}}nestArgument(e){return new t({...this.params,argumentPath:this.params.argumentPath.concat(e)})}};u();c();m();p();d();l();function ki(t){if(!t._hasPreviewFlag("metrics"))throw new K("`metrics` preview feature must be enabled in order to access metrics API",{clientVersion:t._clientVersion})}var He=class{_client;constructor(e){this._client=e}prometheus(e){return ki(this._client),this._client._engine.metrics({format:"prometheus",...e})}json(e){return ki(this._client),this._client._engine.metrics({format:"json",...e})}};u();c();m();p();d();l();function Di(t,e){let r=lt(()=>$a(e));Object.defineProperty(t,"dmmf",{get:()=>r.get()})}function $a(t){throw new Error("Prisma.dmmf is not available when running in edge runtimes.")}function Kr(t){return Object.entries(t).map(([e,r])=>({name:e,...r}))}u();c();m();p();d();l();var Hr=new WeakMap,ir="$$PrismaTypedSql",xt=class{constructor(e,r){Hr.set(this,{sql:e,values:r}),Object.defineProperty(this,ir,{value:ir})}get sql(){return Hr.get(this).sql}get values(){return Hr.get(this).values}};function Ii(t){return(...e)=>new xt(t,e)}function or(t){return t!=null&&t[ir]===ir}u();c();m();p();d();l();var Jo=kt(Mi());u();c();m();p();d();l();_i();Vn();Gn();u();c();m();p();d();l();var ee=class t{constructor(e,r){if(e.length-1!==r.length)throw e.length===0?new TypeError("Expected at least 1 string"):new TypeError(`Expected ${e.length} strings to have ${e.length-1} values`);let n=r.reduce((s,a)=>s+(a instanceof t?a.values.length:1),0);this.values=new Array(n),this.strings=new Array(n+1),this.strings[0]=e[0];let i=0,o=0;for(;it.getPropertyValue(r))},getPropertyDescriptor(r){return t.getPropertyDescriptor?.(r)}}}u();c();m();p();d();l();u();c();m();p();d();l();var ar={enumerable:!0,configurable:!0,writable:!0};function lr(t){let e=new Set(t);return{getPrototypeOf:()=>Object.prototype,getOwnPropertyDescriptor:()=>ar,has:(r,n)=>e.has(n),set:(r,n,i)=>e.add(n)&&Reflect.set(r,n,i),ownKeys:()=>[...e]}}var Ui=Symbol.for("nodejs.util.inspect.custom");function ae(t,e){let r=Ja(e),n=new Set,i=new Proxy(t,{get(o,s){if(n.has(s))return o[s];let a=r.get(s);return a?a.getPropertyValue(s):o[s]},has(o,s){if(n.has(s))return!0;let a=r.get(s);return a?a.has?.(s)??!0:Reflect.has(o,s)},ownKeys(o){let s=Ni(Reflect.ownKeys(o),r),a=Ni(Array.from(r.keys()),r);return[...new Set([...s,...a,...n])]},set(o,s,a){return r.get(s)?.getPropertyDescriptor?.(s)?.writable===!1?!1:(n.add(s),Reflect.set(o,s,a))},getOwnPropertyDescriptor(o,s){let a=Reflect.getOwnPropertyDescriptor(o,s);if(a&&!a.configurable)return a;let f=r.get(s);return f?f.getPropertyDescriptor?{...ar,...f?.getPropertyDescriptor(s)}:ar:a},defineProperty(o,s,a){return n.add(s),Reflect.defineProperty(o,s,a)},getPrototypeOf:()=>Object.prototype});return i[Ui]=function(){let o={...this};return delete o[Ui],o},i}function Ja(t){let e=new Map;for(let r of t){let n=r.getKeys();for(let i of n)e.set(i,r)}return e}function Ni(t,e){return t.filter(r=>e.get(r)?.has?.(r)??!0)}u();c();m();p();d();l();function ze(t){return{getKeys(){return t},has(){return!1},getPropertyValue(){}}}u();c();m();p();d();l();function ur(t,e){return{batch:t,transaction:e?.kind==="batch"?{isolationLevel:e.options.isolationLevel}:void 0}}u();c();m();p();d();l();function qi(t){if(t===void 0)return"";let e=We(t);return new Ve(0,{colors:Wt}).write(e).toString()}u();c();m();p();d();l();var Ga="P2037";function cr({error:t,user_facing_error:e},r,n){return e.error_code?new Z(Wa(e,n),{code:e.error_code,clientVersion:r,meta:e.meta,batchRequestIdx:e.batch_request_idx}):new Q(t,{clientVersion:r,batchRequestIdx:e.batch_request_idx})}function Wa(t,e){let r=t.message;return(e==="postgresql"||e==="postgres"||e==="mysql")&&t.error_code===Ga&&(r+=` +Prisma Accelerate has built-in connection pooling to prevent such errors: https://pris.ly/client/error-accelerate`),r}u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();var Xr=class{getLocation(){return null}};function Ce(t){return typeof $EnabledCallSite=="function"&&t!=="minimal"?new $EnabledCallSite:new Xr}u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();var Bi={_avg:!0,_count:!0,_sum:!0,_min:!0,_max:!0};function Ye(t={}){let e=Ha(t);return Object.entries(e).reduce((n,[i,o])=>(Bi[i]!==void 0?n.select[i]={select:o}:n[i]=o,n),{select:{}})}function Ha(t={}){return typeof t._count=="boolean"?{...t,_count:{_all:t._count}}:t}function mr(t={}){return e=>(typeof t._count=="boolean"&&(e._count=e._count._all),e)}function Vi(t,e){let r=mr(t);return e({action:"aggregate",unpacker:r,argsMapper:Ye})(t)}u();c();m();p();d();l();function za(t={}){let{select:e,...r}=t;return typeof e=="object"?Ye({...r,_count:e}):Ye({...r,_count:{_all:!0}})}function Ya(t={}){return typeof t.select=="object"?e=>mr(t)(e)._count:e=>mr(t)(e)._count._all}function ji(t,e){return e({action:"count",unpacker:Ya(t),argsMapper:za})(t)}u();c();m();p();d();l();function Xa(t={}){let e=Ye(t);if(Array.isArray(e.by))for(let r of e.by)typeof r=="string"&&(e.select[r]=!0);else typeof e.by=="string"&&(e.select[e.by]=!0);return e}function Za(t={}){return e=>(typeof t?._count=="boolean"&&e.forEach(r=>{r._count=r._count._all}),e)}function $i(t,e){return e({action:"groupBy",unpacker:Za(t),argsMapper:Xa})(t)}function Qi(t,e,r){if(e==="aggregate")return n=>Vi(n,r);if(e==="count")return n=>ji(n,r);if(e==="groupBy")return n=>$i(n,r)}u();c();m();p();d();l();function Ji(t,e){let r=e.fields.filter(i=>!i.relationName),n=ti(r,"name");return new Proxy({},{get(i,o){if(o in i||typeof o=="symbol")return i[o];let s=n[o];if(s)return new dt(t,o,s.type,s.isList,s.kind==="enum")},...lr(Object.keys(n))})}u();c();m();p();d();l();u();c();m();p();d();l();var Gi=t=>Array.isArray(t)?t:t.split("."),Zr=(t,e)=>Gi(e).reduce((r,n)=>r&&r[n],t),Wi=(t,e,r)=>Gi(e).reduceRight((n,i,o,s)=>Object.assign({},Zr(t,s.slice(0,o)),{[i]:n}),r);function el(t,e){return t===void 0||e===void 0?[]:[...e,"select",t]}function tl(t,e,r){return e===void 0?t??{}:Wi(e,r,t||!0)}function en(t,e,r,n,i,o){let a=t._runtimeDataModel.models[e].fields.reduce((f,h)=>({...f,[h.name]:h}),{});return f=>{let h=Ce(t._errorFormat),C=el(n,i),A=tl(f,o,C),k=r({dataPath:C,callsite:h})(A),R=rl(t,e);return new Proxy(k,{get(_,O){if(!R.includes(O))return _[O];let ye=[a[O].type,r,O],z=[C,A];return en(t,...ye,...z)},...lr([...R,...Object.getOwnPropertyNames(k)])})}}function rl(t,e){return t._runtimeDataModel.models[e].fields.filter(r=>r.kind==="object").map(r=>r.name)}var nl=["findUnique","findUniqueOrThrow","findFirst","findFirstOrThrow","create","update","upsert","delete"],il=["aggregate","count","groupBy"];function tn(t,e){let r=t._extensions.getAllModelExtensions(e)??{},n=[ol(t,e),al(t,e),Et(r),H("name",()=>e),H("$name",()=>e),H("$parent",()=>t._appliedParent)];return ae({},n)}function ol(t,e){let r=de(e),n=Object.keys(ut).concat("count");return{getKeys(){return n},getPropertyValue(i){let o=i,s=a=>f=>{let h=Ce(t._errorFormat);return t._createPrismaPromise(C=>{let A={args:f,dataPath:[],action:o,model:e,clientMethod:`${r}.${i}`,jsModelName:r,transaction:C,callsite:h};return t._request({...A,...a})},{action:o,args:f,model:e})};return nl.includes(o)?en(t,e,s):sl(i)?Qi(t,i,s):s({})}}}function sl(t){return il.includes(t)}function al(t,e){return Me(H("fields",()=>{let r=t._runtimeDataModel.models[e];return Ji(e,r)}))}u();c();m();p();d();l();function Ki(t){return t.replace(/^./,e=>e.toUpperCase())}var rn=Symbol();function Pt(t){let e=[ll(t),ul(t),H(rn,()=>t),H("$parent",()=>t._appliedParent)],r=t._extensions.getAllClientExtensions();return r&&e.push(Et(r)),ae(t,e)}function ll(t){let e=Object.getPrototypeOf(t._originalClient),r=[...new Set(Object.getOwnPropertyNames(e))];return{getKeys(){return r},getPropertyValue(n){return t[n]}}}function ul(t){let e=Object.keys(t._runtimeDataModel.models),r=e.map(de),n=[...new Set(e.concat(r))];return Me({getKeys(){return n},getPropertyValue(i){let o=Ki(i);if(t._runtimeDataModel.models[o]!==void 0)return tn(t,o);if(t._runtimeDataModel.models[i]!==void 0)return tn(t,i)},getPropertyDescriptor(i){if(!r.includes(i))return{enumerable:!1}}})}function Hi(t){return t[rn]?t[rn]:t}function zi(t){if(typeof t=="function")return t(this);if(t.client?.__AccelerateEngine){let r=t.client.__AccelerateEngine;this._originalClient._engine=new r(this._originalClient._accelerateEngineConfig)}let e=Object.create(this._originalClient,{_extensions:{value:this._extensions.append(t)},_appliedParent:{value:this,configurable:!0},$on:{value:void 0}});return Pt(e)}u();c();m();p();d();l();u();c();m();p();d();l();function Yi({result:t,modelName:e,select:r,omit:n,extensions:i}){let o=i.getAllComputedFields(e);if(!o)return t;let s=[],a=[];for(let f of Object.values(o)){if(n){if(n[f.name])continue;let h=f.needs.filter(C=>n[C]);h.length>0&&a.push(ze(h))}else if(r){if(!r[f.name])continue;let h=f.needs.filter(C=>!r[C]);h.length>0&&a.push(ze(h))}cl(t,f.needs)&&s.push(ml(f,ae(t,s)))}return s.length>0||a.length>0?ae(t,[...s,...a]):t}function cl(t,e){return e.every(r=>Nr(t,r))}function ml(t,e){return Me(H(t.name,()=>t.compute(e)))}u();c();m();p();d();l();function pr({visitor:t,result:e,args:r,runtimeDataModel:n,modelName:i}){if(Array.isArray(e)){for(let s=0;sC.name===o);if(!f||f.kind!=="object"||!f.relationName)continue;let h=typeof s=="object"?s:{};e[o]=pr({visitor:i,result:e[o],args:h,modelName:f.type,runtimeDataModel:n})}}function Zi({result:t,modelName:e,args:r,extensions:n,runtimeDataModel:i,globalOmit:o}){return n.isEmpty()||t==null||typeof t!="object"||!i.models[e]?t:pr({result:t,args:r??{},modelName:e,runtimeDataModel:i,visitor:(a,f,h)=>{let C=de(f);return Yi({result:a,modelName:C,select:h.select,omit:h.select?void 0:{...o?.[C],...h.omit},extensions:n})}})}u();c();m();p();d();l();u();c();m();p();d();l();l();u();c();m();p();d();l();var pl=["$connect","$disconnect","$on","$transaction","$extends"],eo=pl;function to(t){if(t instanceof ee)return dl(t);if(or(t))return fl(t);if(Array.isArray(t)){let r=[t[0]];for(let n=1;n{let o=e.customDataProxyFetch;return"transaction"in e&&i!==void 0&&(e.transaction?.kind==="batch"&&e.transaction.lock.then(),e.transaction=i),n===r.length?t._executeRequest(e):r[n]({model:e.model,operation:e.model?e.action:e.clientMethod,args:to(e.args??{}),__internalParams:e,query:(s,a=e)=>{let f=a.customDataProxyFetch;return a.customDataProxyFetch=ao(o,f),a.args=s,no(t,a,r,n+1)}})})}function io(t,e){let{jsModelName:r,action:n,clientMethod:i}=e,o=r?n:i;if(t._extensions.isEmpty())return t._executeRequest(e);let s=t._extensions.getAllQueryCallbacks(r??"$none",o);return no(t,e,s)}function oo(t){return e=>{let r={requests:e},n=e[0].extensions.getAllBatchQueryCallbacks();return n.length?so(r,n,0,t):t(r)}}function so(t,e,r,n){if(r===e.length)return n(t);let i=t.customDataProxyFetch,o=t.requests[0].transaction;return e[r]({args:{queries:t.requests.map(s=>({model:s.modelName,operation:s.action,args:s.args})),transaction:o?{isolationLevel:o.kind==="batch"?o.isolationLevel:void 0}:void 0},__internalParams:t,query(s,a=t){let f=a.customDataProxyFetch;return a.customDataProxyFetch=ao(i,f),so(a,e,r+1,n)}})}var ro=t=>t;function ao(t=ro,e=ro){return r=>t(e(r))}u();c();m();p();d();l();var lo=G("prisma:client"),uo={Vercel:"vercel","Netlify CI":"netlify"};function co({postinstall:t,ciName:e,clientVersion:r,generator:n}){if(lo("checkPlatformCaching:postinstall",t),lo("checkPlatformCaching:ciName",e),t===!0&&!(n?.output&&typeof(n.output.fromEnvVar??n.output.value)=="string")&&e&&e in uo){let i=`Prisma has detected that this project was built on ${e}, which caches dependencies. This leads to an outdated Prisma Client because Prisma's auto-generation isn't triggered. To fix this, make sure to run the \`prisma generate\` command during the build process. + +Learn how: https://pris.ly/d/${uo[e]}-build`;throw console.error(i),new I(i,r)}}u();c();m();p();d();l();function mo(t,e){return t?t.datasources?t.datasources:t.datasourceUrl?{[e[0]]:{url:t.datasourceUrl}}:{}:{}}u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();u();c();m();p();d();l();l();u();c();m();p();d();l();l();function po(t,e){throw new Error(e)}function gl(t){return t!==null&&typeof t=="object"&&typeof t.$type=="string"}function yl(t,e){let r={};for(let n of Object.keys(t))r[n]=e(t[n],n);return r}function Xe(t){return t===null?t:Array.isArray(t)?t.map(Xe):typeof t=="object"?gl(t)?hl(t):t.constructor!==null&&t.constructor.name!=="Object"?t:yl(t,Xe):t}function hl({$type:t,value:e}){switch(t){case"BigInt":return BigInt(e);case"Bytes":{let{buffer:r,byteOffset:n,byteLength:i}=b.from(e,"base64");return new Uint8Array(r,n,i)}case"DateTime":return new Date(e);case"Decimal":return new v(e);case"Json":return JSON.parse(e);default:po(e,"Unknown tagged value")}}var fo="6.19.1";u();c();m();p();d();l();u();c();m();p();d();l();var wl=()=>globalThis.process?.release?.name==="node",xl=()=>!!globalThis.Bun||!!globalThis.process?.versions?.bun,El=()=>!!globalThis.Deno,Pl=()=>typeof globalThis.Netlify=="object",vl=()=>typeof globalThis.EdgeRuntime=="object",Tl=()=>globalThis.navigator?.userAgent==="Cloudflare-Workers";function Cl(){return[[Pl,"netlify"],[vl,"edge-light"],[Tl,"workerd"],[El,"deno"],[xl,"bun"],[wl,"node"]].flatMap(r=>r[0]()?[r[1]]:[]).at(0)??""}var Al={node:"Node.js",workerd:"Cloudflare Workers",deno:"Deno and Deno Deploy",netlify:"Netlify Edge Functions","edge-light":"Edge Runtime (Vercel Edge Functions, Vercel Edge Middleware, Next.js (Pages Router) Edge API Routes, Next.js (App Router) Edge Route Handlers or Next.js Middleware)"};function Ze(){let t=Cl();return{id:t,prettyName:Al[t]||t,isEdge:["workerd","deno","netlify","edge-light"].includes(t)}}function dr({inlineDatasources:t,overrideDatasources:e,env:r,clientVersion:n}){let i,o=Object.keys(t)[0],s=t[o]?.url,a=e[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw Ze().id==="workerd"?new I(`error: Environment variable not found: ${s.fromEnvVar}. + +In Cloudflare module Workers, environment variables are available only in the Worker's \`env\` parameter of \`fetch\`. +To solve this, provide the connection string directly: https://pris.ly/d/cloudflare-datasource-url`,n):new I(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new I("error: Missing URL environment variable, value, or override.",n);return i}u();c();m();p();d();l();u();c();m();p();d();l();function go(t){if(t?.kind==="itx")return t.options.id}u();c();m();p();d();l();var nn,yo={async loadLibrary(t){let{clientVersion:e,adapter:r,engineWasm:n}=t;if(r===void 0)throw new I(`The \`adapter\` option for \`PrismaClient\` is required in this context (${Ze().prettyName})`,e);if(n===void 0)throw new I("WASM engine was unexpectedly `undefined`",e);nn===void 0&&(nn=(async()=>{let o=await n.getRuntime(),s=await n.getQueryEngineWasmModule();if(s==null)throw new I("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",e);let a={"./query_engine_bg.js":o},f=new WebAssembly.Instance(s,a),h=f.exports.__wbindgen_start;return o.__wbg_set_wasm(f.exports),h(),o.QueryEngine})());let i=await nn;return{debugPanic(){return Promise.reject("{}")},dmmf(){return Promise.resolve("{}")},version(){return{commit:"unknown",version:"unknown"}},QueryEngine:i}}};var Rl="P2036",ge=G("prisma:client:libraryEngine");function Sl(t){return t.item_type==="query"&&"query"in t}function Ol(t){return"level"in t?t.level==="error"&&t.message==="PANIC":!1}var oO=[...kr,"native"],kl=0xffffffffffffffffn,on=1n;function Dl(){let t=on++;return on>kl&&(on=1n),t}var Tt=class{name="LibraryEngine";engine;libraryInstantiationPromise;libraryStartingPromise;libraryStoppingPromise;libraryStarted;executingQueryPromise;config;QueryEngineConstructor;libraryLoader;library;logEmitter;libQueryEnginePath;binaryTarget;datasourceOverrides;datamodel;logQueries;logLevel;lastQuery;loggerRustPanic;tracingHelper;adapterPromise;versionInfo;constructor(e,r){this.libraryLoader=r??yo,this.config=e,this.libraryStarted=!1,this.logQueries=e.logQueries??!1,this.logLevel=e.logLevel??"error",this.logEmitter=e.logEmitter,this.datamodel=e.inlineSchema,this.tracingHelper=e.tracingHelper,e.enableDebugLogs&&(this.logLevel="debug");let n=Object.keys(e.overrideDatasources)[0],i=e.overrideDatasources[n]?.url;n!==void 0&&i!==void 0&&(this.datasourceOverrides={[n]:i}),this.libraryInstantiationPromise=this.instantiateLibrary()}wrapEngine(e){return{applyPendingMigrations:e.applyPendingMigrations?.bind(e),commitTransaction:this.withRequestId(e.commitTransaction.bind(e)),connect:this.withRequestId(e.connect.bind(e)),disconnect:this.withRequestId(e.disconnect.bind(e)),metrics:e.metrics?.bind(e),query:this.withRequestId(e.query.bind(e)),rollbackTransaction:this.withRequestId(e.rollbackTransaction.bind(e)),sdlSchema:e.sdlSchema?.bind(e),startTransaction:this.withRequestId(e.startTransaction.bind(e)),trace:e.trace.bind(e),free:e.free?.bind(e)}}withRequestId(e){return async(...r)=>{let n=Dl().toString();try{return await e(...r,n)}finally{if(this.tracingHelper.isEnabled()){let i=await this.engine?.trace(n);if(i){let o=JSON.parse(i);this.tracingHelper.dispatchEngineSpans(o.spans)}}}}}async applyPendingMigrations(){throw new Error("Cannot call this method from this type of engine instance")}async transaction(e,r,n){await this.start();let i=await this.adapterPromise,o=JSON.stringify(r),s;if(e==="start"){let f=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel});s=await this.engine?.startTransaction(f,o)}else e==="commit"?s=await this.engine?.commitTransaction(n.id,o):e==="rollback"&&(s=await this.engine?.rollbackTransaction(n.id,o));let a=this.parseEngineResponse(s);if(Il(a)){let f=this.getExternalAdapterError(a,i?.errorRegistry);throw f?f.error:new Z(a.message,{code:a.error_code,clientVersion:this.config.clientVersion,meta:a.meta})}else if(typeof a.message=="string")throw new Q(a.message,{clientVersion:this.config.clientVersion});return a}async instantiateLibrary(){if(ge("internalSetup"),this.libraryInstantiationPromise)return this.libraryInstantiationPromise;this.binaryTarget=await this.getCurrentBinaryTarget(),await this.tracingHelper.runInChildSpan("load_engine",()=>this.loadEngine()),this.version()}async getCurrentBinaryTarget(){}parseEngineResponse(e){if(!e)throw new Q("Response from the Engine was empty",{clientVersion:this.config.clientVersion});try{return JSON.parse(e)}catch{throw new Q("Unable to JSON.parse response from engine",{clientVersion:this.config.clientVersion})}}async loadEngine(){if(!this.engine){this.QueryEngineConstructor||(this.library=await this.libraryLoader.loadLibrary(this.config),this.QueryEngineConstructor=this.library.QueryEngine);try{let e=new w(this);this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(qt));let r=await this.adapterPromise;r&&ge("Using driver adapter: %O",r),this.engine=this.wrapEngine(new this.QueryEngineConstructor({datamodel:this.datamodel,env:g.env,logQueries:this.config.logQueries??!1,ignoreEnvVarErrors:!0,datasourceOverrides:this.datasourceOverrides??{},logLevel:this.logLevel,configDir:this.config.cwd,engineProtocol:"json",enableTracing:this.tracingHelper.isEnabled()},n=>{e.deref()?.logger(n)},r))}catch(e){let r=e,n=this.parseInitError(r.message);throw typeof n=="string"?r:new I(n.message,this.config.clientVersion,n.error_code)}}}logger(e){let r=this.parseEngineResponse(e);r&&(r.level=r?.level.toLowerCase()??"unknown",Sl(r)?this.logEmitter.emit("query",{timestamp:new Date,query:r.query,params:r.params,duration:Number(r.duration_ms),target:r.module_path}):(Ol(r),this.logEmitter.emit(r.level,{timestamp:new Date,message:r.message,target:r.module_path})))}parseInitError(e){try{return JSON.parse(e)}catch{}return e}parseRequestError(e){try{return JSON.parse(e)}catch{}return e}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the library engine since Prisma 5.0.0, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){if(this.libraryInstantiationPromise||(this.libraryInstantiationPromise=this.instantiateLibrary()),await this.libraryInstantiationPromise,await this.libraryStoppingPromise,this.libraryStartingPromise)return ge(`library already starting, this.libraryStarted: ${this.libraryStarted}`),this.libraryStartingPromise;if(this.libraryStarted)return;let e=async()=>{ge("library starting");try{let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.connect(JSON.stringify(r)),this.libraryStarted=!0,this.adapterPromise||(this.adapterPromise=this.config.adapter?.connect()?.then(qt)),await this.adapterPromise,ge("library started")}catch(r){let n=this.parseInitError(r.message);throw typeof n=="string"?r:new I(n.message,this.config.clientVersion,n.error_code)}finally{this.libraryStartingPromise=void 0}};return this.libraryStartingPromise=this.tracingHelper.runInChildSpan("connect",e),this.libraryStartingPromise}async stop(){if(await this.libraryInstantiationPromise,await this.libraryStartingPromise,await this.executingQueryPromise,this.libraryStoppingPromise)return ge("library is already stopping"),this.libraryStoppingPromise;if(!this.libraryStarted){await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0;return}let e=async()=>{await new Promise(n=>setImmediate(n)),ge("library stopping");let r={traceparent:this.tracingHelper.getTraceParent()};await this.engine?.disconnect(JSON.stringify(r)),this.engine?.free&&this.engine.free(),this.engine=void 0,this.libraryStarted=!1,this.libraryStoppingPromise=void 0,this.libraryInstantiationPromise=void 0,await(await this.adapterPromise)?.dispose(),this.adapterPromise=void 0,ge("library stopped")};return this.libraryStoppingPromise=this.tracingHelper.runInChildSpan("disconnect",e),this.libraryStoppingPromise}version(){return this.versionInfo=this.library?.version(),this.versionInfo?.version??"unknown"}debugPanic(e){return this.library?.debugPanic(e)}async request(e,{traceparent:r,interactiveTransaction:n}){ge(`sending request, this.libraryStarted: ${this.libraryStarted}`);let i=JSON.stringify({traceparent:r}),o=JSON.stringify(e);try{await this.start();let s=await this.adapterPromise;this.executingQueryPromise=this.engine?.query(o,i,n?.id),this.lastQuery=o;let a=this.parseEngineResponse(await this.executingQueryPromise);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],s?.errorRegistry):new Q(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});if(this.loggerRustPanic)throw this.loggerRustPanic;return{data:a}}catch(s){if(s instanceof I)throw s;s.code==="GenericFailure"&&s.message?.startsWith("PANIC:");let a=this.parseRequestError(s.message);throw typeof a=="string"?s:new Q(`${a.message} +${a.backtrace}`,{clientVersion:this.config.clientVersion})}}async requestBatch(e,{transaction:r,traceparent:n}){ge("requestBatch");let i=ur(e,r);await this.start();let o=await this.adapterPromise;this.lastQuery=JSON.stringify(i),this.executingQueryPromise=this.engine?.query(this.lastQuery,JSON.stringify({traceparent:n}),go(r));let s=await this.executingQueryPromise,a=this.parseEngineResponse(s);if(a.errors)throw a.errors.length===1?this.buildQueryError(a.errors[0],o?.errorRegistry):new Q(JSON.stringify(a.errors),{clientVersion:this.config.clientVersion});let{batchResult:f,errors:h}=a;if(Array.isArray(f))return f.map(C=>C.errors&&C.errors.length>0?this.loggerRustPanic??this.buildQueryError(C.errors[0],o?.errorRegistry):{data:C});throw h&&h.length===1?new Error(h[0].error):new Error(JSON.stringify(a))}buildQueryError(e,r){e.user_facing_error.is_panic;let n=this.getExternalAdapterError(e.user_facing_error,r);return n?n.error:cr(e,this.config.clientVersion,this.config.activeProvider)}getExternalAdapterError(e,r){if(e.error_code===Rl&&r){let n=e.meta?.id;Bt(typeof n=="number","Malformed external JS error received from the engine");let i=r.consumeError(n);return Bt(i,"External error with reported id was not registered"),i}}async metrics(e){await this.start();let r=await this.engine.metrics(JSON.stringify(e));return e.format==="prometheus"?r:this.parseEngineResponse(r)}};function Il(t){return typeof t=="object"&&t!==null&&t.error_code!==void 0}u();c();m();p();d();l();var Ct="Accelerate has not been setup correctly. Make sure your client is using `.$extends(withAccelerate())`. See https://pris.ly/d/accelerate-getting-started",fr=class{constructor(e){this.config=e;this.resolveDatasourceUrl=this.config.accelerateUtils?.resolveDatasourceUrl,this.getBatchRequestPayload=this.config.accelerateUtils?.getBatchRequestPayload,this.prismaGraphQLToJSError=this.config.accelerateUtils?.prismaGraphQLToJSError,this.PrismaClientUnknownRequestError=this.config.accelerateUtils?.PrismaClientUnknownRequestError,this.PrismaClientInitializationError=this.config.accelerateUtils?.PrismaClientInitializationError,this.PrismaClientKnownRequestError=this.config.accelerateUtils?.PrismaClientKnownRequestError,this.debug=this.config.accelerateUtils?.debug,this.engineVersion=this.config.accelerateUtils?.engineVersion,this.clientVersion=this.config.accelerateUtils?.clientVersion}name="AccelerateEngine";resolveDatasourceUrl;getBatchRequestPayload;prismaGraphQLToJSError;PrismaClientUnknownRequestError;PrismaClientInitializationError;PrismaClientKnownRequestError;debug;engineVersion;clientVersion;onBeforeExit(e){}async start(){}async stop(){}version(e){return"unknown"}transaction(e,r,n){throw new I(Ct,this.config.clientVersion)}metrics(e){throw new I(Ct,this.config.clientVersion)}request(e,r){throw new I(Ct,this.config.clientVersion)}requestBatch(e,r){throw new I(Ct,this.config.clientVersion)}applyPendingMigrations(){throw new I(Ct,this.config.clientVersion)}};u();c();m();p();d();l();function ho({url:t,adapter:e,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=O=>{i.push({_tag:"warning",value:O})},a=O=>{let D=O.join(` +`);o.push({_tag:"error",value:D})},f=!!t?.startsWith("prisma://"),h=_r(t),C=!!e,A=f||h;!C&&r&&A&&n!=="client"&&n!=="wasm-compiler-edge"&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let k=A||!r;C&&(k||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):A?a(["You've provided both a driver adapter and an Accelerate database URL. Driver adapters currently cannot connect to Accelerate.","Please provide either a driver adapter with a direct database URL or an Accelerate URL and no driver adapter."]):r||a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let R={accelerate:k,ppg:h,driverAdapters:C};function _(O){return O.length>0}return _(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:R}:{ok:!0,diagnostics:{warnings:i},isUsing:R}}function bo({copyEngine:t=!0},e){let r;try{r=dr({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,env:{...e.env,...g.env},clientVersion:e.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=ho({url:r,adapter:e.adapter,copyEngine:t,targetBuildType:"wasm-engine-edge"});for(let A of o.warnings)at(...A.value);if(!n){let A=o.errors[0];throw new K(A.value,{clientVersion:e.clientVersion})}let s=Ne(e.generator),a=s==="library",f=s==="binary",h=s==="client",C=(i.accelerate||i.ppg)&&!i.driverAdapters;return i.accelerate,i.driverAdapters?new Tt(e):i.accelerate?new fr(e):new sn({clientVersion:e.clientVersion})}var sn=class{constructor(e){return new Proxy(this,{get(r,n){let i=`In order to run Prisma Client on edge runtime, either: +- Use Prisma Accelerate: https://pris.ly/d/accelerate +- Use Driver Adapters: https://pris.ly/d/driver-adapters`;throw new K(i,e)}})}};u();c();m();p();d();l();function wo({generator:t}){return t?.previewFeatures??[]}u();c();m();p();d();l();var xo=t=>({command:t});u();c();m();p();d();l();u();c();m();p();d();l();var Eo=t=>t.strings.reduce((e,r,n)=>`${e}@P${n}${r}`);u();c();m();p();d();l();l();function et(t){try{return Po(t,"fast")}catch{return Po(t,"slow")}}function Po(t,e){return JSON.stringify(t.map(r=>To(r,e)))}function To(t,e){if(Array.isArray(t))return t.map(r=>To(r,e));if(typeof t=="bigint")return{prisma__type:"bigint",prisma__value:t.toString()};if(qe(t))return{prisma__type:"date",prisma__value:t.toJSON()};if(be.isDecimal(t))return{prisma__type:"decimal",prisma__value:t.toJSON()};if(b.isBuffer(t))return{prisma__type:"bytes",prisma__value:t.toString("base64")};if(Ml(t))return{prisma__type:"bytes",prisma__value:b.from(t).toString("base64")};if(ArrayBuffer.isView(t)){let{buffer:r,byteOffset:n,byteLength:i}=t;return{prisma__type:"bytes",prisma__value:b.from(r,n,i).toString("base64")}}return typeof t=="object"&&e==="slow"?Co(t):t}function Ml(t){return t instanceof ArrayBuffer||t instanceof SharedArrayBuffer?!0:typeof t=="object"&&t!==null?t[Symbol.toStringTag]==="ArrayBuffer"||t[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Co(t){if(typeof t!="object"||t===null)return t;if(typeof t.toJSON=="function")return t.toJSON();if(Array.isArray(t))return t.map(vo);let e={};for(let r of Object.keys(t))e[r]=vo(t[r]);return e}function vo(t){return typeof t=="bigint"?t.toString():Co(t)}var _l=/^(\s*alter\s)/i,Ao=G("prisma:client");function an(t,e,r,n){if(!(t!=="postgresql"&&t!=="cockroachdb")&&r.length>0&&_l.exec(e))throw new Error(`Running ALTER using ${n} is not supported +Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization. + +Example: + await prisma.$executeRawUnsafe(\`ALTER USER prisma WITH PASSWORD '\${password}'\`) + +More Information: https://pris.ly/d/execute-raw +`)}var ln=({clientMethod:t,activeProvider:e})=>r=>{let n="",i;if(or(r))n=r.sql,i={values:et(r.values),__prismaRawParameters__:!0};else if(Array.isArray(r)){let[o,...s]=r;n=o,i={values:et(s||[]),__prismaRawParameters__:!0}}else switch(e){case"sqlite":case"mysql":{n=r.sql,i={values:et(r.values),__prismaRawParameters__:!0};break}case"cockroachdb":case"postgresql":case"postgres":{n=r.text,i={values:et(r.values),__prismaRawParameters__:!0};break}case"sqlserver":{n=Eo(r),i={values:et(r.values),__prismaRawParameters__:!0};break}default:throw new Error(`The ${e} provider does not support ${t}`)}return i?.values?Ao(`prisma.${t}(${n}, ${i.values})`):Ao(`prisma.${t}(${n})`),{query:n,parameters:i}},Ro={requestArgsToMiddlewareArgs(t){return[t.strings,...t.values]},middlewareArgsToRequestArgs(t){let[e,...r]=t;return new ee(e,r)}},So={requestArgsToMiddlewareArgs(t){return[t]},middlewareArgsToRequestArgs(t){return t[0]}};u();c();m();p();d();l();function un(t){return function(r,n){let i,o=(s=t)=>{try{return s===void 0||s?.kind==="itx"?i??=Oo(r(s)):Oo(r(s))}catch(a){return Promise.reject(a)}};return{get spec(){return n},then(s,a){return o().then(s,a)},catch(s){return o().catch(s)},finally(s){return o().finally(s)},requestTransaction(s){let a=o(s);return a.requestTransaction?a.requestTransaction(s):a},[Symbol.toStringTag]:"PrismaPromise"}}}function Oo(t){return typeof t.then=="function"?t:Promise.resolve(t)}u();c();m();p();d();l();var Ll=Dr.split(".")[0],Fl={isEnabled(){return!1},getTraceParent(){return"00-10-10-00"},dispatchEngineSpans(){},getActiveContext(){},runInChildSpan(t,e){return e()}},cn=class{isEnabled(){return this.getGlobalTracingHelper().isEnabled()}getTraceParent(e){return this.getGlobalTracingHelper().getTraceParent(e)}dispatchEngineSpans(e){return this.getGlobalTracingHelper().dispatchEngineSpans(e)}getActiveContext(){return this.getGlobalTracingHelper().getActiveContext()}runInChildSpan(e,r){return this.getGlobalTracingHelper().runInChildSpan(e,r)}getGlobalTracingHelper(){let e=globalThis[`V${Ll}_PRISMA_INSTRUMENTATION`],r=globalThis.PRISMA_INSTRUMENTATION;return e?.helper??r?.helper??Fl}};function ko(){return new cn}u();c();m();p();d();l();function Do(t,e=()=>{}){let r,n=new Promise(i=>r=i);return{then(i){return--t===0&&r(e()),i?.(n)}}}u();c();m();p();d();l();function Io(t){return typeof t=="string"?t:t.reduce((e,r)=>{let n=typeof r=="string"?r:r.level;return n==="query"?e:e&&(r==="info"||e==="info")?"info":n},void 0)}u();c();m();p();d();l();u();c();m();p();d();l();function gr(t){return typeof t.batchRequestIdx=="number"}u();c();m();p();d();l();function Mo(t){if(t.action!=="findUnique"&&t.action!=="findUniqueOrThrow")return;let e=[];return t.modelName&&e.push(t.modelName),t.query.arguments&&e.push(mn(t.query.arguments)),e.push(mn(t.query.selection)),e.join("")}function mn(t){return`(${Object.keys(t).sort().map(r=>{let n=t[r];return typeof n=="object"&&n!==null?`(${r} ${mn(n)})`:r}).join(" ")})`}u();c();m();p();d();l();var Ul={aggregate:!1,aggregateRaw:!1,createMany:!0,createManyAndReturn:!0,createOne:!0,deleteMany:!0,deleteOne:!0,executeRaw:!0,findFirst:!1,findFirstOrThrow:!1,findMany:!1,findRaw:!1,findUnique:!1,findUniqueOrThrow:!1,groupBy:!1,queryRaw:!1,runCommandRaw:!0,updateMany:!0,updateManyAndReturn:!0,updateOne:!0,upsertOne:!0};function pn(t){return Ul[t]}u();c();m();p();d();l();var yr=class{constructor(e){this.options=e;this.batches={}}batches;tickActive=!1;request(e){let r=this.options.batchBy(e);return r?(this.batches[r]||(this.batches[r]=[],this.tickActive||(this.tickActive=!0,g.nextTick(()=>{this.dispatchBatches(),this.tickActive=!1}))),new Promise((n,i)=>{this.batches[r].push({request:e,resolve:n,reject:i})})):this.options.singleLoader(e)}dispatchBatches(){for(let e in this.batches){let r=this.batches[e];delete this.batches[e],r.length===1?this.options.singleLoader(r[0].request).then(n=>{n instanceof Error?r[0].reject(n):r[0].resolve(n)}).catch(n=>{r[0].reject(n)}):(r.sort((n,i)=>this.options.batchOrder(n.request,i.request)),this.options.batchLoader(r.map(n=>n.request)).then(n=>{if(n instanceof Error)for(let i=0;i{for(let i=0;i_e("bigint",r));case"bytes-array":return e.map(r=>_e("bytes",r));case"decimal-array":return e.map(r=>_e("decimal",r));case"datetime-array":return e.map(r=>_e("datetime",r));case"date-array":return e.map(r=>_e("date",r));case"time-array":return e.map(r=>_e("time",r));default:return e}}function hr(t){let e=[],r=Nl(t);for(let n=0;n{let{transaction:o,otelParentCtx:s}=n[0],a=n.map(A=>A.protocolQuery),f=this.client._tracingHelper.getTraceParent(s),h=n.some(A=>pn(A.protocolQuery.action));return(await this.client._engine.requestBatch(a,{traceparent:f,transaction:Bl(o),containsWrite:h,customDataProxyFetch:i})).map((A,k)=>{if(A instanceof Error)return A;try{return this.mapQueryEngineResult(n[k],A)}catch(R){return R}})}),singleLoader:async n=>{let i=n.transaction?.kind==="itx"?_o(n.transaction):void 0,o=await this.client._engine.request(n.protocolQuery,{traceparent:this.client._tracingHelper.getTraceParent(),interactiveTransaction:i,isWrite:pn(n.protocolQuery.action),customDataProxyFetch:n.customDataProxyFetch});return this.mapQueryEngineResult(n,o)},batchBy:n=>n.transaction?.id?`transaction-${n.transaction.id}`:Mo(n.protocolQuery),batchOrder(n,i){return n.transaction?.kind==="batch"&&i.transaction?.kind==="batch"?n.transaction.index-i.transaction.index:0}})}async request(e){try{return await this.dataloader.request(e)}catch(r){let{clientMethod:n,callsite:i,transaction:o,args:s,modelName:a}=e;this.handleAndLogRequestError({error:r,clientMethod:n,callsite:i,transaction:o,args:s,modelName:a,globalOmit:e.globalOmit})}}mapQueryEngineResult({dataPath:e,unpacker:r},n){let i=n?.data,o=this.unpack(i,e,r);return g.env.PRISMA_CLIENT_GET_TIME?{data:o}:o}handleAndLogRequestError(e){try{this.handleRequestError(e)}catch(r){throw this.logEmitter&&this.logEmitter.emit("error",{message:r.message,target:e.clientMethod,timestamp:new Date}),r}}handleRequestError({error:e,clientMethod:r,callsite:n,transaction:i,args:o,modelName:s,globalOmit:a}){if(ql(e),Vl(e,i))throw e;if(e instanceof Z&&jl(e)){let h=Lo(e.meta);Zt({args:o,errors:[h],callsite:n,errorFormat:this.client._errorFormat,originalMethod:r,clientVersion:this.client._clientVersion,globalOmit:a})}let f=e.message;if(n&&(f=$t({callsite:n,originalMethod:r,isPanic:e.isPanic,showColors:this.client._errorFormat==="pretty",message:f})),f=this.sanitizeMessage(f),e.code){let h=s?{modelName:s,...e.meta}:e.meta;throw new Z(f,{code:e.code,clientVersion:this.client._clientVersion,meta:h,batchRequestIdx:e.batchRequestIdx})}else{if(e.isPanic)throw new xe(f,this.client._clientVersion);if(e instanceof Q)throw new Q(f,{clientVersion:this.client._clientVersion,batchRequestIdx:e.batchRequestIdx});if(e instanceof I)throw new I(f,this.client._clientVersion);if(e instanceof xe)throw new xe(f,this.client._clientVersion)}throw e.clientVersion=this.client._clientVersion,e}sanitizeMessage(e){return this.client._errorFormat&&this.client._errorFormat!=="pretty"?Ur(e):e}unpack(e,r,n){if(!e||(e.data&&(e=e.data),!e))return e;let i=Object.keys(e)[0],o=Object.values(e)[0],s=r.filter(h=>h!=="select"&&h!=="include"),a=Zr(o,s),f=i==="queryRaw"?hr(a):Xe(a);return n?n(f):f}get[Symbol.toStringTag](){return"RequestHandler"}};function Bl(t){if(t){if(t.kind==="batch")return{kind:"batch",options:{isolationLevel:t.isolationLevel}};if(t.kind==="itx")return{kind:"itx",options:_o(t)};Ie(t,"Unknown transaction kind")}}function _o(t){return{id:t.id,payload:t.payload}}function Vl(t,e){return gr(t)&&e?.kind==="batch"&&t.batchRequestIdx!==e.index}function jl(t){return t.code==="P2009"||t.code==="P2012"}function Lo(t){if(t.kind==="Union")return{kind:"Union",errors:t.errors.map(Lo)};if(Array.isArray(t.selectionPath)){let[,...e]=t.selectionPath;return{...t,selectionPath:e}}return t}u();c();m();p();d();l();var Fo=fo;u();c();m();p();d();l();var Vo=kt(Vr());u();c();m();p();d();l();var M=class extends Error{constructor(e){super(e+` +Read more at https://pris.ly/d/client-constructor`),this.name="PrismaClientConstructorValidationError"}get[Symbol.toStringTag](){return"PrismaClientConstructorValidationError"}};re(M,"PrismaClientConstructorValidationError");var Uo=["datasources","datasourceUrl","errorFormat","adapter","log","transactionOptions","omit","__internal"],No=["pretty","colorless","minimal"],qo=["info","query","warn","error"],$l={datasources:(t,{datasourceNames:e})=>{if(t){if(typeof t!="object"||Array.isArray(t))throw new M(`Invalid value ${JSON.stringify(t)} for "datasources" provided to PrismaClient constructor`);for(let[r,n]of Object.entries(t)){if(!e.includes(r)){let i=tt(r,e)||` Available datasources: ${e.join(", ")}`;throw new M(`Unknown datasource ${r} provided to PrismaClient constructor.${i}`)}if(typeof n!="object"||Array.isArray(n))throw new M(`Invalid value ${JSON.stringify(t)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(n&&typeof n=="object")for(let[i,o]of Object.entries(n)){if(i!=="url")throw new M(`Invalid value ${JSON.stringify(t)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`);if(typeof o!="string")throw new M(`Invalid value ${JSON.stringify(o)} for datasource "${r}" provided to PrismaClient constructor. +It should have this form: { url: "CONNECTION_STRING" }`)}}}},adapter:(t,e)=>{if(!t&&Ne(e.generator)==="client")throw new M('Using engine type "client" requires a driver adapter to be provided to PrismaClient constructor.');if(t!==null){if(t===void 0)throw new M('"adapter" property must not be undefined, use null to conditionally disable driver adapters.');if(Ne(e.generator)==="binary")throw new M('Cannot use a driver adapter with the "binary" Query Engine. Please use the "library" Query Engine.')}},datasourceUrl:t=>{if(typeof t<"u"&&typeof t!="string")throw new M(`Invalid value ${JSON.stringify(t)} for "datasourceUrl" provided to PrismaClient constructor. +Expected string or undefined.`)},errorFormat:t=>{if(t){if(typeof t!="string")throw new M(`Invalid value ${JSON.stringify(t)} for "errorFormat" provided to PrismaClient constructor.`);if(!No.includes(t)){let e=tt(t,No);throw new M(`Invalid errorFormat ${t} provided to PrismaClient constructor.${e}`)}}},log:t=>{if(!t)return;if(!Array.isArray(t))throw new M(`Invalid value ${JSON.stringify(t)} for "log" provided to PrismaClient constructor.`);function e(r){if(typeof r=="string"&&!qo.includes(r)){let n=tt(r,qo);throw new M(`Invalid log level "${r}" provided to PrismaClient constructor.${n}`)}}for(let r of t){e(r);let n={level:e,emit:i=>{let o=["stdout","event"];if(!o.includes(i)){let s=tt(i,o);throw new M(`Invalid value ${JSON.stringify(i)} for "emit" in logLevel provided to PrismaClient constructor.${s}`)}}};if(r&&typeof r=="object")for(let[i,o]of Object.entries(r))if(n[i])n[i](o);else throw new M(`Invalid property ${i} for "log" provided to PrismaClient constructor`)}},transactionOptions:t=>{if(!t)return;let e=t.maxWait;if(e!=null&&e<=0)throw new M(`Invalid value ${e} for maxWait in "transactionOptions" provided to PrismaClient constructor. maxWait needs to be greater than 0`);let r=t.timeout;if(r!=null&&r<=0)throw new M(`Invalid value ${r} for timeout in "transactionOptions" provided to PrismaClient constructor. timeout needs to be greater than 0`)},omit:(t,e)=>{if(typeof t!="object")throw new M('"omit" option is expected to be an object.');if(t===null)throw new M('"omit" option can not be `null`');let r=[];for(let[n,i]of Object.entries(t)){let o=Jl(n,e.runtimeDataModel);if(!o){r.push({kind:"UnknownModel",modelKey:n});continue}for(let[s,a]of Object.entries(i)){let f=o.fields.find(h=>h.name===s);if(!f){r.push({kind:"UnknownField",modelKey:n,fieldName:s});continue}if(f.relationName){r.push({kind:"RelationInOmit",modelKey:n,fieldName:s});continue}typeof a!="boolean"&&r.push({kind:"InvalidFieldValue",modelKey:n,fieldName:s})}}if(r.length>0)throw new M(Gl(t,r))},__internal:t=>{if(!t)return;let e=["debug","engine","configOverride"];if(typeof t!="object")throw new M(`Invalid value ${JSON.stringify(t)} for "__internal" to PrismaClient constructor`);for(let[r]of Object.entries(t))if(!e.includes(r)){let n=tt(r,e);throw new M(`Invalid property ${JSON.stringify(r)} for "__internal" provided to PrismaClient constructor.${n}`)}}};function jo(t,e){for(let[r,n]of Object.entries(t)){if(!Uo.includes(r)){let i=tt(r,Uo);throw new M(`Unknown property ${r} provided to PrismaClient constructor.${i}`)}$l[r](n,e)}if(t.datasourceUrl&&t.datasources)throw new M('Can not use "datasourceUrl" and "datasources" options at the same time. Pick one of them')}function tt(t,e){if(e.length===0||typeof t!="string")return"";let r=Ql(t,e);return r?` Did you mean "${r}"?`:""}function Ql(t,e){if(e.length===0)return null;let r=e.map(i=>({value:i,distance:(0,Vo.default)(t,i)}));r.sort((i,o)=>i.distanceve(n)===e);if(r)return t[r]}function Gl(t,e){let r=We(t);for(let o of e)switch(o.kind){case"UnknownModel":r.arguments.getField(o.modelKey)?.markAsError(),r.addErrorMessage(()=>`Unknown model name: ${o.modelKey}.`);break;case"UnknownField":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>`Model "${o.modelKey}" does not have a field named "${o.fieldName}".`);break;case"RelationInOmit":r.arguments.getDeepField([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>'Relations are already excluded by default and can not be specified in "omit".');break;case"InvalidFieldValue":r.arguments.getDeepFieldValue([o.modelKey,o.fieldName])?.markAsError(),r.addErrorMessage(()=>"Omit field option value must be a boolean.");break}let{message:n,args:i}=Xt(r,"colorless");return`Error validating "omit" option: + +${i} + +${n}`}u();c();m();p();d();l();function $o(t){return t.length===0?Promise.resolve([]):new Promise((e,r)=>{let n=new Array(t.length),i=null,o=!1,s=0,a=()=>{o||(s++,s===t.length&&(o=!0,i?r(i):e(n)))},f=h=>{o||(o=!0,r(h))};for(let h=0;h{n[h]=C,a()},C=>{if(!gr(C)){f(C);return}C.batchRequestIdx===h?f(C):(i||(i=C),a())})})}var Ae=G("prisma:client");typeof globalThis=="object"&&(globalThis.NODE_CLIENT=!0);var Wl={requestArgsToMiddlewareArgs:t=>t,middlewareArgsToRequestArgs:t=>t},Kl=Symbol.for("prisma.client.transaction.id"),Hl={id:0,nextId(){return++this.id}};function Go(t){class e{_originalClient=this;_runtimeDataModel;_requestHandler;_connectionPromise;_disconnectionPromise;_engineConfig;_accelerateEngineConfig;_clientVersion;_errorFormat;_tracingHelper;_previewFeatures;_activeProvider;_globalOmit;_extensions;_engine;_appliedParent;_createPrismaPromise=un();constructor(n){t=n?.__internal?.configOverride?.(t)??t,co(t),n&&jo(n,t);let i=new sr().on("error",()=>{});this._extensions=Ke.empty(),this._previewFeatures=wo(t),this._clientVersion=t.clientVersion??Fo,this._activeProvider=t.activeProvider,this._globalOmit=n?.omit,this._tracingHelper=ko();let o=t.relativeEnvPaths&&{rootEnvPath:t.relativeEnvPaths.rootEnvPath&&Ut.resolve(t.dirname,t.relativeEnvPaths.rootEnvPath),schemaEnvPath:t.relativeEnvPaths.schemaEnvPath&&Ut.resolve(t.dirname,t.relativeEnvPaths.schemaEnvPath)},s;if(n?.adapter){s=n.adapter;let f=t.activeProvider==="postgresql"||t.activeProvider==="cockroachdb"?"postgres":t.activeProvider;if(s.provider!==f)throw new I(`The Driver Adapter \`${s.adapterName}\`, based on \`${s.provider}\`, is not compatible with the provider \`${f}\` specified in the Prisma schema.`,this._clientVersion);if(n.datasources||n.datasourceUrl!==void 0)throw new I("Custom datasource configuration is not compatible with Prisma Driver Adapters. Please define the database connection string directly in the Driver Adapter configuration.",this._clientVersion)}let a=t.injectableEdgeEnv?.();try{let f=n??{},h=f.__internal??{},C=h.debug===!0;C&&G.enable("prisma:client");let A=Ut.resolve(t.dirname,t.relativePath);Bn.existsSync(A)||(A=t.dirname),Ae("dirname",t.dirname),Ae("relativePath",t.relativePath),Ae("cwd",A);let k=h.engine||{};if(f.errorFormat?this._errorFormat=f.errorFormat:g.env.NODE_ENV==="production"?this._errorFormat="minimal":g.env.NO_COLOR?this._errorFormat="colorless":this._errorFormat="colorless",this._runtimeDataModel=t.runtimeDataModel,this._engineConfig={cwd:A,dirname:t.dirname,enableDebugLogs:C,allowTriggerPanic:k.allowTriggerPanic,prismaPath:k.binaryPath??void 0,engineEndpoint:k.endpoint,generator:t.generator,showColors:this._errorFormat==="pretty",logLevel:f.log&&Io(f.log),logQueries:f.log&&!!(typeof f.log=="string"?f.log==="query":f.log.find(R=>typeof R=="string"?R==="query":R.level==="query")),env:a?.parsed??{},flags:[],engineWasm:t.engineWasm,compilerWasm:t.compilerWasm,clientVersion:t.clientVersion,engineVersion:t.engineVersion,previewFeatures:this._previewFeatures,activeProvider:t.activeProvider,inlineSchema:t.inlineSchema,overrideDatasources:mo(f,t.datasourceNames),inlineDatasources:t.inlineDatasources,inlineSchemaHash:t.inlineSchemaHash,tracingHelper:this._tracingHelper,transactionOptions:{maxWait:f.transactionOptions?.maxWait??2e3,timeout:f.transactionOptions?.timeout??5e3,isolationLevel:f.transactionOptions?.isolationLevel},logEmitter:i,isBundled:t.isBundled,adapter:s},this._accelerateEngineConfig={...this._engineConfig,accelerateUtils:{resolveDatasourceUrl:dr,getBatchRequestPayload:ur,prismaGraphQLToJSError:cr,PrismaClientUnknownRequestError:Q,PrismaClientInitializationError:I,PrismaClientKnownRequestError:Z,debug:G("prisma:client:accelerateEngine"),engineVersion:Jo.version,clientVersion:t.clientVersion}},Ae("clientVersion",t.clientVersion),this._engine=bo(t,this._engineConfig),this._requestHandler=new br(this,i),f.log)for(let R of f.log){let _=typeof R=="string"?R:R.emit==="stdout"?R.level:null;_&&this.$on(_,O=>{st.log(`${st.tags[_]??""}`,O.message||O.query)})}}catch(f){throw f.clientVersion=this._clientVersion,f}return this._appliedParent=Pt(this)}get[Symbol.toStringTag](){return"PrismaClient"}$on(n,i){return n==="beforeExit"?this._engine.onBeforeExit(i):n&&this._engineConfig.logEmitter.on(n,i),this}$connect(){try{return this._engine.start()}catch(n){throw n.clientVersion=this._clientVersion,n}}async $disconnect(){try{await this._engine.stop()}catch(n){throw n.clientVersion=this._clientVersion,n}finally{qn()}}$executeRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"executeRaw",args:o,transaction:n,clientMethod:i,argsMapper:ln({clientMethod:i,activeProvider:a}),callsite:Ce(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$executeRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0){let[s,a]=Qo(n,i);return an(this._activeProvider,s.text,s.values,Array.isArray(n)?"prisma.$executeRaw``":"prisma.$executeRaw(sql``)"),this.$executeRawInternal(o,"$executeRaw",s,a)}throw new K("`$executeRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#executeraw\n",{clientVersion:this._clientVersion})})}$executeRawUnsafe(n,...i){return this._createPrismaPromise(o=>(an(this._activeProvider,n,i,"prisma.$executeRawUnsafe(, [...values])"),this.$executeRawInternal(o,"$executeRawUnsafe",[n,...i])))}$runCommandRaw(n){if(t.activeProvider!=="mongodb")throw new K(`The ${t.activeProvider} provider does not support $runCommandRaw. Use the mongodb provider.`,{clientVersion:this._clientVersion});return this._createPrismaPromise(i=>this._request({args:n,clientMethod:"$runCommandRaw",dataPath:[],action:"runCommandRaw",argsMapper:xo,callsite:Ce(this._errorFormat),transaction:i}))}async $queryRawInternal(n,i,o,s){let a=this._activeProvider;return this._request({action:"queryRaw",args:o,transaction:n,clientMethod:i,argsMapper:ln({clientMethod:i,activeProvider:a}),callsite:Ce(this._errorFormat),dataPath:[],middlewareArgsMapper:s})}$queryRaw(n,...i){return this._createPrismaPromise(o=>{if(n.raw!==void 0||n.sql!==void 0)return this.$queryRawInternal(o,"$queryRaw",...Qo(n,i));throw new K("`$queryRaw` is a tag function, please use it like the following:\n```\nconst result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`\n```\n\nOr read our docs at https://www.prisma.io/docs/concepts/components/prisma-client/raw-database-access#queryraw\n",{clientVersion:this._clientVersion})})}$queryRawTyped(n){return this._createPrismaPromise(i=>{if(!this._hasPreviewFlag("typedSql"))throw new K("`typedSql` preview feature must be enabled in order to access $queryRawTyped API",{clientVersion:this._clientVersion});return this.$queryRawInternal(i,"$queryRawTyped",n)})}$queryRawUnsafe(n,...i){return this._createPrismaPromise(o=>this.$queryRawInternal(o,"$queryRawUnsafe",[n,...i]))}_transactionWithArray({promises:n,options:i}){let o=Hl.nextId(),s=Do(n.length),a=n.map((f,h)=>{if(f?.[Symbol.toStringTag]!=="PrismaPromise")throw new Error("All elements of the array need to be Prisma Client promises. Hint: Please make sure you are not awaiting the Prisma client calls you intended to pass in the $transaction function.");let C=i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel,A={kind:"batch",id:o,index:h,isolationLevel:C,lock:s};return f.requestTransaction?.(A)??f});return $o(a)}async _transactionWithCallback({callback:n,options:i}){let o={traceparent:this._tracingHelper.getTraceParent()},s={maxWait:i?.maxWait??this._engineConfig.transactionOptions.maxWait,timeout:i?.timeout??this._engineConfig.transactionOptions.timeout,isolationLevel:i?.isolationLevel??this._engineConfig.transactionOptions.isolationLevel},a=await this._engine.transaction("start",o,s),f;try{let h={kind:"itx",...a};f=await n(this._createItxClient(h)),await this._engine.transaction("commit",o,a)}catch(h){throw await this._engine.transaction("rollback",o,a).catch(()=>{}),h}return f}_createItxClient(n){return ae(Pt(ae(Hi(this),[H("_appliedParent",()=>this._appliedParent._createItxClient(n)),H("_createPrismaPromise",()=>un(n)),H(Kl,()=>n.id)])),[ze(eo)])}$transaction(n,i){let o;typeof n=="function"?this._engineConfig.adapter?.adapterName==="@prisma/adapter-d1"?o=()=>{throw new Error("Cloudflare D1 does not support interactive transactions. We recommend you to refactor your queries with that limitation in mind, and use batch transactions with `prisma.$transactions([])` where applicable.")}:o=()=>this._transactionWithCallback({callback:n,options:i}):o=()=>this._transactionWithArray({promises:n,options:i});let s={name:"transaction",attributes:{method:"$transaction"}};return this._tracingHelper.runInChildSpan(s,o)}_request(n){n.otelParentCtx=this._tracingHelper.getActiveContext();let i=n.middlewareArgsMapper??Wl,o={args:i.requestArgsToMiddlewareArgs(n.args),dataPath:n.dataPath,runInTransaction:!!n.transaction,action:n.action,model:n.model},s={operation:{name:"operation",attributes:{method:o.action,model:o.model,name:o.model?`${o.model}.${o.action}`:o.action}}},a=async f=>{let{runInTransaction:h,args:C,...A}=f,k={...n,...A};C&&(k.args=i.middlewareArgsToRequestArgs(C)),n.transaction!==void 0&&h===!1&&delete k.transaction;let R=await io(this,k);return k.model?Zi({result:R,modelName:k.model,args:k.args,extensions:this._extensions,runtimeDataModel:this._runtimeDataModel,globalOmit:this._globalOmit}):R};return this._tracingHelper.runInChildSpan(s.operation,()=>a(o))}async _executeRequest({args:n,clientMethod:i,dataPath:o,callsite:s,action:a,model:f,argsMapper:h,transaction:C,unpacker:A,otelParentCtx:k,customDataProxyFetch:R}){try{n=h?h(n):n;let _={name:"serialize"},O=this._tracingHelper.runInChildSpan(_,()=>nr({modelName:f,runtimeDataModel:this._runtimeDataModel,action:a,args:n,clientMethod:i,callsite:s,extensions:this._extensions,errorFormat:this._errorFormat,clientVersion:this._clientVersion,previewFeatures:this._previewFeatures,globalOmit:this._globalOmit}));return G.enabled("prisma:client")&&(Ae("Prisma Client call:"),Ae(`prisma.${i}(${qi(n)})`),Ae("Generated request:"),Ae(JSON.stringify(O,null,2)+` +`)),C?.kind==="batch"&&await C.lock,this._requestHandler.request({protocolQuery:O,modelName:f,action:a,clientMethod:i,dataPath:o,callsite:s,args:n,extensions:this._extensions,transaction:C,unpacker:A,otelParentCtx:k,otelChildCtx:this._tracingHelper.getActiveContext(),globalOmit:this._globalOmit,customDataProxyFetch:R})}catch(_){throw _.clientVersion=this._clientVersion,_}}$metrics=new He(this);_hasPreviewFlag(n){return!!this._engineConfig.previewFeatures?.includes(n)}$applyPendingMigrations(){return this._engine.applyPendingMigrations()}$extends=zi}return e}function Qo(t,e){return zl(t)?[new ee(t,e),Ro]:[t,So]}function zl(t){return Array.isArray(t)&&Array.isArray(t.raw)}u();c();m();p();d();l();var Yl=new Set(["toJSON","$$typeof","asymmetricMatch",Symbol.iterator,Symbol.toStringTag,Symbol.isConcatSpreadable,Symbol.toPrimitive]);function Wo(t){return new Proxy(t,{get(e,r){if(r in e)return e[r];if(!Yl.has(r))throw new TypeError(`Invalid enum value: ${String(r)}`)}})}u();c();m();p();d();l();l();0&&(module.exports={DMMF,Debug,Decimal,Extensions,MetricsClient,PrismaClientInitializationError,PrismaClientKnownRequestError,PrismaClientRustPanicError,PrismaClientUnknownRequestError,PrismaClientValidationError,Public,Sql,createParam,defineDmmfProperty,deserializeJsonResponse,deserializeRawResult,dmmfToRuntimeDataModel,empty,getPrismaClient,getRuntime,join,makeStrictEnum,makeTypedQueryFactory,objectEnumValues,raw,serializeJsonQuery,skip,sqltag,warnEnvConflicts,warnOnce}); +//# sourceMappingURL=wasm-engine-edge.js.map diff --git a/packages/identity-prisma-client/schema.prisma b/packages/identity-prisma-client/schema.prisma new file mode 100644 index 0000000..a358d3c --- /dev/null +++ b/packages/identity-prisma-client/schema.prisma @@ -0,0 +1,392 @@ +generator client { + provider = "prisma-client-js" + previewFeatures = ["multiSchema"] +} + +generator externalClient { + provider = "prisma-client-js" + output = "../packages/identity-prisma-client" + binaryTargets = ["native", "debian-openssl-3.0.x"] +} + +datasource db { + provider = "postgresql" + url = env("IDENTITY_DB_URL") + schemas = ["identity"] +} + +// IDENTITY SCHEMA MODELS +// (Introspected from existing database) +// ----------------------------------------- + +model achievement_type_lu { + achievement_type_id Decimal @id(map: "achv_type_lu_pkey") @db.Decimal(5, 0) + achievement_type_desc String @db.VarChar(64) + user_achievement user_achievement[] + + @@schema("identity") +} + +model country { + country_code String @id @db.VarChar(3) + country_name String @db.VarChar(40) + modify_date DateTime? @default(now()) @db.Timestamp(6) + participating Decimal? @db.Decimal(1, 0) + default_taxform_id Decimal? @db.Decimal(10, 0) + longitude Decimal? @db.Decimal(10, 7) + latitude Decimal? @db.Decimal(10, 7) + region String? @db.VarChar(64) + iso_name String? @db.VarChar(128) + iso_alpha2_code String? @db.VarChar(2) + iso_alpha3_code String? @db.VarChar(3) + + @@schema("identity") +} + +model dice_connection { + id Int @id(map: "dice_connection_pk") @default(autoincrement()) + user_id Decimal @unique @db.Decimal(10, 0) + connection String? @db.VarChar(50) + accepted Boolean @default(false) + created_at DateTime @default(now()) @db.Timestamp(6) + short_url String? @db.VarChar(100) + con_created_at DateTime? @db.Timestamp(6) + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) + + @@index([connection]) + @@schema("identity") +} + +model email { + user_id Decimal? @db.Decimal(10, 0) + email_id Decimal @id(map: "u110_23") @default(dbgenerated("nextval('sequence_email_seq'::regclass)")) @db.Decimal(10, 0) + email_type_id Decimal? @db.Decimal(5, 0) + address String? @db.VarChar(100) + create_date DateTime? @default(now()) @db.Timestamp(6) + modify_date DateTime? @default(now()) @db.Timestamp(6) + primary_ind Decimal? @db.Decimal(1, 0) + status_id Decimal? @db.Decimal(3, 0) + email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id], onDelete: NoAction, onUpdate: NoAction, map: "email_emailstatuslu_fk") + email_type_lu email_type_lu? @relation(fields: [email_type_id], references: [email_type_id], onDelete: NoAction, onUpdate: NoAction, map: "email_emailtypelu_fk") + user_email_xref user_email_xref[] + user user? @relation("UserToEmail", fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) + + @@index([user_id, primary_ind], map: "email_user_id_idx") + @@index([user_id, email_type_id, status_id]) + @@index([address, status_id]) + @@schema("identity") +} + +model email_status_lu { + status_id Decimal @id(map: "email_status_lu_pk") @db.Decimal(3, 0) + status_desc String? @db.VarChar(100) + create_date DateTime? @default(now()) @db.Timestamp(6) + modify_date DateTime? @default(now()) @db.Timestamp(6) + email email[] + user_email_xref user_email_xref[] // Added back-relation to user_email_xref + + @@schema("identity") +} + +model email_type_lu { + email_type_id Decimal @id(map: "email_type_lu_pk") @db.Decimal(5, 0) + email_type_desc String? @db.VarChar(100) + create_date DateTime? @default(now()) @db.Timestamp(6) + modify_date DateTime? @default(now()) @db.Timestamp(6) + email email[] + + @@schema("identity") +} + +model id_sequences { + name String @id @db.VarChar(254) + next_block_start Decimal @db.Decimal(12, 0) + block_size Decimal @db.Decimal(10, 0) + exhausted Decimal @default(0) @db.Decimal(1, 0) + + @@schema("identity") +} + +model invalid_handles { + invalid_handle_id Int @id(map: "pk_invalid_hand556") + invalid_handle String @db.VarChar(20) + + @@schema("identity") +} + +model security_groups { + group_id Decimal @id(map: "pk_security_groups") @db.Decimal(12, 0) + description String @db.VarChar(254) + challenge_group_ind Int @default(0) @db.SmallInt + create_user_id Decimal? @db.Decimal(12, 0) + user_group_xref user_group_xref[] + + @@schema("identity") +} + +model security_status_lu { + security_status_id Decimal @id(map: "securitystatuslu_pkey") @db.Decimal(3, 0) + status_desc String? @db.VarChar(200) + user_group_xref user_group_xref[] + + @@schema("identity") +} + +model security_user { + login_id Decimal @id(map: "pk_security_user") @db.Decimal(12, 0) + user_id String @unique(map: "security_user_i2") @db.VarChar(50) + password String @db.VarChar(300) + create_user_id Decimal? @db.Decimal(12, 0) + modify_date DateTime? @db.Timestamp(6) + user_group_xref user_group_xref[] + + @@schema("identity") +} + +model social_login_provider { + social_login_provider_id Decimal @id(map: "social_provider_prkey") @db.Decimal(10, 0) + name String? @db.VarChar(50) + user_social_login user_social_login[] + + @@schema("identity") +} + +model sso_login_provider { + sso_login_provider_id Decimal @id(map: "sso_provider_prkey") @db.Decimal(10, 0) + name String? @db.VarChar(50) + type String @db.VarChar(50) + identify_email_enabled Boolean @default(true) + identify_handle_enabled Boolean @default(true) + user_sso_login user_sso_login[] + + @@schema("identity") +} + +model user { + user_id Decimal @id(map: "u175_45") @default(dbgenerated("nextval('sequence_user_seq'::regclass)")) @db.Decimal(10, 0) + first_name String? @db.VarChar(64) + last_name String? @db.VarChar(64) + create_date DateTime? @default(now()) @db.Timestamp(6) + modify_date DateTime? @default(now()) @db.Timestamp(6) + handle String @db.VarChar(50) + last_login DateTime? @db.Timestamp(6) + status String @db.VarChar(3) + activation_code String? @db.VarChar(32) + middle_name String? @db.VarChar(64) + handle_lower String? @db.VarChar(50) + timezone_id Decimal? @db.Decimal(5, 0) + last_site_hit_date DateTime? @db.Timestamp(6) + name_in_another_language String? @db.VarChar(64) + password String? @db.VarChar(16) + open_id String? @db.VarChar(200) + reg_source String? @db.VarChar(20) + utm_source String? @db.VarChar(50) + utm_medium String? @db.VarChar(50) + utm_campaign String? @db.VarChar(50) + dice_connection dice_connection? + user_2fa user_2fa? + user_achievement user_achievement[] + user_otp_email user_otp_email[] + user_social_login user_social_login[] + user_sso_login user_sso_login[] + user_status user_status[] + user_email_xref user_email_xref[] + emails email[] @relation("UserToEmail") + + @@index([activation_code], map: "user_activ_code_idx") + @@index([handle]) + @@index([handle_lower], map: "user_lower_handle_idx") + @@index([open_id]) + @@index([status, handle_lower]) + @@schema("identity") +} + +model user_2fa { + id Int @id(map: "user_2fa_pk") @default(autoincrement()) + user_id Decimal @unique @db.Decimal(10, 0) + mfa_enabled Boolean @default(false) + dice_enabled Boolean @default(false) + created_by Decimal @db.Decimal(10, 0) + created_at DateTime @default(now()) @db.Timestamp(6) + modified_by Decimal @db.Decimal(10, 0) + modified_at DateTime @default(now()) @db.Timestamp(6) + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) + + @@schema("identity") +} + +/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client. +model user_achievement { + user_id Decimal @db.Decimal(10, 0) // Made non-nullable for PK + achievement_date DateTime @db.Date + achievement_type_id Decimal @db.Decimal(5, 0) + description String? @db.VarChar(255) + create_date DateTime? @default(now()) @db.Timestamp(6) + achievement_type_lu achievement_type_lu @relation(fields: [achievement_type_id], references: [achievement_type_id], onDelete: NoAction, onUpdate: NoAction, map: "achv_type_fk") + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: "achv_user_fk") // Made user relation non-nullable as user_id is non-nullable + + // Define composite primary key + @@id([user_id, achievement_type_id], map: "user_achievement_pkey") // Added @@id + // @@ignore // Removed @@ignore + @@schema("identity") +} + +model user_group_xref { + user_group_id Decimal @id(map: "pk_user_group_xref") @default(dbgenerated("nextval('sequence_user_group_seq'::regclass)")) @db.Decimal(12, 0) + login_id Decimal? @db.Decimal(12, 0) + group_id Decimal? @db.Decimal(12, 0) + create_user_id Decimal? @db.Decimal(12, 0) + security_status_id Decimal? @db.Decimal(3, 0) + create_date DateTime? @default(now()) @db.Timestamp(6) + security_user security_user? @relation(fields: [login_id], references: [login_id], onDelete: Cascade, onUpdate: NoAction, map: "fk_user_grp_xref1") + security_groups security_groups? @relation(fields: [group_id], references: [group_id], onDelete: Cascade, onUpdate: NoAction, map: "fk_user_grp_xref2") + security_status_lu security_status_lu? @relation(fields: [security_status_id], references: [security_status_id], onDelete: NoAction, onUpdate: NoAction, map: "usergroupxref_status_fk") + + @@unique([login_id, group_id], map: "user_grp_xref_i2") + @@schema("identity") +} + +model user_otp_email { + id Int @id(map: "user_otp_email_pk") @default(autoincrement()) + user_id Decimal @db.Decimal(10, 0) + mode Int @db.SmallInt + otp String @db.VarChar(6) + expire_at DateTime @db.Timestamp(6) + resend Boolean @default(false) + fail_count Int @default(0) @db.SmallInt + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction) + + @@unique([user_id, mode]) + @@schema("identity") +} + +model user_social_login { + social_user_id String? @db.VarChar(254) + user_id Decimal @db.Decimal(10, 0) + social_login_provider_id Decimal @db.Decimal(10, 0) + social_user_name String @db.VarChar(100) + social_email String? @db.VarChar(100) + social_email_verified Boolean? + create_date DateTime? @default(now()) @db.Timestamp(6) + modify_date DateTime? @db.Timestamp(6) + social_login_provider social_login_provider @relation(fields: [social_login_provider_id], references: [social_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: "user_social_provider_fk") + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: "user_social_user_fk") + + @@id([user_id, social_login_provider_id], map: "user_social_prkey") + @@index([social_user_id, social_login_provider_id]) + @@schema("identity") +} + +model user_sso_login { + user_id Decimal @db.Decimal(10, 0) + sso_user_id String @db.VarChar(100) + sso_user_name String? @db.VarChar(100) + provider_id Decimal @db.Decimal(10, 0) + email String? @db.VarChar(100) + sso_login_provider sso_login_provider @relation(fields: [provider_id], references: [sso_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: "user_sso_login_provider_fk") + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: "user_sso_login_user_fk") + + @@id([user_id, provider_id], map: "user_sso_prkey") // Primary key + @@index([sso_user_id, provider_id], map: "idx_user_social_login_sso_user_id_provider_id") // Index only, NOT unique + @@schema("identity") +} + +model user_status { + user_id Decimal @db.Decimal(10, 0) + user_status_type_id Decimal @db.Decimal(3, 0) + user_status_id Decimal? @db.Decimal(5, 0) + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: "userstatus_user_fk") + user_status_lu user_status_lu? @relation(fields: [user_status_id], references: [user_status_id], onDelete: NoAction, onUpdate: NoAction, map: "userstatus_userstatuslu_fk") + user_status_type_lu user_status_type_lu @relation(fields: [user_status_type_id], references: [user_status_type_id], onDelete: NoAction, onUpdate: NoAction, map: "userstatus_userstatustype_fk") + + @@id([user_id, user_status_type_id], map: "userstatus_pk") + @@schema("identity") +} + +model user_status_lu { + user_status_id Decimal @id(map: "u113_26") @db.Decimal(5, 0) + description String? @db.VarChar(100) + user_status user_status[] + + @@schema("identity") +} + +model user_status_type_lu { + user_status_type_id Decimal @id(map: "userstatustypelu_pk") @db.Decimal(3, 0) + description String? @db.VarChar(100) + user_status user_status[] + + @@schema("identity") +} + +// Explicit definition for the user-email join table +model user_email_xref { + user_id Decimal @db.Decimal(10, 0) + email_id Decimal @db.Decimal(10, 0) + is_primary Boolean // Assuming boolean based on name, adjust if Decimal(1,0) + status_id Decimal @db.Decimal(3, 0) // Assuming relates to email_status_lu + create_date DateTime? @default(now()) @db.Timestamp(6) + modify_date DateTime? @default(now()) @db.Timestamp(6) + + user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: "user_email_xref_user_fk") // Define relation + email email @relation(fields: [email_id], references: [email_id], onDelete: NoAction, onUpdate: NoAction, map: "user_email_xref_email_fk") // Define relation + email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id]) // Optional relation to status lookup + + @@id([user_id, email_id], map: "user_email_xref_pkey") // Define composite primary key + @@index([email_id], map: "user_email_xref_email_idx") + @@index([user_id, status_id]) + @@schema("identity") +} + +// ----------------------------------------- +// (Migrated from MySQL DDL) +// ----------------------------------------- + +model Client { + id Int @id @default(autoincrement()) @map("id") + clientId String @unique @map("client_id") + name String + redirectUri String? @map("redirect_uri") @db.VarChar(8192) + secret String? + createdBy Int? + createdAt DateTime? @db.Timestamp(0) // Use Timestamp(0) if you need second precision like MySQL datetime + modifiedBy Int? + modifiedAt DateTime? @db.Timestamp(0) + + @@map("client") // Map model name to table name + @@schema("identity") +} + +model Role { + id Int @id @default(autoincrement()) @map("id") + name String @unique @db.VarChar(45) + createdBy Int? + createdAt DateTime? @db.Timestamp(0) + modifiedBy Int? + modifiedAt DateTime? @db.Timestamp(0) + + roleAssignments RoleAssignment[] // Relation field + + @@map("role") // Map model name to table name + @@schema("identity") +} + +model RoleAssignment { + id Int @id @default(autoincrement()) @map("id") + roleId Int @map("role_id") + subjectId Int @map("subject_id") + createdBy Int? + createdAt DateTime? @db.Timestamp(0) + modifiedBy Int? + modifiedAt DateTime? @db.Timestamp(0) + subjectType Int @default(1) @map("subject_type") + + role Role @relation(fields: [roleId], references: [id], map: "role_id") // Relation field + + @@unique([roleId, subjectId, subjectType], map: "role_subject_id_subject_type") + @@index([subjectId], map: "subject_id_idx") + @@index([roleId], map: "role_id_idx") + @@index([subjectId, subjectType]) + @@map("role_assignment") + @@schema("identity") +} diff --git a/packages/identity-prisma-client/wasm-edge-light-loader.mjs b/packages/identity-prisma-client/wasm-edge-light-loader.mjs new file mode 100644 index 0000000..dcf01f0 --- /dev/null +++ b/packages/identity-prisma-client/wasm-edge-light-loader.mjs @@ -0,0 +1,5 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +export default import('./query_engine_bg.wasm?module') \ No newline at end of file diff --git a/packages/identity-prisma-client/wasm-worker-loader.mjs b/packages/identity-prisma-client/wasm-worker-loader.mjs new file mode 100644 index 0000000..e60a3fa --- /dev/null +++ b/packages/identity-prisma-client/wasm-worker-loader.mjs @@ -0,0 +1,5 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file +export default import('./query_engine_bg.wasm') \ No newline at end of file diff --git a/packages/identity-prisma-client/wasm.d.ts b/packages/identity-prisma-client/wasm.d.ts new file mode 100644 index 0000000..274b8fa --- /dev/null +++ b/packages/identity-prisma-client/wasm.d.ts @@ -0,0 +1 @@ +export * from "./default" \ No newline at end of file diff --git a/packages/identity-prisma-client/wasm.js b/packages/identity-prisma-client/wasm.js new file mode 100644 index 0000000..5135185 --- /dev/null +++ b/packages/identity-prisma-client/wasm.js @@ -0,0 +1,459 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! +/* eslint-disable */ +// biome-ignore-all lint: generated file + +Object.defineProperty(exports, "__esModule", { value: true }); + +const { + PrismaClientKnownRequestError, + PrismaClientUnknownRequestError, + PrismaClientRustPanicError, + PrismaClientInitializationError, + PrismaClientValidationError, + getPrismaClient, + sqltag, + empty, + join, + raw, + skip, + Decimal, + Debug, + objectEnumValues, + makeStrictEnum, + Extensions, + warnOnce, + defineDmmfProperty, + Public, + getRuntime, + createParam, +} = require('./runtime/wasm-engine-edge.js') + + +const Prisma = {} + +exports.Prisma = Prisma +exports.$Enums = {} + +/** + * Prisma Client JS version: 6.19.1 + * Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7 + */ +Prisma.prismaVersion = { + client: "6.19.1", + engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7" +} + +Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError; +Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError +Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError +Prisma.PrismaClientInitializationError = PrismaClientInitializationError +Prisma.PrismaClientValidationError = PrismaClientValidationError +Prisma.Decimal = Decimal + +/** + * Re-export of sql-template-tag + */ +Prisma.sql = sqltag +Prisma.empty = empty +Prisma.join = join +Prisma.raw = raw +Prisma.validator = Public.validator + +/** +* Extensions +*/ +Prisma.getExtensionContext = Extensions.getExtensionContext +Prisma.defineExtension = Extensions.defineExtension + +/** + * Shorthand utilities for JSON filtering + */ +Prisma.DbNull = objectEnumValues.instances.DbNull +Prisma.JsonNull = objectEnumValues.instances.JsonNull +Prisma.AnyNull = objectEnumValues.instances.AnyNull + +Prisma.NullTypes = { + DbNull: objectEnumValues.classes.DbNull, + JsonNull: objectEnumValues.classes.JsonNull, + AnyNull: objectEnumValues.classes.AnyNull +} + + + + + +/** + * Enums + */ +exports.Prisma.TransactionIsolationLevel = makeStrictEnum({ + ReadUncommitted: 'ReadUncommitted', + ReadCommitted: 'ReadCommitted', + RepeatableRead: 'RepeatableRead', + Serializable: 'Serializable' +}); + +exports.Prisma.Achievement_type_luScalarFieldEnum = { + achievement_type_id: 'achievement_type_id', + achievement_type_desc: 'achievement_type_desc' +}; + +exports.Prisma.CountryScalarFieldEnum = { + country_code: 'country_code', + country_name: 'country_name', + modify_date: 'modify_date', + participating: 'participating', + default_taxform_id: 'default_taxform_id', + longitude: 'longitude', + latitude: 'latitude', + region: 'region', + iso_name: 'iso_name', + iso_alpha2_code: 'iso_alpha2_code', + iso_alpha3_code: 'iso_alpha3_code' +}; + +exports.Prisma.Dice_connectionScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + connection: 'connection', + accepted: 'accepted', + created_at: 'created_at', + short_url: 'short_url', + con_created_at: 'con_created_at' +}; + +exports.Prisma.EmailScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + email_type_id: 'email_type_id', + address: 'address', + create_date: 'create_date', + modify_date: 'modify_date', + primary_ind: 'primary_ind', + status_id: 'status_id' +}; + +exports.Prisma.Email_status_luScalarFieldEnum = { + status_id: 'status_id', + status_desc: 'status_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Email_type_luScalarFieldEnum = { + email_type_id: 'email_type_id', + email_type_desc: 'email_type_desc', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.Id_sequencesScalarFieldEnum = { + name: 'name', + next_block_start: 'next_block_start', + block_size: 'block_size', + exhausted: 'exhausted' +}; + +exports.Prisma.Invalid_handlesScalarFieldEnum = { + invalid_handle_id: 'invalid_handle_id', + invalid_handle: 'invalid_handle' +}; + +exports.Prisma.Security_groupsScalarFieldEnum = { + group_id: 'group_id', + description: 'description', + challenge_group_ind: 'challenge_group_ind', + create_user_id: 'create_user_id' +}; + +exports.Prisma.Security_status_luScalarFieldEnum = { + security_status_id: 'security_status_id', + status_desc: 'status_desc' +}; + +exports.Prisma.Security_userScalarFieldEnum = { + login_id: 'login_id', + user_id: 'user_id', + password: 'password', + create_user_id: 'create_user_id', + modify_date: 'modify_date' +}; + +exports.Prisma.Social_login_providerScalarFieldEnum = { + social_login_provider_id: 'social_login_provider_id', + name: 'name' +}; + +exports.Prisma.Sso_login_providerScalarFieldEnum = { + sso_login_provider_id: 'sso_login_provider_id', + name: 'name', + type: 'type', + identify_email_enabled: 'identify_email_enabled', + identify_handle_enabled: 'identify_handle_enabled' +}; + +exports.Prisma.UserScalarFieldEnum = { + user_id: 'user_id', + first_name: 'first_name', + last_name: 'last_name', + create_date: 'create_date', + modify_date: 'modify_date', + handle: 'handle', + last_login: 'last_login', + status: 'status', + activation_code: 'activation_code', + middle_name: 'middle_name', + handle_lower: 'handle_lower', + timezone_id: 'timezone_id', + last_site_hit_date: 'last_site_hit_date', + name_in_another_language: 'name_in_another_language', + password: 'password', + open_id: 'open_id', + reg_source: 'reg_source', + utm_source: 'utm_source', + utm_medium: 'utm_medium', + utm_campaign: 'utm_campaign' +}; + +exports.Prisma.User_2faScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mfa_enabled: 'mfa_enabled', + dice_enabled: 'dice_enabled', + created_by: 'created_by', + created_at: 'created_at', + modified_by: 'modified_by', + modified_at: 'modified_at' +}; + +exports.Prisma.User_achievementScalarFieldEnum = { + user_id: 'user_id', + achievement_date: 'achievement_date', + achievement_type_id: 'achievement_type_id', + description: 'description', + create_date: 'create_date' +}; + +exports.Prisma.User_group_xrefScalarFieldEnum = { + user_group_id: 'user_group_id', + login_id: 'login_id', + group_id: 'group_id', + create_user_id: 'create_user_id', + security_status_id: 'security_status_id', + create_date: 'create_date' +}; + +exports.Prisma.User_otp_emailScalarFieldEnum = { + id: 'id', + user_id: 'user_id', + mode: 'mode', + otp: 'otp', + expire_at: 'expire_at', + resend: 'resend', + fail_count: 'fail_count' +}; + +exports.Prisma.User_social_loginScalarFieldEnum = { + social_user_id: 'social_user_id', + user_id: 'user_id', + social_login_provider_id: 'social_login_provider_id', + social_user_name: 'social_user_name', + social_email: 'social_email', + social_email_verified: 'social_email_verified', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.User_sso_loginScalarFieldEnum = { + user_id: 'user_id', + sso_user_id: 'sso_user_id', + sso_user_name: 'sso_user_name', + provider_id: 'provider_id', + email: 'email' +}; + +exports.Prisma.User_statusScalarFieldEnum = { + user_id: 'user_id', + user_status_type_id: 'user_status_type_id', + user_status_id: 'user_status_id' +}; + +exports.Prisma.User_status_luScalarFieldEnum = { + user_status_id: 'user_status_id', + description: 'description' +}; + +exports.Prisma.User_status_type_luScalarFieldEnum = { + user_status_type_id: 'user_status_type_id', + description: 'description' +}; + +exports.Prisma.User_email_xrefScalarFieldEnum = { + user_id: 'user_id', + email_id: 'email_id', + is_primary: 'is_primary', + status_id: 'status_id', + create_date: 'create_date', + modify_date: 'modify_date' +}; + +exports.Prisma.ClientScalarFieldEnum = { + id: 'id', + clientId: 'clientId', + name: 'name', + redirectUri: 'redirectUri', + secret: 'secret', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleScalarFieldEnum = { + id: 'id', + name: 'name', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt' +}; + +exports.Prisma.RoleAssignmentScalarFieldEnum = { + id: 'id', + roleId: 'roleId', + subjectId: 'subjectId', + createdBy: 'createdBy', + createdAt: 'createdAt', + modifiedBy: 'modifiedBy', + modifiedAt: 'modifiedAt', + subjectType: 'subjectType' +}; + +exports.Prisma.SortOrder = { + asc: 'asc', + desc: 'desc' +}; + +exports.Prisma.QueryMode = { + default: 'default', + insensitive: 'insensitive' +}; + +exports.Prisma.NullsOrder = { + first: 'first', + last: 'last' +}; + + +exports.Prisma.ModelName = { + achievement_type_lu: 'achievement_type_lu', + country: 'country', + dice_connection: 'dice_connection', + email: 'email', + email_status_lu: 'email_status_lu', + email_type_lu: 'email_type_lu', + id_sequences: 'id_sequences', + invalid_handles: 'invalid_handles', + security_groups: 'security_groups', + security_status_lu: 'security_status_lu', + security_user: 'security_user', + social_login_provider: 'social_login_provider', + sso_login_provider: 'sso_login_provider', + user: 'user', + user_2fa: 'user_2fa', + user_achievement: 'user_achievement', + user_group_xref: 'user_group_xref', + user_otp_email: 'user_otp_email', + user_social_login: 'user_social_login', + user_sso_login: 'user_sso_login', + user_status: 'user_status', + user_status_lu: 'user_status_lu', + user_status_type_lu: 'user_status_type_lu', + user_email_xref: 'user_email_xref', + Client: 'Client', + Role: 'Role', + RoleAssignment: 'RoleAssignment' +}; +/** + * Create the Client + */ +const config = { + "generator": { + "name": "externalClient", + "provider": { + "fromEnvVar": null, + "value": "prisma-client-js" + }, + "output": { + "value": "/Users/hentrymartin/development/identity-api-v6/packages/identity-prisma-client", + "fromEnvVar": null + }, + "config": { + "engineType": "library" + }, + "binaryTargets": [ + { + "fromEnvVar": null, + "value": "darwin-arm64", + "native": true + }, + { + "fromEnvVar": null, + "value": "debian-openssl-3.0.x" + } + ], + "previewFeatures": [], + "sourceFilePath": "/Users/hentrymartin/development/identity-api-v6/prisma/schema.prisma", + "isCustomOutput": true + }, + "relativeEnvPaths": { + "rootEnvPath": null + }, + "relativePath": "../../prisma", + "clientVersion": "6.19.1", + "engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7", + "datasourceNames": [ + "db" + ], + "activeProvider": "postgresql", + "postinstall": false, + "inlineDatasources": { + "db": { + "url": { + "fromEnvVar": "IDENTITY_DB_URL", + "value": null + } + } + }, + "inlineSchema": "generator client {\n provider = \"prisma-client-js\"\n previewFeatures = [\"multiSchema\"]\n}\n\ngenerator externalClient {\n provider = \"prisma-client-js\"\n output = \"../packages/identity-prisma-client\"\n binaryTargets = [\"native\", \"debian-openssl-3.0.x\"]\n}\n\ndatasource db {\n provider = \"postgresql\"\n url = env(\"IDENTITY_DB_URL\")\n schemas = [\"identity\"]\n}\n\n// IDENTITY SCHEMA MODELS\n// (Introspected from existing database)\n// -----------------------------------------\n\nmodel achievement_type_lu {\n achievement_type_id Decimal @id(map: \"achv_type_lu_pkey\") @db.Decimal(5, 0)\n achievement_type_desc String @db.VarChar(64)\n user_achievement user_achievement[]\n\n @@schema(\"identity\")\n}\n\nmodel country {\n country_code String @id @db.VarChar(3)\n country_name String @db.VarChar(40)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n participating Decimal? @db.Decimal(1, 0)\n default_taxform_id Decimal? @db.Decimal(10, 0)\n longitude Decimal? @db.Decimal(10, 7)\n latitude Decimal? @db.Decimal(10, 7)\n region String? @db.VarChar(64)\n iso_name String? @db.VarChar(128)\n iso_alpha2_code String? @db.VarChar(2)\n iso_alpha3_code String? @db.VarChar(3)\n\n @@schema(\"identity\")\n}\n\nmodel dice_connection {\n id Int @id(map: \"dice_connection_pk\") @default(autoincrement())\n user_id Decimal @unique @db.Decimal(10, 0)\n connection String? @db.VarChar(50)\n accepted Boolean @default(false)\n created_at DateTime @default(now()) @db.Timestamp(6)\n short_url String? @db.VarChar(100)\n con_created_at DateTime? @db.Timestamp(6)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@index([connection])\n @@schema(\"identity\")\n}\n\nmodel email {\n user_id Decimal? @db.Decimal(10, 0)\n email_id Decimal @id(map: \"u110_23\") @default(dbgenerated(\"nextval('sequence_email_seq'::regclass)\")) @db.Decimal(10, 0)\n email_type_id Decimal? @db.Decimal(5, 0)\n address String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n primary_ind Decimal? @db.Decimal(1, 0)\n status_id Decimal? @db.Decimal(3, 0)\n email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id], onDelete: NoAction, onUpdate: NoAction, map: \"email_emailstatuslu_fk\")\n email_type_lu email_type_lu? @relation(fields: [email_type_id], references: [email_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"email_emailtypelu_fk\")\n user_email_xref user_email_xref[]\n user user? @relation(\"UserToEmail\", fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@index([user_id, primary_ind], map: \"email_user_id_idx\")\n @@index([user_id, email_type_id, status_id])\n @@index([address, status_id])\n @@schema(\"identity\")\n}\n\nmodel email_status_lu {\n status_id Decimal @id(map: \"email_status_lu_pk\") @db.Decimal(3, 0)\n status_desc String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n email email[]\n user_email_xref user_email_xref[] // Added back-relation to user_email_xref\n\n @@schema(\"identity\")\n}\n\nmodel email_type_lu {\n email_type_id Decimal @id(map: \"email_type_lu_pk\") @db.Decimal(5, 0)\n email_type_desc String? @db.VarChar(100)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n email email[]\n\n @@schema(\"identity\")\n}\n\nmodel id_sequences {\n name String @id @db.VarChar(254)\n next_block_start Decimal @db.Decimal(12, 0)\n block_size Decimal @db.Decimal(10, 0)\n exhausted Decimal @default(0) @db.Decimal(1, 0)\n\n @@schema(\"identity\")\n}\n\nmodel invalid_handles {\n invalid_handle_id Int @id(map: \"pk_invalid_hand556\")\n invalid_handle String @db.VarChar(20)\n\n @@schema(\"identity\")\n}\n\nmodel security_groups {\n group_id Decimal @id(map: \"pk_security_groups\") @db.Decimal(12, 0)\n description String @db.VarChar(254)\n challenge_group_ind Int @default(0) @db.SmallInt\n create_user_id Decimal? @db.Decimal(12, 0)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel security_status_lu {\n security_status_id Decimal @id(map: \"securitystatuslu_pkey\") @db.Decimal(3, 0)\n status_desc String? @db.VarChar(200)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel security_user {\n login_id Decimal @id(map: \"pk_security_user\") @db.Decimal(12, 0)\n user_id String @unique(map: \"security_user_i2\") @db.VarChar(50)\n password String @db.VarChar(300)\n create_user_id Decimal? @db.Decimal(12, 0)\n modify_date DateTime? @db.Timestamp(6)\n user_group_xref user_group_xref[]\n\n @@schema(\"identity\")\n}\n\nmodel social_login_provider {\n social_login_provider_id Decimal @id(map: \"social_provider_prkey\") @db.Decimal(10, 0)\n name String? @db.VarChar(50)\n user_social_login user_social_login[]\n\n @@schema(\"identity\")\n}\n\nmodel sso_login_provider {\n sso_login_provider_id Decimal @id(map: \"sso_provider_prkey\") @db.Decimal(10, 0)\n name String? @db.VarChar(50)\n type String @db.VarChar(50)\n identify_email_enabled Boolean @default(true)\n identify_handle_enabled Boolean @default(true)\n user_sso_login user_sso_login[]\n\n @@schema(\"identity\")\n}\n\nmodel user {\n user_id Decimal @id(map: \"u175_45\") @default(dbgenerated(\"nextval('sequence_user_seq'::regclass)\")) @db.Decimal(10, 0)\n first_name String? @db.VarChar(64)\n last_name String? @db.VarChar(64)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n handle String @db.VarChar(50)\n last_login DateTime? @db.Timestamp(6)\n status String @db.VarChar(3)\n activation_code String? @db.VarChar(32)\n middle_name String? @db.VarChar(64)\n handle_lower String? @db.VarChar(50)\n timezone_id Decimal? @db.Decimal(5, 0)\n last_site_hit_date DateTime? @db.Timestamp(6)\n name_in_another_language String? @db.VarChar(64)\n password String? @db.VarChar(16)\n open_id String? @db.VarChar(200)\n reg_source String? @db.VarChar(20)\n utm_source String? @db.VarChar(50)\n utm_medium String? @db.VarChar(50)\n utm_campaign String? @db.VarChar(50)\n dice_connection dice_connection?\n user_2fa user_2fa?\n user_achievement user_achievement[]\n user_otp_email user_otp_email[]\n user_social_login user_social_login[]\n user_sso_login user_sso_login[]\n user_status user_status[]\n user_email_xref user_email_xref[]\n emails email[] @relation(\"UserToEmail\")\n\n @@index([activation_code], map: \"user_activ_code_idx\")\n @@index([handle])\n @@index([handle_lower], map: \"user_lower_handle_idx\")\n @@index([open_id])\n @@index([status, handle_lower])\n @@schema(\"identity\")\n}\n\nmodel user_2fa {\n id Int @id(map: \"user_2fa_pk\") @default(autoincrement())\n user_id Decimal @unique @db.Decimal(10, 0)\n mfa_enabled Boolean @default(false)\n dice_enabled Boolean @default(false)\n created_by Decimal @db.Decimal(10, 0)\n created_at DateTime @default(now()) @db.Timestamp(6)\n modified_by Decimal @db.Decimal(10, 0)\n modified_at DateTime @default(now()) @db.Timestamp(6)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@schema(\"identity\")\n}\n\n/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.\nmodel user_achievement {\n user_id Decimal @db.Decimal(10, 0) // Made non-nullable for PK\n achievement_date DateTime @db.Date\n achievement_type_id Decimal @db.Decimal(5, 0)\n description String? @db.VarChar(255)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n achievement_type_lu achievement_type_lu @relation(fields: [achievement_type_id], references: [achievement_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"achv_type_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"achv_user_fk\") // Made user relation non-nullable as user_id is non-nullable\n\n // Define composite primary key\n @@id([user_id, achievement_type_id], map: \"user_achievement_pkey\") // Added @@id\n // @@ignore // Removed @@ignore\n @@schema(\"identity\")\n}\n\nmodel user_group_xref {\n user_group_id Decimal @id(map: \"pk_user_group_xref\") @default(dbgenerated(\"nextval('sequence_user_group_seq'::regclass)\")) @db.Decimal(12, 0)\n login_id Decimal? @db.Decimal(12, 0)\n group_id Decimal? @db.Decimal(12, 0)\n create_user_id Decimal? @db.Decimal(12, 0)\n security_status_id Decimal? @db.Decimal(3, 0)\n create_date DateTime? @default(now()) @db.Timestamp(6)\n security_user security_user? @relation(fields: [login_id], references: [login_id], onDelete: Cascade, onUpdate: NoAction, map: \"fk_user_grp_xref1\")\n security_groups security_groups? @relation(fields: [group_id], references: [group_id], onDelete: Cascade, onUpdate: NoAction, map: \"fk_user_grp_xref2\")\n security_status_lu security_status_lu? @relation(fields: [security_status_id], references: [security_status_id], onDelete: NoAction, onUpdate: NoAction, map: \"usergroupxref_status_fk\")\n\n @@unique([login_id, group_id], map: \"user_grp_xref_i2\")\n @@schema(\"identity\")\n}\n\nmodel user_otp_email {\n id Int @id(map: \"user_otp_email_pk\") @default(autoincrement())\n user_id Decimal @db.Decimal(10, 0)\n mode Int @db.SmallInt\n otp String @db.VarChar(6)\n expire_at DateTime @db.Timestamp(6)\n resend Boolean @default(false)\n fail_count Int @default(0) @db.SmallInt\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction)\n\n @@unique([user_id, mode])\n @@schema(\"identity\")\n}\n\nmodel user_social_login {\n social_user_id String? @db.VarChar(254)\n user_id Decimal @db.Decimal(10, 0)\n social_login_provider_id Decimal @db.Decimal(10, 0)\n social_user_name String @db.VarChar(100)\n social_email String? @db.VarChar(100)\n social_email_verified Boolean?\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @db.Timestamp(6)\n social_login_provider social_login_provider @relation(fields: [social_login_provider_id], references: [social_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_social_provider_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_social_user_fk\")\n\n @@id([user_id, social_login_provider_id], map: \"user_social_prkey\")\n @@index([social_user_id, social_login_provider_id])\n @@schema(\"identity\")\n}\n\nmodel user_sso_login {\n user_id Decimal @db.Decimal(10, 0)\n sso_user_id String @db.VarChar(100)\n sso_user_name String? @db.VarChar(100)\n provider_id Decimal @db.Decimal(10, 0)\n email String? @db.VarChar(100)\n sso_login_provider sso_login_provider @relation(fields: [provider_id], references: [sso_login_provider_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_sso_login_provider_fk\")\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_sso_login_user_fk\")\n\n @@id([user_id, provider_id], map: \"user_sso_prkey\") // Primary key\n @@index([sso_user_id, provider_id], map: \"idx_user_social_login_sso_user_id_provider_id\") // Index only, NOT unique\n @@schema(\"identity\")\n}\n\nmodel user_status {\n user_id Decimal @db.Decimal(10, 0)\n user_status_type_id Decimal @db.Decimal(3, 0)\n user_status_id Decimal? @db.Decimal(5, 0)\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_user_fk\")\n user_status_lu user_status_lu? @relation(fields: [user_status_id], references: [user_status_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_userstatuslu_fk\")\n user_status_type_lu user_status_type_lu @relation(fields: [user_status_type_id], references: [user_status_type_id], onDelete: NoAction, onUpdate: NoAction, map: \"userstatus_userstatustype_fk\")\n\n @@id([user_id, user_status_type_id], map: \"userstatus_pk\")\n @@schema(\"identity\")\n}\n\nmodel user_status_lu {\n user_status_id Decimal @id(map: \"u113_26\") @db.Decimal(5, 0)\n description String? @db.VarChar(100)\n user_status user_status[]\n\n @@schema(\"identity\")\n}\n\nmodel user_status_type_lu {\n user_status_type_id Decimal @id(map: \"userstatustypelu_pk\") @db.Decimal(3, 0)\n description String? @db.VarChar(100)\n user_status user_status[]\n\n @@schema(\"identity\")\n}\n\n// Explicit definition for the user-email join table\nmodel user_email_xref {\n user_id Decimal @db.Decimal(10, 0)\n email_id Decimal @db.Decimal(10, 0)\n is_primary Boolean // Assuming boolean based on name, adjust if Decimal(1,0)\n status_id Decimal @db.Decimal(3, 0) // Assuming relates to email_status_lu\n create_date DateTime? @default(now()) @db.Timestamp(6)\n modify_date DateTime? @default(now()) @db.Timestamp(6)\n\n user user @relation(fields: [user_id], references: [user_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_email_xref_user_fk\") // Define relation\n email email @relation(fields: [email_id], references: [email_id], onDelete: NoAction, onUpdate: NoAction, map: \"user_email_xref_email_fk\") // Define relation\n email_status_lu email_status_lu? @relation(fields: [status_id], references: [status_id]) // Optional relation to status lookup\n\n @@id([user_id, email_id], map: \"user_email_xref_pkey\") // Define composite primary key\n @@index([email_id], map: \"user_email_xref_email_idx\")\n @@index([user_id, status_id])\n @@schema(\"identity\")\n}\n\n// -----------------------------------------\n// (Migrated from MySQL DDL)\n// -----------------------------------------\n\nmodel Client {\n id Int @id @default(autoincrement()) @map(\"id\")\n clientId String @unique @map(\"client_id\")\n name String\n redirectUri String? @map(\"redirect_uri\") @db.VarChar(8192)\n secret String?\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0) // Use Timestamp(0) if you need second precision like MySQL datetime\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n\n @@map(\"client\") // Map model name to table name\n @@schema(\"identity\")\n}\n\nmodel Role {\n id Int @id @default(autoincrement()) @map(\"id\")\n name String @unique @db.VarChar(45)\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0)\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n\n roleAssignments RoleAssignment[] // Relation field\n\n @@map(\"role\") // Map model name to table name\n @@schema(\"identity\")\n}\n\nmodel RoleAssignment {\n id Int @id @default(autoincrement()) @map(\"id\")\n roleId Int @map(\"role_id\")\n subjectId Int @map(\"subject_id\")\n createdBy Int?\n createdAt DateTime? @db.Timestamp(0)\n modifiedBy Int?\n modifiedAt DateTime? @db.Timestamp(0)\n subjectType Int @default(1) @map(\"subject_type\")\n\n role Role @relation(fields: [roleId], references: [id], map: \"role_id\") // Relation field\n\n @@unique([roleId, subjectId, subjectType], map: \"role_subject_id_subject_type\")\n @@index([subjectId], map: \"subject_id_idx\")\n @@index([roleId], map: \"role_id_idx\")\n @@index([subjectId, subjectType])\n @@map(\"role_assignment\")\n @@schema(\"identity\")\n}\n", + "inlineSchemaHash": "146549dc4277ba3db4608942c2cae9f5d81439e3f0cff4d805cba070b9eac179", + "copyEngine": true +} +config.dirname = '/' + +config.runtimeDataModel = JSON.parse("{\"models\":{\"achievement_type_lu\":{\"fields\":[{\"name\":\"achievement_type_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"achievement_type_desc\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_achievement\",\"kind\":\"object\",\"type\":\"user_achievement\",\"relationName\":\"achievement_type_luTouser_achievement\"}],\"dbName\":null},\"country\":{\"fields\":[{\"name\":\"country_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"country_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"participating\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"default_taxform_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"longitude\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"latitude\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"region\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"iso_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"iso_alpha2_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"iso_alpha3_code\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"dice_connection\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"connection\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"accepted\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"short_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"con_created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"dice_connectionTouser\"}],\"dbName\":null},\"email\":{\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"email_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"email_type_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"address\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"primary_ind\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"email_status_lu\",\"kind\":\"object\",\"type\":\"email_status_lu\",\"relationName\":\"emailToemail_status_lu\"},{\"name\":\"email_type_lu\",\"kind\":\"object\",\"type\":\"email_type_lu\",\"relationName\":\"emailToemail_type_lu\"},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"type\":\"user_email_xref\",\"relationName\":\"emailTouser_email_xref\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"UserToEmail\"}],\"dbName\":null},\"email_status_lu\":{\"fields\":[{\"name\":\"status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"status_desc\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"email\",\"kind\":\"object\",\"type\":\"email\",\"relationName\":\"emailToemail_status_lu\"},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"type\":\"user_email_xref\",\"relationName\":\"email_status_luTouser_email_xref\"}],\"dbName\":null},\"email_type_lu\":{\"fields\":[{\"name\":\"email_type_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"email_type_desc\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"email\",\"kind\":\"object\",\"type\":\"email\",\"relationName\":\"emailToemail_type_lu\"}],\"dbName\":null},\"id_sequences\":{\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"next_block_start\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"block_size\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"exhausted\",\"kind\":\"scalar\",\"type\":\"Decimal\"}],\"dbName\":null},\"invalid_handles\":{\"fields\":[{\"name\":\"invalid_handle_id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"invalid_handle\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"security_groups\":{\"fields\":[{\"name\":\"group_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"challenge_group_ind\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"type\":\"user_group_xref\",\"relationName\":\"security_groupsTouser_group_xref\"}],\"dbName\":null},\"security_status_lu\":{\"fields\":[{\"name\":\"security_status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"status_desc\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"type\":\"user_group_xref\",\"relationName\":\"security_status_luTouser_group_xref\"}],\"dbName\":null},\"security_user\":{\"fields\":[{\"name\":\"login_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user_group_xref\",\"kind\":\"object\",\"type\":\"user_group_xref\",\"relationName\":\"security_userTouser_group_xref\"}],\"dbName\":null},\"social_login_provider\":{\"fields\":[{\"name\":\"social_login_provider_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_social_login\",\"kind\":\"object\",\"type\":\"user_social_login\",\"relationName\":\"social_login_providerTouser_social_login\"}],\"dbName\":null},\"sso_login_provider\":{\"fields\":[{\"name\":\"sso_login_provider_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"identify_email_enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"identify_handle_enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"user_sso_login\",\"kind\":\"object\",\"type\":\"user_sso_login\",\"relationName\":\"sso_login_providerTouser_sso_login\"}],\"dbName\":null},\"user\":{\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"handle\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_login\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"middle_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"handle_lower\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"timezone_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"last_site_hit_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"name_in_another_language\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"open_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"reg_source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"utm_source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"utm_medium\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"utm_campaign\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"dice_connection\",\"kind\":\"object\",\"type\":\"dice_connection\",\"relationName\":\"dice_connectionTouser\"},{\"name\":\"user_2fa\",\"kind\":\"object\",\"type\":\"user_2fa\",\"relationName\":\"userTouser_2fa\"},{\"name\":\"user_achievement\",\"kind\":\"object\",\"type\":\"user_achievement\",\"relationName\":\"userTouser_achievement\"},{\"name\":\"user_otp_email\",\"kind\":\"object\",\"type\":\"user_otp_email\",\"relationName\":\"userTouser_otp_email\"},{\"name\":\"user_social_login\",\"kind\":\"object\",\"type\":\"user_social_login\",\"relationName\":\"userTouser_social_login\"},{\"name\":\"user_sso_login\",\"kind\":\"object\",\"type\":\"user_sso_login\",\"relationName\":\"userTouser_sso_login\"},{\"name\":\"user_status\",\"kind\":\"object\",\"type\":\"user_status\",\"relationName\":\"userTouser_status\"},{\"name\":\"user_email_xref\",\"kind\":\"object\",\"type\":\"user_email_xref\",\"relationName\":\"userTouser_email_xref\"},{\"name\":\"emails\",\"kind\":\"object\",\"type\":\"email\",\"relationName\":\"UserToEmail\"}],\"dbName\":null},\"user_2fa\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"mfa_enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"dice_enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_by\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modified_by\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"modified_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_2fa\"}],\"dbName\":null},\"user_achievement\":{\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"achievement_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"achievement_type_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"achievement_type_lu\",\"kind\":\"object\",\"type\":\"achievement_type_lu\",\"relationName\":\"achievement_type_luTouser_achievement\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_achievement\"}],\"dbName\":null},\"user_group_xref\":{\"fields\":[{\"name\":\"user_group_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"login_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"group_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"create_user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"security_status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"security_user\",\"kind\":\"object\",\"type\":\"security_user\",\"relationName\":\"security_userTouser_group_xref\"},{\"name\":\"security_groups\",\"kind\":\"object\",\"type\":\"security_groups\",\"relationName\":\"security_groupsTouser_group_xref\"},{\"name\":\"security_status_lu\",\"kind\":\"object\",\"type\":\"security_status_lu\",\"relationName\":\"security_status_luTouser_group_xref\"}],\"dbName\":null},\"user_otp_email\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"mode\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"otp\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expire_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"resend\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"fail_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_otp_email\"}],\"dbName\":null},\"user_social_login\":{\"fields\":[{\"name\":\"social_user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"social_login_provider_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"social_user_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"social_email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"social_email_verified\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"social_login_provider\",\"kind\":\"object\",\"type\":\"social_login_provider\",\"relationName\":\"social_login_providerTouser_social_login\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_social_login\"}],\"dbName\":null},\"user_sso_login\":{\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"sso_user_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sso_user_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sso_login_provider\",\"kind\":\"object\",\"type\":\"sso_login_provider\",\"relationName\":\"sso_login_providerTouser_sso_login\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_sso_login\"}],\"dbName\":null},\"user_status\":{\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"user_status_type_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"user_status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_status\"},{\"name\":\"user_status_lu\",\"kind\":\"object\",\"type\":\"user_status_lu\",\"relationName\":\"user_statusTouser_status_lu\"},{\"name\":\"user_status_type_lu\",\"kind\":\"object\",\"type\":\"user_status_type_lu\",\"relationName\":\"user_statusTouser_status_type_lu\"}],\"dbName\":null},\"user_status_lu\":{\"fields\":[{\"name\":\"user_status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_status\",\"kind\":\"object\",\"type\":\"user_status\",\"relationName\":\"user_statusTouser_status_lu\"}],\"dbName\":null},\"user_status_type_lu\":{\"fields\":[{\"name\":\"user_status_type_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_status\",\"kind\":\"object\",\"type\":\"user_status\",\"relationName\":\"user_statusTouser_status_type_lu\"}],\"dbName\":null},\"user_email_xref\":{\"fields\":[{\"name\":\"user_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"email_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"is_primary\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"status_id\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"create_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modify_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"user\",\"relationName\":\"userTouser_email_xref\"},{\"name\":\"email\",\"kind\":\"object\",\"type\":\"email\",\"relationName\":\"emailTouser_email_xref\"},{\"name\":\"email_status_lu\",\"kind\":\"object\",\"type\":\"email_status_lu\",\"relationName\":\"email_status_luTouser_email_xref\"}],\"dbName\":null},\"Client\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\",\"dbName\":\"id\"},{\"name\":\"clientId\",\"kind\":\"scalar\",\"type\":\"String\",\"dbName\":\"client_id\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"redirectUri\",\"kind\":\"scalar\",\"type\":\"String\",\"dbName\":\"redirect_uri\"},{\"name\":\"secret\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":\"client\"},\"Role\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\",\"dbName\":\"id\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"roleAssignments\",\"kind\":\"object\",\"type\":\"RoleAssignment\",\"relationName\":\"RoleToRoleAssignment\"}],\"dbName\":\"role\"},\"RoleAssignment\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\",\"dbName\":\"id\"},{\"name\":\"roleId\",\"kind\":\"scalar\",\"type\":\"Int\",\"dbName\":\"role_id\"},{\"name\":\"subjectId\",\"kind\":\"scalar\",\"type\":\"Int\",\"dbName\":\"subject_id\"},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"modifiedBy\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"modifiedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"subjectType\",\"kind\":\"scalar\",\"type\":\"Int\",\"dbName\":\"subject_type\"},{\"name\":\"role\",\"kind\":\"object\",\"type\":\"Role\",\"relationName\":\"RoleToRoleAssignment\"}],\"dbName\":\"role_assignment\"}},\"enums\":{},\"types\":{}}") +defineDmmfProperty(exports.Prisma, config.runtimeDataModel) +config.engineWasm = { + getRuntime: async () => require('./query_engine_bg.js'), + getQueryEngineWasmModule: async () => { + const loader = (await import('#wasm-engine-loader')).default + const engine = (await loader).default + return engine + } +} +config.compilerWasm = undefined + +config.injectableEdgeEnv = () => ({ + parsed: { + IDENTITY_DB_URL: typeof globalThis !== 'undefined' && globalThis['IDENTITY_DB_URL'] || typeof process !== 'undefined' && process.env && process.env.IDENTITY_DB_URL || undefined + } +}) + +if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) { + Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) +} + +const PrismaClient = getPrismaClient(config) +exports.PrismaClient = PrismaClient +Object.assign(exports, Prisma) + diff --git a/prisma/member/generated/member/edge.js b/prisma/member/generated/member/edge.js index 5f19a90..d9a33e9 100644 --- a/prisma/member/generated/member/edge.js +++ b/prisma/member/generated/member/edge.js @@ -177,7 +177,7 @@ const config = { "value": "prisma-client-js" }, "output": { - "value": "/home/jmgasper/Documents/Git/v6/identity-api-v6/prisma/member/generated/member", + "value": "/Users/hentrymartin/development/identity-api-v6/prisma/member/generated/member", "fromEnvVar": null }, "config": { @@ -186,12 +186,12 @@ const config = { "binaryTargets": [ { "fromEnvVar": null, - "value": "debian-openssl-3.0.x", + "value": "darwin-arm64", "native": true } ], "previewFeatures": [], - "sourceFilePath": "/home/jmgasper/Documents/Git/v6/identity-api-v6/prisma/member/schema.prisma", + "sourceFilePath": "/Users/hentrymartin/development/identity-api-v6/prisma/member/schema.prisma", "isCustomOutput": true }, "relativeEnvPaths": { diff --git a/prisma/member/generated/member/index.js b/prisma/member/generated/member/index.js index d521ca0..a509970 100644 --- a/prisma/member/generated/member/index.js +++ b/prisma/member/generated/member/index.js @@ -178,7 +178,7 @@ const config = { "value": "prisma-client-js" }, "output": { - "value": "/home/jmgasper/Documents/Git/v6/identity-api-v6/prisma/member/generated/member", + "value": "/Users/hentrymartin/development/identity-api-v6/prisma/member/generated/member", "fromEnvVar": null }, "config": { @@ -187,12 +187,12 @@ const config = { "binaryTargets": [ { "fromEnvVar": null, - "value": "debian-openssl-3.0.x", + "value": "darwin-arm64", "native": true } ], "previewFeatures": [], - "sourceFilePath": "/home/jmgasper/Documents/Git/v6/identity-api-v6/prisma/member/schema.prisma", + "sourceFilePath": "/Users/hentrymartin/development/identity-api-v6/prisma/member/schema.prisma", "isCustomOutput": true }, "relativeEnvPaths": { @@ -254,8 +254,8 @@ exports.PrismaClient = PrismaClient Object.assign(exports, Prisma) // file annotations for bundling tools to include these files -path.join(__dirname, "libquery_engine-debian-openssl-3.0.x.so.node"); -path.join(process.cwd(), "prisma/member/generated/member/libquery_engine-debian-openssl-3.0.x.so.node") +path.join(__dirname, "libquery_engine-darwin-arm64.dylib.node"); +path.join(process.cwd(), "prisma/member/generated/member/libquery_engine-darwin-arm64.dylib.node") // file annotations for bundling tools to include these files path.join(__dirname, "schema.prisma"); path.join(process.cwd(), "prisma/member/generated/member/schema.prisma") diff --git a/prisma/member/generated/member/libquery_engine-darwin-arm64.dylib.node b/prisma/member/generated/member/libquery_engine-darwin-arm64.dylib.node new file mode 100755 index 0000000..d0fa4cb Binary files /dev/null and b/prisma/member/generated/member/libquery_engine-darwin-arm64.dylib.node differ diff --git a/prisma/member/generated/member/wasm.js b/prisma/member/generated/member/wasm.js index 18239e2..4946719 100644 --- a/prisma/member/generated/member/wasm.js +++ b/prisma/member/generated/member/wasm.js @@ -177,7 +177,7 @@ const config = { "value": "prisma-client-js" }, "output": { - "value": "/home/jmgasper/Documents/Git/v6/identity-api-v6/prisma/member/generated/member", + "value": "/Users/hentrymartin/development/identity-api-v6/prisma/member/generated/member", "fromEnvVar": null }, "config": { @@ -186,12 +186,12 @@ const config = { "binaryTargets": [ { "fromEnvVar": null, - "value": "debian-openssl-3.0.x", + "value": "darwin-arm64", "native": true } ], "previewFeatures": [], - "sourceFilePath": "/home/jmgasper/Documents/Git/v6/identity-api-v6/prisma/member/schema.prisma", + "sourceFilePath": "/Users/hentrymartin/development/identity-api-v6/prisma/member/schema.prisma", "isCustomOutput": true }, "relativeEnvPaths": { diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 1391cff..2a629c9 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -3,6 +3,12 @@ generator client { previewFeatures = ["multiSchema"] } +generator externalClient { + provider = "prisma-client-js" + output = "../packages/identity-prisma-client" + binaryTargets = ["native", "debian-openssl-3.0.x"] +} + datasource db { provider = "postgresql" url = env("IDENTITY_DB_URL") diff --git a/src/api/group/group.controller.ts b/src/api/group/group.controller.ts index 9274671..5d8e4c4 100644 --- a/src/api/group/group.controller.ts +++ b/src/api/group/group.controller.ts @@ -127,8 +127,7 @@ export class GroupController { @ApiOperation({ summary: 'Create a new security group', description: describeAccess({ - summary: - 'Creates a security group mapping for authorization services.', + summary: 'Creates a security group mapping for authorization services.', jwt: 'Requires a JWT with the `administrator` role.', m2m: ['write:groups', 'all:groups'], }), @@ -778,8 +777,7 @@ export class GroupController { @ApiOperation({ summary: 'List members of a group', description: describeAccess({ - summary: - 'Lists member-type memberships for the requested group.', + summary: 'Lists member-type memberships for the requested group.', jwt: 'Requires the `administrator` role for private groups; group members can access their own private groups. Public groups are available to any authenticated user.', m2m: ['read:groups', 'write:groups', 'all:groups'], }), diff --git a/src/api/identity-provider/identity-provider.service.ts b/src/api/identity-provider/identity-provider.service.ts index e7d8a27..50a99b9 100644 --- a/src/api/identity-provider/identity-provider.service.ts +++ b/src/api/identity-provider/identity-provider.service.ts @@ -2,7 +2,10 @@ import { Injectable, Logger, BadRequestException } from '@nestjs/common'; import { PrismaClient } from '@prisma/client'; import { PRISMA_CLIENT } from '../../shared/prisma/prisma.module'; import { Inject } from '@nestjs/common'; -import { IdentityProviderDto, SsoLoginProviderDto } from './identity-provider.dto'; +import { + IdentityProviderDto, + SsoLoginProviderDto, +} from './identity-provider.dto'; @Injectable() export class IdentityProviderService { @@ -281,7 +284,7 @@ export class IdentityProviderService { orderBy: { sso_login_provider_id: 'asc' }, }); - return results.map(r => ({ + return results.map((r) => ({ ssoLoginProviderId: Number(r.sso_login_provider_id), name: r.name ?? '', type: r.type, diff --git a/src/api/role/role.controller.ts b/src/api/role/role.controller.ts index cb13593..4fdf09d 100644 --- a/src/api/role/role.controller.ts +++ b/src/api/role/role.controller.ts @@ -62,8 +62,7 @@ export class RoleController { 'Searches existing roles using optional filter parameters (e.g., subjectId, roleName).', jwt: 'Requires a JWT with the `administrator` role.', m2m: ['read:roles', 'all:roles'], - notes: - 'M2M tokens without the read scope receive HTTP 403 (Forbidden).', + notes: 'M2M tokens without the read scope receive HTTP 403 (Forbidden).', }), }) @ApiResponse({ status: HttpStatus.OK, type: [RoleResponseDto] }) @@ -223,7 +222,9 @@ export class RoleController { const isMachine = Boolean(user?.isMachine); if (!isAdmin && !isMachine) { - throw new ForbiddenException('Only administrators can list role members.'); + throw new ForbiddenException( + 'Only administrators can list role members.', + ); } if (isMachine) { @@ -676,7 +677,10 @@ export class RoleController { const result: any = (req as any).authUser || (req as any).user || {}; // Normalize roles to an array of lowercase strings - const rawRoles = (result.roles ?? result.role) as string[] | string | undefined; + const rawRoles = (result.roles ?? result.role) as + | string[] + | string + | undefined; let roles: string[] = []; if (Array.isArray(rawRoles)) { roles = rawRoles.map((r) => String(r).trim()).filter(Boolean); diff --git a/src/api/role/role.service.ts b/src/api/role/role.service.ts index 868c167..335b56d 100644 --- a/src/api/role/role.service.ts +++ b/src/api/role/role.service.ts @@ -61,7 +61,9 @@ export class RoleService { ); // Ensure role exists - const existing = await this.prismaClient.role.findUnique({ where: { id: roleId } }); + const existing = await this.prismaClient.role.findUnique({ + where: { id: roleId }, + }); if (!existing) { throw new NotFoundException(`Role with ID ${roleId} not found.`); } @@ -121,8 +123,13 @@ export class RoleService { // identity API returns all role members regardless of audit field values. const returnedIds = new Set(pageMembers.map((m) => m.userId)); const missingIds = pageIds.filter((id) => !returnedIds.has(id)); - const placeholders: MemberInfoResponseDto[] = missingIds.map((id) => - ({ userId: id, handle: null as any, email: null as any }) as unknown as MemberInfoResponseDto, + const placeholders: MemberInfoResponseDto[] = missingIds.map( + (id) => + ({ + userId: id, + handle: null as any, + email: null as any, + }) as unknown as MemberInfoResponseDto, ); return { members: [...pageMembers, ...placeholders], total }; @@ -195,8 +202,13 @@ export class RoleService { const infos = await this.memberApiService.getUserInfoList(subjectIds); const returnedIds = new Set(infos.map((m) => m.userId)); const missingIds = subjectIds.filter((id) => !returnedIds.has(id)); - const placeholders = missingIds.map((id) => - ({ userId: id, handle: null as any, email: null as any }) as unknown as MemberInfoResponseDto, + const placeholders = missingIds.map( + (id) => + ({ + userId: id, + handle: null as any, + email: null as any, + }) as unknown as MemberInfoResponseDto, ); memberInfos = [...infos, ...placeholders]; } catch (error) { diff --git a/src/api/topgear-user-role/topgear-user-roles.controller.ts b/src/api/topgear-user-role/topgear-user-roles.controller.ts index b2b9ead..6e8a215 100644 --- a/src/api/topgear-user-role/topgear-user-roles.controller.ts +++ b/src/api/topgear-user-role/topgear-user-roles.controller.ts @@ -52,8 +52,7 @@ export class TopgearUserRolesController { summary: 'Retrieves Topgear-specific role assignments for the supplied member.', jwt: 'Requires a JWT with the `administrator` role.', - m2m: - 'Requires `read:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', + m2m: 'Requires `read:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', }), }) @ApiParam({ @@ -78,8 +77,7 @@ export class TopgearUserRolesController { summary: 'Returns the details of a single Topgear role assignment for the member.', jwt: 'Requires a JWT with the `administrator` role.', - m2m: - 'Requires `read:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', + m2m: 'Requires `read:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', }), }) @ApiParam({ @@ -115,8 +113,7 @@ export class TopgearUserRolesController { summary: 'Assigns the provided role id to the target member, limited to Topgear contexts.', jwt: 'Requires a JWT with the `administrator` role.', - m2m: - 'Requires `write:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', + m2m: 'Requires `write:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', }), }) @ApiParam({ @@ -148,8 +145,7 @@ export class TopgearUserRolesController { description: describeAccess({ summary: 'Removes the specified Topgear role assignment from the member.', jwt: 'Requires a JWT with the `administrator` role.', - m2m: - 'Requires `write:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', + m2m: 'Requires `write:topgear-user-roles` or a broader scope such as `all:topgear-user-roles`, `all:usersRole`, `all:roles`, or `all:user`.', }), }) @ApiParam({ @@ -181,9 +177,9 @@ export class TopgearUserRolesController { } private getAuthenticatedUser(req: AuthenticatedRequest): any { - const result:any = (req as any).authUser || (req as any).user; - if(result.roles?.includes(process.env.ADMIN_ROLE_NAME)) { - result.isAdmin=true; + const result: any = (req as any).authUser || (req as any).user; + if (result.roles?.includes(process.env.ADMIN_ROLE_NAME)) { + result.isAdmin = true; } return result; } diff --git a/src/api/user-role/user-roles.controller.ts b/src/api/user-role/user-roles.controller.ts index ce5ae78..9951291 100644 --- a/src/api/user-role/user-roles.controller.ts +++ b/src/api/user-role/user-roles.controller.ts @@ -47,8 +47,7 @@ export class UserRolesController { @ApiOperation({ summary: 'List roles assigned to a user by ID or Topcoder member handle', description: describeAccess({ - summary: - 'Retrieves all role assignments for the identified member.', + summary: 'Retrieves all role assignments for the identified member.', jwt: 'Requires a JWT with the `administrator` role.', m2m: ['read:usersRole', 'all:usersRole'], }), @@ -136,8 +135,7 @@ export class UserRolesController { @ApiOperation({ summary: 'Remove a role from the specified user', description: describeAccess({ - summary: - 'Deletes the specified role assignment from the target member.', + summary: 'Deletes the specified role assignment from the target member.', jwt: 'Requires a JWT with the `administrator` role.', m2m: ['delete:usersRole', 'all:usersRole'], }), @@ -167,9 +165,9 @@ export class UserRolesController { } private getAuthenticatedUser(req: AuthenticatedRequest): any { - const result:any = (req as any).authUser || (req as any).user; - if(result.roles?.includes(process.env.ADMIN_ROLE_NAME)) { - result.isAdmin=true; + const result: any = (req as any).authUser || (req as any).user; + if (result.roles?.includes(process.env.ADMIN_ROLE_NAME)) { + result.isAdmin = true; } return result; } diff --git a/src/api/user/user-profile.service.ts b/src/api/user/user-profile.service.ts index 6192bc9..e6b7f9f 100644 --- a/src/api/user/user-profile.service.ts +++ b/src/api/user/user-profile.service.ts @@ -106,9 +106,11 @@ export class UserProfileService { } // Lookup SSO provider from DB (authoritative list for admin UI dropdown) - const providerRecord = await this.prismaClient.sso_login_provider.findFirst({ - where: { name: { equals: profileDto.provider, mode: 'insensitive' } }, - }); + const providerRecord = await this.prismaClient.sso_login_provider.findFirst( + { + where: { name: { equals: profileDto.provider, mode: 'insensitive' } }, + }, + ); if (!providerRecord) { this.logger.error( `SSO Provider ${profileDto.provider} not found in sso_login_provider table.`, @@ -175,9 +177,11 @@ export class UserProfileService { * @returns the provider id if it is found */ async findProviderIdByName(providerName: string): Promise { - const providerRecord = await this.prismaClient.sso_login_provider.findFirst({ - where: { name: { equals: providerName, mode: 'insensitive' } }, - }); + const providerRecord = await this.prismaClient.sso_login_provider.findFirst( + { + where: { name: { equals: providerName, mode: 'insensitive' } }, + }, + ); return providerRecord?.sso_login_provider_id ? Number(providerRecord?.sso_login_provider_id) : null; @@ -224,9 +228,11 @@ export class UserProfileService { } // Lookup SSO provider from DB (authoritative list for admin UI dropdown) - const providerRecord = await this.prismaClient.sso_login_provider.findFirst({ - where: { name: { equals: profileDto.provider, mode: 'insensitive' } }, - }); + const providerRecord = await this.prismaClient.sso_login_provider.findFirst( + { + where: { name: { equals: profileDto.provider, mode: 'insensitive' } }, + }, + ); if (!providerRecord) { throw new NotFoundException( `SSO Provider '${profileDto.provider}' not found. Cannot update SSO link.`, diff --git a/src/api/user/user.controller.spec.ts b/src/api/user/user.controller.spec.ts index 32f59a9..e3e9f8b 100644 --- a/src/api/user/user.controller.spec.ts +++ b/src/api/user/user.controller.spec.ts @@ -226,7 +226,7 @@ const createMockUserModel = ( last_name: lastName || 'User', create_date: new Date(), modify_date: new Date(), - ...( _email + ...(_email ? { primaryEmailAddress: _email, primaryEmailStatusId: new Prisma.Decimal(1), @@ -416,7 +416,11 @@ describe('UserController', () => { }); const query: DTOs.UserSearchQueryDto = { filter: 'handle=mess' }; const mockRawUsers = [ - createMockUserModel(4, 'machineUser', 'machine@example.com') as UserModel, + createMockUserModel( + 4, + 'machineUser', + 'machine@example.com', + ) as UserModel, ]; mockUserService.findUsers.mockResolvedValue(mockRawUsers); diff --git a/src/api/user/user.controller.ts b/src/api/user/user.controller.ts index 748e58b..4caaf0f 100644 --- a/src/api/user/user.controller.ts +++ b/src/api/user/user.controller.ts @@ -30,7 +30,7 @@ import { UserProfileService } from './user-profile.service'; import { AuthFlowService } from './auth-flow.service'; import { TwoFactorAuthService } from './two-factor-auth.service'; import { ValidationService } from './validation.service'; -import { AuthenticatedUser, JwtStrategy } from '../../core/auth/jwt.strategy'; // For type hints +import { AuthenticatedUser } from '../../core/auth/jwt.strategy'; // For type hints import { Roles } from '../../auth/decorators/roles.decorator'; import { RolesGuard } from '../../auth/guards/roles.guard'; import { ADMIN_ROLE, SCOPES } from '../../auth/constants'; @@ -135,7 +135,8 @@ function mapUserToDto(user: any): DTOs.UserResponseDto { // Map activation_code from DB into response credential.activationCode // Keep undefined if not present const activationCode = user.activation_code ?? undefined; - const hasPassword = typeof user.password === 'string' && user.password.length > 0; + const hasPassword = + typeof user.password === 'string' && user.password.length > 0; dto.credential = { activationCode, hasPassword, @@ -154,18 +155,24 @@ function mapUserToDto(user: any): DTOs.UserResponseDto { function getAuthenticatedUser(req: Request): AuthenticatedUser { const user: any = (req as any).authUser || (req as any).user; const logger = new Logger('getAuthenticatedUser'); // It's a global helper, so create a local logger. - logger.debug(`[getAuthenticatedUser] User user: ${JSON.stringify(user, null, 5)}`); + logger.debug( + `[getAuthenticatedUser] User user: ${JSON.stringify(user, null, 5)}`, + ); // Ensure admin detection accounts for both DB roles and JWT-embedded roles try { - const adminRoleName = (process.env.ADMIN_ROLE_NAME || 'administrator').toLowerCase(); + const adminRoleName = ( + process.env.ADMIN_ROLE_NAME || 'administrator' + ).toLowerCase(); const dbRoles: string[] = Array.isArray(user?.roles) ? user.roles : []; const jwtRoles: string[] = (user?.payload?.['https://topcoder-dev.com/roles'] as string[]) || (user?.payload?.roles as string[]) || []; - const hasAdminInDb = dbRoles.some((r) => String(r).toLowerCase() === adminRoleName); + const hasAdminInDb = dbRoles.some( + (r) => String(r).toLowerCase() === adminRoleName, + ); const hasAdminInJwt = Array.isArray(jwtRoles) ? jwtRoles.some((r) => String(r).toLowerCase() === adminRoleName) : false; @@ -174,7 +181,9 @@ function getAuthenticatedUser(req: Request): AuthenticatedUser { user.isAdmin = true; } } catch (e) { - logger.warn(`[getAuthenticatedUser] Failed to evaluate admin from roles: ${(e as Error).message}`); + logger.warn( + `[getAuthenticatedUser] Failed to evaluate admin from roles: ${(e as Error).message}`, + ); } logger.debug( @@ -548,7 +557,7 @@ export class UserController { required: false, description: `Request query filter, e.g.: filter=field=value[,field=value]. Supported filters: id, handle, firstName, lastName, email, status, regSource, utmSource, utmMedium, utmCampaign, active. - Example: filter=active=true` , + Example: filter=active=true`, }) @ApiQuery({ name: 'limit', @@ -1110,8 +1119,7 @@ export class UserController { @ApiOperation({ summary: 'Get all SSO profiles linked to a user (Admin only).', description: describeAccess({ - summary: - 'Lists all SSO identities associated with the specified user.', + summary: 'Lists all SSO identities associated with the specified user.', jwt: 'Requires a JWT with the `administrator` role.', m2m: 'Not supported; use an administrator JWT.', }), @@ -1239,7 +1247,8 @@ export class UserController { @ApiOperation({ summary: 'Get all external profiles for a user.', description: describeAccess({ - summary: 'Lists the external profiles associated with the specified user.', + summary: + 'Lists the external profiles associated with the specified user.', jwt: 'Requires the `administrator` role or a JWT for the user being queried.', m2m: ['read:user_profiles', 'all:user_profiles'], }), @@ -1917,7 +1926,7 @@ export class UserController { summary: 'Update user primary email using a one-time token.', description: describeAccess({ summary: - 'Consumes a one-time token generated via `oneTimeToken` to update the user\'s primary email.', + "Consumes a one-time token generated via `oneTimeToken` to update the user's primary email.", jwt: 'Not supported; supply the one-time token in the Authorization header instead.', m2m: 'Not applicable.', }), @@ -2079,7 +2088,7 @@ export class UserController { summary: 'Update the primary role for the authenticated user (Self only).', description: describeAccess({ summary: - 'Sets which of the caller\'s roles is marked as primary. Only the user themselves may invoke it.', + "Sets which of the caller's roles is marked as primary. Only the user themselves may invoke it.", jwt: 'Requires a JWT for the member making the request.', m2m: 'Not supported.', }), @@ -2194,8 +2203,7 @@ export class UserController { @ApiOperation({ summary: "Update user's 2FA status (MFA and DICE).", description: describeAccess({ - summary: - 'Enables or disables MFA/DICE for the specified user.', + summary: 'Enables or disables MFA/DICE for the specified user.', jwt: 'Requires the `administrator` role or a JWT for the user being updated.', m2m: 'Not supported.', }), diff --git a/src/api/user/user.service.spec.ts b/src/api/user/user.service.spec.ts index f568128..b7fbb8e 100644 --- a/src/api/user/user.service.spec.ts +++ b/src/api/user/user.service.spec.ts @@ -7,7 +7,10 @@ import { } from './user.service'; import { ConfigService } from '@nestjs/config'; import { CACHE_MANAGER } from '@nestjs/cache-manager'; -import { PRISMA_CLIENT } from '../../shared/prisma/prisma.module'; +import { + PRISMA_CLIENT, + PRISMA_CLIENT_GROUP, +} from '../../shared/prisma/prisma.module'; import { ValidationService } from './validation.service'; import { RoleService } from '../role/role.service'; import { EventService } from '../../shared/event/event.service'; @@ -110,6 +113,15 @@ const mockPrismaOltp = { $queryRaw: jest.fn(), }; +const mockPrismaGroup = { + group: { + findFirst: jest.fn(), + }, + groupMembership: { + create: jest.fn(), + }, +}; + const mockValidationService = { validateHandle: jest.fn(), validateEmail: jest.fn(), @@ -328,6 +340,7 @@ const createMockUserAchievementModel = ( describe('UserService', () => { let service: UserService; let prismaOltp: typeof mockPrismaOltp; + let prismaGroup: typeof mockPrismaGroup; let validationService: jest.Mocked; let roleService: jest.Mocked; let cacheManager: typeof mockCacheManager; @@ -362,6 +375,7 @@ describe('UserService', () => { providers: [ UserService, { provide: PRISMA_CLIENT, useValue: mockPrismaOltp }, + { provide: PRISMA_CLIENT_GROUP, useValue: mockPrismaGroup }, { provide: ValidationService, useValue: mockValidationService }, { provide: ValidationService, useValue: mockValidationService }, // mockValidationService is still provided @@ -377,6 +391,7 @@ describe('UserService', () => { service = module.get(UserService); prismaOltp = module.get(PRISMA_CLIENT); + prismaGroup = module.get(PRISMA_CLIENT_GROUP); validationService = module.get(ValidationService); roleService = module.get(RoleService); cacheManager = module.get(CACHE_MANAGER); @@ -396,6 +411,7 @@ describe('UserService', () => { ); // "testBase64Key" const newService = new UserService( prismaOltp as any, + prismaGroup as any, validationService, roleService, cacheManager as any, @@ -415,6 +431,7 @@ describe('UserService', () => { ); const newService = new UserService( prismaOltp as any, + prismaGroup as any, validationService, roleService, cacheManager as any, @@ -438,6 +455,7 @@ describe('UserService', () => { ); const newService = new UserService( prismaOltp as any, + prismaGroup as any, validationService, roleService, cacheManager as any, @@ -459,6 +477,7 @@ describe('UserService', () => { ); const newService = new UserService( prismaOltp as any, + prismaGroup as any, validationService, roleService, cacheManager as any, diff --git a/src/api/user/user.service.ts b/src/api/user/user.service.ts index 5b67311..6339d34 100644 --- a/src/api/user/user.service.ts +++ b/src/api/user/user.service.ts @@ -17,7 +17,11 @@ import { user_sso_login as UserSsoLoginModel, sso_login_provider as SsoLoginProviderModel, } from '@prisma/client'; -import { PRISMA_CLIENT } from '../../shared/prisma/prisma.module'; +import { PrismaClient as PrismaClientGroup } from '@prisma/client-group'; +import { + PRISMA_CLIENT, + PRISMA_CLIENT_GROUP, +} from '../../shared/prisma/prisma.module'; import { CreateUserBodyDto, UpdateUserBodyDto, @@ -43,6 +47,7 @@ import { MemberStatus } from '../../dto/member'; import { CommonUtils } from '../../shared/util/common.utils'; import { getProviderDetails } from '../../core/constant/provider-type.enum'; import { addMinutes } from 'date-fns'; +import { MembershipType } from '../group/membership-type.enum'; // Import other needed services like NotificationService, AuthFlowService // Define a basic structure for the Auth0 profile data we expect @@ -76,6 +81,8 @@ export class UserService { constructor( @Inject(PRISMA_CLIENT) private readonly prismaClient: PrismaClient, + @Inject(PRISMA_CLIENT_GROUP) + private readonly groupPrismaClient: PrismaClientGroup, @Inject(forwardRef(() => ValidationService)) private readonly validationService: ValidationService, @Inject(forwardRef(() => RoleService)) @@ -116,9 +123,8 @@ export class UserService { query: UserSearchQueryDto, ): Promise<{ users: UserModel[]; total: number }> { this.logger.debug(`Finding users with query: ${JSON.stringify(query)}`); - const { handle, email, id, active, like } = this.extractSearchFilters( - query, - ); + const { handle, email, id, active, like } = + this.extractSearchFilters(query); const filters: Prisma.userWhereInput[] = []; // If ID is provided, enforce exact match by user_id @@ -132,7 +138,9 @@ export class UserService { const value = wildcard.value; if (value.length > 0) { if (wildcard.type === 'startsWith') { - filters.push({ handle: { startsWith: value, mode: 'insensitive' } }); + filters.push({ + handle: { startsWith: value, mode: 'insensitive' }, + }); } else if (wildcard.type === 'endsWith') { filters.push({ handle: { endsWith: value, mode: 'insensitive' } }); } else { @@ -174,7 +182,7 @@ export class UserService { user_email_xref: { some: { email: { - address: addressFilter as any, + address: addressFilter, }, }, }, @@ -182,7 +190,7 @@ export class UserService { { emails: { some: { - address: addressFilter as any, + address: addressFilter, }, }, }, @@ -618,7 +626,8 @@ export class UserService { // Generates a cryptographically-strong random password consisting of // alphanumeric characters of the requested length. private generateRandomPassword(length: number): string { - const charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; + const charset = + 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; const bytes = crypto.randomBytes(length); let result = ''; for (let i = 0; i < length; i++) { @@ -829,12 +838,11 @@ export class UserService { } // add user to initial groups - await this.addUserToDefaultGroups(prisma, nextUserId); + await this.addUserToDefaultGroups(nextUserId); if ( userParams.profile?.provider?.toLowerCase() === WIPRO_SSO_PROVIDER ) { await this.addUserToGroupByDescription( - prisma, nextUserId, WIPRO_ALL_GROUP_NAME, ); @@ -918,7 +926,7 @@ export class UserService { // ========================== // publish user created event // ========================== - await this.publishUserCreatedEvent(newUser, userParams, otpForActivation); + await this.publishUserCreatedEvent(newUser); this.logger.log( `Successfully registered user ${newUser.handle} (ID: ${newUser.user_id.toNumber()}). Status: U. Activation OTP sent for eventing.`, @@ -1079,11 +1087,7 @@ export class UserService { } } - private async publishUserCreatedEvent( - newUser: UserModel, - userParams: UserParamBaseDto, - otpForActivation: string, - ) { + private async publishUserCreatedEvent(newUser: UserModel) { try { // For 'event.user.created', attributes should be the full camelCased newUser object const createdEventAttributes = this.toCamelCase(newUser); @@ -1277,14 +1281,16 @@ export class UserService { where: { user_id: userId }, data: { modify_date: new Date() }, }); - this.logger.log(`No profile changes supplied; updated modify_date for user ${userId}`); + this.logger.log( + `No profile changes supplied; updated modify_date for user ${userId}`, + ); } // Update password if requested if (needPasswordUpdate) { this.logger.debug(`Updating password for: ${userInTx.handle}`); // Do not persist plaintext on the in-memory user object, but set a flag for downstream mapping if needed - (existingUser as any).password = (cred.password as any); + (existingUser as any).password = cred.password as any; if (securityUserRecord) { await prisma.security_user.update({ @@ -1567,7 +1573,7 @@ export class UserService { if (emailChanged) { const memberUserId = BigInt(userId); try { - const updateResult = await this.memberPrisma.member.update({ + await this.memberPrisma.member.update({ where: { userId: memberUserId }, data: { email: normalizedEmail }, }); @@ -2412,10 +2418,9 @@ export class UserService { /** * Add user to default groups. - * @param prisma Prisma client * @param userId The user ID to add. */ - private async addUserToDefaultGroups(prisma: any, userId: number) { + private async addUserToDefaultGroups(userId: number) { this.logger.log(`Adding user: ${userId} to default groups`); const defaultGroups: number[] = [ DefaultGroups.MANAGER, @@ -2424,17 +2429,13 @@ export class UserService { DefaultGroups.ANONYMOUS, ]; for (const groupId of defaultGroups) { - await this.addUserToGroup(prisma, userId, groupId); + await this.addUserToGroup(userId, groupId); } } - private async addUserToGroupByDescription( - prisma: any, - userId: number, - groupName: string, - ) { + private async addUserToGroupByDescription(userId: number, groupName: string) { try { - const groupRecord = await prisma.security_groups.findFirst({ + const groupRecord = await this.groupPrismaClient.group.findFirst({ where: { description: groupName }, }); if (!groupRecord) { @@ -2443,11 +2444,7 @@ export class UserService { ); return; } - await this.addUserToGroup( - prisma, - userId, - Number(groupRecord.group_id), - ); + await this.addUserToGroup(userId, Number(groupRecord.id)); } catch (error) { this.logger.error( `Unable to resolve group '${groupName}' for user ${userId}`, @@ -2458,26 +2455,21 @@ export class UserService { /** * Add user to group. - * @param prisma Prisma client * @param userId The user ID * @param groupId The group ID */ - private async addUserToGroup(prisma: any, userId: number, groupId: number) { + private async addUserToGroup(userId: number, groupId: number) { try { - const result: { nextval: bigint }[] = - await prisma.$queryRaw`SELECT nextval('sequence_user_group_seq'::regclass)`; - if (!result || result.length === 0 || !result[0].nextval) { - throw new Error('Failed to retrieve next user group ID from sequence.'); - } - const nextUserGroupId = Number(result[0].nextval); - this.logger.log(`Next userGroupXref ID: ${nextUserGroupId}`); - await prisma.user_group_xref.create({ + const now = new Date(); + await this.groupPrismaClient.groupMembership.create({ data: { - user_group_id: nextUserGroupId, - group_id: groupId, - login_id: userId, - create_user_id: Constants.DEFAULT_CREATE_USER_ID, - security_status_id: Constants.DEFAULT_SECURITY_STATUS_ID, + groupId, + memberId: userId, + membershipType: MembershipType.User, + createdBy: Constants.DEFAULT_CREATE_USER_ID, + createdAt: now, + modifiedBy: null, + modifiedAt: null, }, }); this.logger.log(`User: ${userId} assigned to groupId: ${groupId}`); diff --git a/src/api/user/validation.service.ts b/src/api/user/validation.service.ts index 4c75a95..c7b30c5 100644 --- a/src/api/user/validation.service.ts +++ b/src/api/user/validation.service.ts @@ -821,7 +821,7 @@ export class ValidationService { select: { user_id: true }, }); } - console.log("Looking for user ID: " + profile.userId); + console.log('Looking for user ID: ' + profile.userId); // getUserIdBySSOUserId if (!ssoLink && profile.userId) { ssoLink = await this.prismaClient.user_sso_login.findFirst({ diff --git a/src/auth/guards/roles.guard.ts b/src/auth/guards/roles.guard.ts index db78cf2..a7e47a4 100644 --- a/src/auth/guards/roles.guard.ts +++ b/src/auth/guards/roles.guard.ts @@ -31,9 +31,7 @@ export class RolesGuard implements CanActivate { .filter(Boolean); const requiredNormalized = required.map((r) => r.toLowerCase()); - const ok = roles.some((r) => - requiredNormalized.includes(r.toLowerCase()), - ); + const ok = roles.some((r) => requiredNormalized.includes(r.toLowerCase())); if (!ok) throw new ForbiddenException('Insufficient role'); return true; } diff --git a/src/auth/guards/self-or-admin.guard.ts b/src/auth/guards/self-or-admin.guard.ts index 33103cb..97c1051 100644 --- a/src/auth/guards/self-or-admin.guard.ts +++ b/src/auth/guards/self-or-admin.guard.ts @@ -21,9 +21,10 @@ export class SelfOrAdminGuard implements CanActivate { // Accept admin if DB-derived flag indicates admin or roles contain admin if (user.isAdmin) return true; try { - const configuredAdminRole = process.env.ADMIN_ROLE_NAME || 'administrator'; + const configuredAdminRole = + process.env.ADMIN_ROLE_NAME || 'administrator'; const adminRoleName = configuredAdminRole.toLowerCase(); - const rawRoles = (user?.roles ?? (user as any)?.role) as + const rawRoles = (user?.roles ?? user?.role) as | string[] | string | undefined; @@ -39,7 +40,7 @@ export class SelfOrAdminGuard implements CanActivate { if (hasAdmin) return true; // Also accept admin if JWT payload contains the admin role - const payloadRolesRaw = (user as any)?.payload?.roles as + const payloadRolesRaw = user?.payload?.roles as | string[] | string | undefined; @@ -53,7 +54,7 @@ export class SelfOrAdminGuard implements CanActivate { (r) => String(r).toLowerCase() === adminRoleName, ); if (hasAdminFromPayload) return true; - } catch (_) { + } catch { // ignore and continue with self check } diff --git a/src/core/constant/provider-type.enum.ts b/src/core/constant/provider-type.enum.ts index 263295b..cac7991 100644 --- a/src/core/constant/provider-type.enum.ts +++ b/src/core/constant/provider-type.enum.ts @@ -32,7 +32,7 @@ export const ProviderTypes: Record = { isSocial: true, isEnterprise: false, }, - 'okta-customer':{ + 'okta-customer': { id: ProviderId.OKTA, key: 'okta-customer', isSocial: false, @@ -110,7 +110,7 @@ export const ProviderTypes: Record = { isSocial: false, isEnterprise: true, }, - "wipro-adfs": { + 'wipro-adfs': { id: ProviderId.ADFS, key: 'wipro-adfs', isSocial: false, diff --git a/src/dto/role/role.dto.ts b/src/dto/role/role.dto.ts index a65659a..4c307ea 100644 --- a/src/dto/role/role.dto.ts +++ b/src/dto/role/role.dto.ts @@ -160,18 +160,27 @@ export class RoleAssignmentResponseDto { // Query params for listing role members (subjects) export class RoleMembersQueryDto { - @ApiPropertyOptional({ description: 'Filter by numeric user id', example: 12345 }) + @ApiPropertyOptional({ + description: 'Filter by numeric user id', + example: 12345, + }) @IsOptional() @IsInt() @Type(() => Number) userId?: number; - @ApiPropertyOptional({ description: 'Filter by Topcoder handle (exact match)', example: 'someuser' }) + @ApiPropertyOptional({ + description: 'Filter by Topcoder handle (exact match)', + example: 'someuser', + }) @IsOptional() @IsString() userHandle?: string; - @ApiPropertyOptional({ description: 'Filter by email (exact match)', example: 'user@example.com' }) + @ApiPropertyOptional({ + description: 'Filter by email (exact match)', + example: 'user@example.com', + }) @IsOptional() @IsString() email?: string; diff --git a/src/shared/member-api/member-api.service.ts b/src/shared/member-api/member-api.service.ts index 3f38c97..5e00e60 100644 --- a/src/shared/member-api/member-api.service.ts +++ b/src/shared/member-api/member-api.service.ts @@ -7,8 +7,6 @@ import { } from '@nestjs/common'; import { HttpService } from '@nestjs/axios'; import { ConfigService } from '@nestjs/config'; -import { CACHE_MANAGER } from '@nestjs/cache-manager'; -import { Cache } from 'cache-manager'; import { firstValueFrom } from 'rxjs'; import { MemberInfoDto } from '../../dto/member/member.dto'; import { M2M_AUTH_CLIENT } from './member-api.constants'; // Import M2M client token from constants @@ -22,13 +20,11 @@ interface M2MAuthClient { @Injectable() export class MemberApiService { private readonly logger = new Logger(MemberApiService.name); - private readonly M2M_TOKEN_CACHE_KEY = 'member_api_m2m_token'; private readonly MEMBER_API_URL: string; constructor( private readonly configService: ConfigService, private readonly httpService: HttpService, - @Inject(CACHE_MANAGER) private cacheManager: Cache, @Inject(M2M_AUTH_CLIENT) private readonly m2mAuthClient: M2MAuthClient, ) { this.MEMBER_API_URL = this.configService.get('MEMBER_API_URL'); @@ -46,18 +42,6 @@ export class MemberApiService { * Gets a valid M2M token for Member API, using the injected M2M client and cache. */ private async getM2mToken(): Promise { - const cachedToken = await this.cacheManager.get( - this.M2M_TOKEN_CACHE_KEY, - ); - if (cachedToken) { - this.logger.debug('Using cached M2M token for Member API.'); - return cachedToken; - } - - this.logger.log( - 'No cached M2M token found for Member API, fetching new one via m2mAuthClient...', - ); - const clientId = this.configService.get('AUTH0_CLIENT_ID'); const clientSecret = this.configService.get('AUTH0_CLIENT_SECRET'); @@ -74,28 +58,14 @@ export class MemberApiService { clientSecret, ); - if (newToken) { - const cacheTtlSeconds = this.configService.get( - 'TOKEN_CACHE_TIME', - 23 * 60 * 60, // Default to 23 hours - ); - const effectiveTtlSeconds = Math.max(60, cacheTtlSeconds - 60); // Cache slightly less - - await this.cacheManager.set( - this.M2M_TOKEN_CACHE_KEY, - newToken, - effectiveTtlSeconds * 1000, - ); - this.logger.log( - `Cached new M2M token for Member API for ${effectiveTtlSeconds} seconds.`, - ); - return newToken; - } else { + if (!newToken) { this.logger.error( 'm2mAuthClient.getMachineToken returned null/empty token without error.', ); return null; } + + return newToken; } catch (error) { this.logger.error( `Error fetching M2M token via m2mAuthClient: ${error.message}`, diff --git a/src/shared/swagger/access-description.util.ts b/src/shared/swagger/access-description.util.ts index bb69fa0..81fc2be 100644 --- a/src/shared/swagger/access-description.util.ts +++ b/src/shared/swagger/access-description.util.ts @@ -38,10 +38,7 @@ export function describeAccess({ `**JWT access:** ${formatSegment(jwt, 'Any authenticated user.')}`, ); - pieces.push( - '', - `**M2M scopes:** ${formatSegment(m2m, 'Not supported.')}`, - ); + pieces.push('', `**M2M scopes:** ${formatSegment(m2m, 'Not supported.')}`); if (notes) { const noteItems = Array.isArray(notes) ? notes : [notes]; diff --git a/src/shared/util/common.utils.ts b/src/shared/util/common.utils.ts index ad2baa7..1c9a71e 100644 --- a/src/shared/util/common.utils.ts +++ b/src/shared/util/common.utils.ts @@ -101,9 +101,14 @@ export class CommonUtils { * @param configService Nest config service (or look-alike) used to read env config * @returns application domain such as topcoder-dev.com */ - static getAppDomain( - configService?: { get(key: string): T | undefined }, - ): string { + static getAppDomain(configService?: { + get(key: string): T | undefined; + }): string { + const configuredDomain = configService?.get?.('APP_DOMAIN'); + if (typeof configuredDomain === 'string' && configuredDomain.trim()) { + return configuredDomain.trim(); + } + const envDomain = process.env.APP_DOMAIN; if (envDomain && envDomain.trim().length > 0) { return envDomain.trim(); diff --git a/src/shared/util/pagination.util.ts b/src/shared/util/pagination.util.ts index 887527e..bb8046b 100644 --- a/src/shared/util/pagination.util.ts +++ b/src/shared/util/pagination.util.ts @@ -1,5 +1,5 @@ -import { Response, Request } from 'express' -import { URL } from 'url' +import { Response, Request } from 'express'; +import { URL } from 'url'; export function setPaginationHeaders( res: Response, @@ -8,48 +8,49 @@ export function setPaginationHeaders( page: number, perPage: number, ) { - const totalPages = Math.max(1, Math.ceil(total / Math.max(1, perPage))) + const totalPages = Math.max(1, Math.ceil(total / Math.max(1, perPage))); - const baseUrl = `${req.protocol}://${req.get('host')}` - const url = new URL(req.originalUrl || req.url, baseUrl) + const baseUrl = `${req.protocol}://${req.get('host')}`; + const url = new URL(req.originalUrl || req.url, baseUrl); const getPageLink = (p: number) => { - const params = new URLSearchParams(url.search) + const params = new URLSearchParams(url.search); // If the incoming request uses page/perPage, keep that style. Otherwise, use limit/offset. - const usesPage = params.has('page') || params.has('perPage') + const usesPage = params.has('page') || params.has('perPage'); if (usesPage) { - params.set('perPage', String(perPage)) - params.set('page', String(Math.max(1, p))) + params.set('perPage', String(perPage)); + params.set('page', String(Math.max(1, p))); } else { - params.set('limit', String(perPage)) - params.set('offset', String(Math.max(0, (p - 1) * perPage))) + params.set('limit', String(perPage)); + params.set('offset', String(Math.max(0, (p - 1) * perPage))); } - return `${url.pathname}?${params.toString()}` - } + return `${url.pathname}?${params.toString()}`; + }; - const links: string[] = [] + const links: string[] = []; if (page < totalPages) { - links.push(`<${getPageLink(page + 1)}>; rel="next"`) + links.push(`<${getPageLink(page + 1)}>; rel="next"`); } if (page > 1) { - links.push(`<${getPageLink(page - 1)}>; rel="prev"`) + links.push(`<${getPageLink(page - 1)}>; rel="prev"`); } - links.push(`<${getPageLink(totalPages)}>; rel="last"`) - links.push(`<${getPageLink(1)}>; rel="first"`) + links.push(`<${getPageLink(totalPages)}>; rel="last"`); + links.push(`<${getPageLink(1)}>; rel="first"`); if (page > 1) { - res.set('X-Prev-Page', String(page - 1)) + res.set('X-Prev-Page', String(page - 1)); } if (page < totalPages) { - res.set('X-Next-Page', String(page + 1)) + res.set('X-Next-Page', String(page + 1)); } - res.set('X-Page', String(page)) - res.set('X-Per-Page', String(perPage)) - res.set('X-Total', String(total)) - res.set('X-Total-Pages', String(totalPages)) - res.set('Link', links.join(', ')) - let expose = (res.getHeader('Access-Control-Expose-Headers') as string) || '' - expose += expose ? ', ' : '' - expose += 'X-Page, X-Per-Page, X-Total, X-Total-Pages, X-Prev-Page, X-Next-Page, Link' - res.set('Access-Control-Expose-Headers', expose) + res.set('X-Page', String(page)); + res.set('X-Per-Page', String(perPage)); + res.set('X-Total', String(total)); + res.set('X-Total-Pages', String(totalPages)); + res.set('Link', links.join(', ')); + let expose = (res.getHeader('Access-Control-Expose-Headers') as string) || ''; + expose += expose ? ', ' : ''; + expose += + 'X-Page, X-Per-Page, X-Total, X-Total-Pages, X-Prev-Page, X-Next-Page, Link'; + res.set('Access-Control-Expose-Headers', expose); }