From fc23919a4e391d0184a18b897b691598b7bbc258 Mon Sep 17 00:00:00 2001 From: "jif2.zhang" Date: Mon, 26 Oct 2026 20:42:05 +0800 Subject: [PATCH] =?UTF-8?q?chore(prisma):=20=E8=A1=A5=E9=BD=90=20generated?= =?UTF-8?q?=20=E4=BB=BB=E5=8A=A1=E6=A8=A1=E5=9D=97=E6=A8=A1=E5=9E=8B=20(Pr?= =?UTF-8?q?oject/Task/BoardColumn=20=E7=AD=89=206=20=E4=B8=AA),=20?= =?UTF-8?q?=E4=B8=8E=20schema=20=E5=AF=B9=E9=BD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- generated/prisma/browser.ts | 30 + generated/prisma/client.ts | 30 + generated/prisma/internal/class.ts | 68 +- generated/prisma/internal/prismaNamespace.ts | 540 ++- .../prisma/internal/prismaNamespaceBrowser.ts | 136 +- generated/prisma/models.ts | 6 + generated/prisma/models/BoardColumn.ts | 1526 ++++++++ generated/prisma/models/Project.ts | 1901 ++++++++++ generated/prisma/models/ProjectMember.ts | 1394 ++++++++ generated/prisma/models/Task.ts | 3182 +++++++++++++++++ generated/prisma/models/TaskMember.ts | 1310 +++++++ generated/prisma/models/TaskTag.ts | 1202 +++++++ generated/prisma/models/User.ts | 782 ++++ 13 files changed, 12100 insertions(+), 7 deletions(-) create mode 100644 generated/prisma/models/BoardColumn.ts create mode 100644 generated/prisma/models/Project.ts create mode 100644 generated/prisma/models/ProjectMember.ts create mode 100644 generated/prisma/models/Task.ts create mode 100644 generated/prisma/models/TaskMember.ts create mode 100644 generated/prisma/models/TaskTag.ts diff --git a/generated/prisma/browser.ts b/generated/prisma/browser.ts index fad8cc8..6b62810 100644 --- a/generated/prisma/browser.ts +++ b/generated/prisma/browser.ts @@ -132,3 +132,33 @@ export type CheckListItem = Prisma.CheckListItemModel * */ export type CheckListTemplate = Prisma.CheckListTemplateModel +/** + * Model Project + * + */ +export type Project = Prisma.ProjectModel +/** + * Model ProjectMember + * + */ +export type ProjectMember = Prisma.ProjectMemberModel +/** + * Model BoardColumn + * + */ +export type BoardColumn = Prisma.BoardColumnModel +/** + * Model Task + * + */ +export type Task = Prisma.TaskModel +/** + * Model TaskMember + * + */ +export type TaskMember = Prisma.TaskMemberModel +/** + * Model TaskTag + * + */ +export type TaskTag = Prisma.TaskTagModel diff --git a/generated/prisma/client.ts b/generated/prisma/client.ts index 322de4c..188bf4b 100644 --- a/generated/prisma/client.ts +++ b/generated/prisma/client.ts @@ -156,3 +156,33 @@ export type CheckListItem = Prisma.CheckListItemModel * */ export type CheckListTemplate = Prisma.CheckListTemplateModel +/** + * Model Project + * + */ +export type Project = Prisma.ProjectModel +/** + * Model ProjectMember + * + */ +export type ProjectMember = Prisma.ProjectMemberModel +/** + * Model BoardColumn + * + */ +export type BoardColumn = Prisma.BoardColumnModel +/** + * Model Task + * + */ +export type Task = Prisma.TaskModel +/** + * Model TaskMember + * + */ +export type TaskMember = Prisma.TaskMemberModel +/** + * Model TaskTag + * + */ +export type TaskTag = Prisma.TaskTagModel diff --git a/generated/prisma/internal/class.ts b/generated/prisma/internal/class.ts index c8ce4ba..8aedbb9 100644 --- a/generated/prisma/internal/class.ts +++ b/generated/prisma/internal/class.ts @@ -20,7 +20,7 @@ const config: runtime.GetPrismaClientConfig = { "clientVersion": "7.7.0", "engineVersion": "75cbdc1eb7150937890ad5465d861175c6624711", "activeProvider": "mysql", - "inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Get a free hosted Postgres database in seconds: `npx create-db`\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"mysql\"\n}\n\nmodel User {\n id Int @id @default(autoincrement())\n name String\n email String @unique\n password String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n // V0.2 打卡 / 清单: 用户删除时级联清理\n habits Habit[]\n checkIns CheckIn[]\n checkLists CheckList[]\n templates CheckListTemplate[]\n}\n\nmodel Article {\n id Int @id @default(autoincrement())\n title String\n slug String @unique\n content String\n date String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel Strategy {\n id Int @id @default(autoincrement())\n name String\n description String\n data Json\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel Indicator {\n id Int @id @default(autoincrement())\n name String @unique\n groupName String\n title String @default(\"\")\n unit String @default(\"\")\n source String @default(\"\")\n frequency String @default(\"month\") // year | quarter | month | day\n hidden Boolean @default(false) // true = 数据/脚本保留, 但不在前端展示\n points IndicatorPoint[]\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel IndicatorPoint {\n id Int @id @default(autoincrement())\n indicatorId Int\n indicator Indicator @relation(fields: [indicatorId], references: [id], onDelete: Cascade)\n period String // \"2024\" | \"2024-Q1\" | \"2024-01\" | \"2024-01-15\"\n value Float\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@unique([indicatorId, period])\n}\n\n// 新闻: 每天 3 点由 mx_finance_search_news 拉取, 按影响大小排序, 累加多日供首页无限滚动\nmodel News {\n id Int @id @default(autoincrement())\n title String\n summary String @default(\"\")\n content String? @db.Text\n source String @default(\"\")\n url String @default(\"\")\n publishedAt DateTime\n impactRank Int\n createdAt DateTime @default(now())\n\n @@unique([title, publishedAt])\n @@index([publishedAt])\n}\n\n// 报警: refresh 写库时比对同 (indicatorName, period) 的跨源数据, 差异超阈值记录\nmodel Alert {\n id Int @id @default(autoincrement())\n indicatorName String\n period String\n valueA Float\n valueB Float\n sourceA String\n sourceB String\n diff Float\n diffRatio Float\n createdAt DateTime @default(now())\n\n @@index([createdAt])\n}\n\n// 服务器监控: 对接 komari 公开 API\nmodel ServerNode {\n id Int @id @default(autoincrement())\n uuid String @unique\n name String\n cpuName String @default(\"\")\n os String @default(\"\")\n region String @default(\"\")\n memTotal BigInt @default(0)\n diskTotal BigInt @default(0)\n cpuCores Int @default(0)\n // 最新实时快照\n cpuUsage Float @default(0)\n ramUsed BigInt @default(0)\n swapUsed BigInt @default(0)\n load1 Float @default(0)\n load5 Float @default(0)\n load15 Float @default(0)\n diskUsed BigInt @default(0)\n netIn BigInt @default(0)\n netOut BigInt @default(0)\n uptime BigInt @default(0)\n process Int @default(0)\n connections Int @default(0)\n status String @default(\"unknown\") // online | offline | unknown\n recordedAt DateTime\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\n// 时序历史: 每节点每分钟一条 (komari records 1 分钟粒度)\nmodel ServerNodeHistory {\n id Int @id @default(autoincrement())\n uuid String\n period DateTime\n cpu Float @default(0)\n ram BigInt @default(0)\n load Float @default(0)\n disk BigInt @default(0)\n netIn BigInt @default(0)\n netOut BigInt @default(0)\n process Int @default(0)\n connections Int @default(0)\n createdAt DateTime @default(now())\n\n @@unique([uuid, period])\n @@index([uuid, period])\n}\n\n// 服务健康检查: 本应用自检 (健康端点 / DB / 第三方)\nmodel ServiceCheck {\n id Int @id @default(autoincrement())\n name String @unique\n url String\n status String @default(\"unknown\") // up | down | unknown\n latencyMs Int @default(0)\n message String @default(\"\")\n lastCheckAt DateTime\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel Econ_SowInventory {\n id Int @id @default(autoincrement())\n month String @unique\n inventory Int // 能繁母猪数量(万头)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel ScraperCache {\n id Int @id @default(autoincrement())\n scraperName String @unique // 爬虫名称,如:sow-inventory\n lastDataHash String? // 上次数据指纹\n lastUpdateAt DateTime // 上次更新时间\n metadata Json? // 其他元数据\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\n// 浙江省油价历史 (apizero price 接口每日抓取)\n// 每天 04:00 cron 触发: 检查 schedule 里待定且 <= 昨天的调价日, 抓 price?province=浙江 存本表\n// unique (date, province, fuel) 防重复\nmodel OilPriceHistory {\n id Int @id @default(autoincrement())\n date DateTime // 调价日次日 (即数据实际抓取日)\n province String // '浙江'\n fuel String // '92' | '95' | '0'\n price Float // 油价 (元/升, 4 位小数足够)\n source String @default(\"apizero\")\n createdAt DateTime @default(now())\n\n @@unique([date, province, fuel])\n @@index([province, fuel, date])\n}\n\n// ==================== 环境监控:米家 ====================\n\n// 米家授权状态 (DiskCache 存凭证, 本表只存状态/错误供前端展示)\nmodel MihomeAccount {\n id Int @id @default(autoincrement())\n key String @unique @default(\"default\")\n userId String @default(\"\")\n status String @default(\"unknown\") // ok | pending | expired\n lastError String @default(\"\")\n updatedAt DateTime @updatedAt\n}\n\nmodel MihomeHome {\n id Int @id @default(autoincrement())\n homeId String @unique\n name String\n createdAt DateTime @default(now())\n devices MihomeDevice[]\n}\n\nmodel MihomeDevice {\n id Int @id @default(autoincrement())\n did String @unique\n homeId String\n home MihomeHome @relation(fields: [homeId], references: [homeId])\n model String\n name String\n alias String? // 用户别名, 仅本应用展示\n tempSiid Int\n tempPiid Int\n humSiid Int\n humPiid Int\n battSiid Int // 电池电量属性 (炎米 3.1003 / 青萍 2.3)\n battPiid Int\n battery Int? // 最近一次电量 (每天读一次, 标题展示用)\n batteryAt DateTime? // 电量读取时间 (当天缓存, 不频繁更新)\n enabled Boolean @default(true)\n lastSyncAt DateTime?\n createdAt DateTime @default(now())\n samples MihomeEnvSample[]\n hours MihomeEnvHour[]\n}\n\n// 日档: 月视图(逐日)数据源; unique (deviceId, date) 防重\nmodel MihomeEnvSample {\n id Int @id @default(autoincrement())\n deviceId Int\n device MihomeDevice @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n date DateTime // 采样日 (Asia/Shanghai 当日 00:00 存 UTC)\n temperature Float? // 当日最后一次实时值 (或 vendor hour 均值)\n humidity Float?\n temperatureAvg Float? // 当日均值 (由小时档聚合, 或 vendor_hour)\n humidityAvg Float?\n temperatureMin Float? // 当日最低\n temperatureMax Float? // 当日最高\n humidityMin Float?\n humidityMax Float?\n origin String @default(\"live\") // live | vendor_history | backfill\n sampledAt DateTime?\n raw Json?\n createdAt DateTime @default(now())\n\n @@unique([deviceId, date])\n @@index([deviceId, date])\n}\n\n// 小时档: 当天视图(逐小时)数据源; unique (deviceId, hour) 防重\nmodel MihomeEnvHour {\n id Int @id @default(autoincrement())\n deviceId Int\n device MihomeDevice @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n hour DateTime // Asia/Shanghai 整点 (存 UTC)\n temperatureAvg Float? // 该小时均值 (live 采样点, 或 vendor_hour)\n humidityAvg Float?\n raw Json?\n createdAt DateTime @default(now())\n\n @@unique([deviceId, hour])\n @@index([deviceId, hour])\n}\n\n// ==================== 打卡 / 日历 / 清单 (V0.2) ====================\n\n// 打卡项: 周期性目标 (每天 / 每周 / 每月 / 每年 n 次)\nmodel Habit {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n name String\n period String @default(\"day\") // day | week | month | year\n target Int @default(1) // 周期内目标次数 n (>=1)\n color String @default(\"#1677ff\")\n icon String @default(\"\") // emoji 或图标名, 预留\n note String @default(\"\")\n archived Boolean @default(false) // 归档: 不出现在今日待办, 历史保留\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n records CheckIn[]\n\n @@index([userId, archived, sortOrder])\n}\n\n// 打卡记录: 一次打卡 = 一条; 同日多次 => seq 递增 (1..n, 超额继续累加)\nmodel CheckIn {\n id Int @id @default(autoincrement())\n habitId Int\n habit Habit @relation(fields: [habitId], references: [id], onDelete: Cascade)\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n date String @db.VarChar(10) // 本地日历日 \"YYYY-MM-DD\" (Asia/Shanghai)\n seq Int @default(1) // 当日第几次\n note String @default(\"\")\n source String @default(\"user\") // user | backfill (补打)\n createdAt DateTime @default(now())\n\n @@unique([habitId, date, seq])\n @@index([userId, date])\n @@index([habitId, date])\n}\n\n// 检查清单: 出差 / 回老家 等场景的一次性清单\nmodel CheckList {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n title String\n scene String @default(\"\") // 出差 | 回老家 | 自定义\n note String @default(\"\")\n archived Boolean @default(false)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n items CheckListItem[]\n\n @@index([userId, archived])\n}\n\n// 检查项: 勾选即完成\nmodel CheckListItem {\n id Int @id @default(autoincrement())\n listId Int\n list CheckList @relation(fields: [listId], references: [id], onDelete: Cascade)\n title String\n note String @default(\"\")\n done Boolean @default(false)\n doneAt DateTime?\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([listId, sortOrder])\n}\n\n// 清单模板: builtin = 系统预置 (userId 为空); 否则为用户自定义\nmodel CheckListTemplate {\n id Int @id @default(autoincrement())\n userId Int?\n user User? @relation(fields: [userId], references: [id], onDelete: Cascade)\n name String\n scene String @default(\"\")\n items Json // [{ title, note }]\n builtin Boolean @default(false)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([userId, builtin])\n}\n", + "inlineSchema": "// This is your Prisma schema file,\n// learn more about it in the docs: https://pris.ly/d/prisma-schema\n\n// Get a free hosted Postgres database in seconds: `npx create-db`\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"mysql\"\n}\n\nmodel User {\n id Int @id @default(autoincrement())\n name String\n email String @unique\n password String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n // V0.2 打卡 / 清单: 用户删除时级联清理\n habits Habit[]\n checkIns CheckIn[]\n checkLists CheckList[]\n templates CheckListTemplate[]\n\n // V0.2 任务模块\n ownedProjects Project[] @relation(\"ProjectOwner\")\n projectMembers ProjectMember[]\n assignedTasks Task[] @relation(\"TaskAssignee\")\n createdTasks Task[] @relation(\"TaskCreator\")\n taskMembers TaskMember[]\n}\n\nmodel Article {\n id Int @id @default(autoincrement())\n title String\n slug String @unique\n content String\n date String\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel Strategy {\n id Int @id @default(autoincrement())\n name String\n description String\n data Json\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel Indicator {\n id Int @id @default(autoincrement())\n name String @unique\n groupName String\n title String @default(\"\")\n unit String @default(\"\")\n source String @default(\"\")\n frequency String @default(\"month\") // year | quarter | month | day\n hidden Boolean @default(false) // true = 数据/脚本保留, 但不在前端展示\n points IndicatorPoint[]\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel IndicatorPoint {\n id Int @id @default(autoincrement())\n indicatorId Int\n indicator Indicator @relation(fields: [indicatorId], references: [id], onDelete: Cascade)\n period String // \"2024\" | \"2024-Q1\" | \"2024-01\" | \"2024-01-15\"\n value Float\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@unique([indicatorId, period])\n}\n\n// 新闻: 每天 3 点由 mx_finance_search_news 拉取, 按影响大小排序, 累加多日供首页无限滚动\nmodel News {\n id Int @id @default(autoincrement())\n title String\n summary String @default(\"\")\n content String? @db.Text\n source String @default(\"\")\n url String @default(\"\")\n publishedAt DateTime\n impactRank Int\n createdAt DateTime @default(now())\n\n @@unique([title, publishedAt])\n @@index([publishedAt])\n}\n\n// 报警: refresh 写库时比对同 (indicatorName, period) 的跨源数据, 差异超阈值记录\nmodel Alert {\n id Int @id @default(autoincrement())\n indicatorName String\n period String\n valueA Float\n valueB Float\n sourceA String\n sourceB String\n diff Float\n diffRatio Float\n createdAt DateTime @default(now())\n\n @@index([createdAt])\n}\n\n// 服务器监控: 对接 komari 公开 API\nmodel ServerNode {\n id Int @id @default(autoincrement())\n uuid String @unique\n name String\n cpuName String @default(\"\")\n os String @default(\"\")\n region String @default(\"\")\n memTotal BigInt @default(0)\n diskTotal BigInt @default(0)\n cpuCores Int @default(0)\n // 最新实时快照\n cpuUsage Float @default(0)\n ramUsed BigInt @default(0)\n swapUsed BigInt @default(0)\n load1 Float @default(0)\n load5 Float @default(0)\n load15 Float @default(0)\n diskUsed BigInt @default(0)\n netIn BigInt @default(0)\n netOut BigInt @default(0)\n uptime BigInt @default(0)\n process Int @default(0)\n connections Int @default(0)\n status String @default(\"unknown\") // online | offline | unknown\n recordedAt DateTime\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\n// 时序历史: 每节点每分钟一条 (komari records 1 分钟粒度)\nmodel ServerNodeHistory {\n id Int @id @default(autoincrement())\n uuid String\n period DateTime\n cpu Float @default(0)\n ram BigInt @default(0)\n load Float @default(0)\n disk BigInt @default(0)\n netIn BigInt @default(0)\n netOut BigInt @default(0)\n process Int @default(0)\n connections Int @default(0)\n createdAt DateTime @default(now())\n\n @@unique([uuid, period])\n @@index([uuid, period])\n}\n\n// 服务健康检查: 本应用自检 (健康端点 / DB / 第三方)\nmodel ServiceCheck {\n id Int @id @default(autoincrement())\n name String @unique\n url String\n status String @default(\"unknown\") // up | down | unknown\n latencyMs Int @default(0)\n message String @default(\"\")\n lastCheckAt DateTime\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel Econ_SowInventory {\n id Int @id @default(autoincrement())\n month String @unique\n inventory Int // 能繁母猪数量(万头)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\nmodel ScraperCache {\n id Int @id @default(autoincrement())\n scraperName String @unique // 爬虫名称,如:sow-inventory\n lastDataHash String? // 上次数据指纹\n lastUpdateAt DateTime // 上次更新时间\n metadata Json? // 其他元数据\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n}\n\n// 浙江省油价历史 (apizero price 接口每日抓取)\n// 每天 04:00 cron 触发: 检查 schedule 里待定且 <= 昨天的调价日, 抓 price?province=浙江 存本表\n// unique (date, province, fuel) 防重复\nmodel OilPriceHistory {\n id Int @id @default(autoincrement())\n date DateTime // 调价日次日 (即数据实际抓取日)\n province String // '浙江'\n fuel String // '92' | '95' | '0'\n price Float // 油价 (元/升, 4 位小数足够)\n source String @default(\"apizero\")\n createdAt DateTime @default(now())\n\n @@unique([date, province, fuel])\n @@index([province, fuel, date])\n}\n\n// ==================== 环境监控:米家 ====================\n\n// 米家授权状态 (DiskCache 存凭证, 本表只存状态/错误供前端展示)\nmodel MihomeAccount {\n id Int @id @default(autoincrement())\n key String @unique @default(\"default\")\n userId String @default(\"\")\n status String @default(\"unknown\") // ok | pending | expired\n lastError String @default(\"\")\n updatedAt DateTime @updatedAt\n}\n\nmodel MihomeHome {\n id Int @id @default(autoincrement())\n homeId String @unique\n name String\n createdAt DateTime @default(now())\n devices MihomeDevice[]\n}\n\nmodel MihomeDevice {\n id Int @id @default(autoincrement())\n did String @unique\n homeId String\n home MihomeHome @relation(fields: [homeId], references: [homeId])\n model String\n name String\n alias String? // 用户别名, 仅本应用展示\n tempSiid Int\n tempPiid Int\n humSiid Int\n humPiid Int\n battSiid Int // 电池电量属性 (炎米 3.1003 / 青萍 2.3)\n battPiid Int\n battery Int? // 最近一次电量 (每天读一次, 标题展示用)\n batteryAt DateTime? // 电量读取时间 (当天缓存, 不频繁更新)\n enabled Boolean @default(true)\n lastSyncAt DateTime?\n createdAt DateTime @default(now())\n samples MihomeEnvSample[]\n hours MihomeEnvHour[]\n}\n\n// 日档: 月视图(逐日)数据源; unique (deviceId, date) 防重\nmodel MihomeEnvSample {\n id Int @id @default(autoincrement())\n deviceId Int\n device MihomeDevice @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n date DateTime // 采样日 (Asia/Shanghai 当日 00:00 存 UTC)\n temperature Float? // 当日最后一次实时值 (或 vendor hour 均值)\n humidity Float?\n temperatureAvg Float? // 当日均值 (由小时档聚合, 或 vendor_hour)\n humidityAvg Float?\n temperatureMin Float? // 当日最低\n temperatureMax Float? // 当日最高\n humidityMin Float?\n humidityMax Float?\n origin String @default(\"live\") // live | vendor_history | backfill\n sampledAt DateTime?\n raw Json?\n createdAt DateTime @default(now())\n\n @@unique([deviceId, date])\n @@index([deviceId, date])\n}\n\n// 小时档: 当天视图(逐小时)数据源; unique (deviceId, hour) 防重\nmodel MihomeEnvHour {\n id Int @id @default(autoincrement())\n deviceId Int\n device MihomeDevice @relation(fields: [deviceId], references: [id], onDelete: Cascade)\n hour DateTime // Asia/Shanghai 整点 (存 UTC)\n temperatureAvg Float? // 该小时均值 (live 采样点, 或 vendor_hour)\n humidityAvg Float?\n raw Json?\n createdAt DateTime @default(now())\n\n @@unique([deviceId, hour])\n @@index([deviceId, hour])\n}\n\n// ==================== 打卡 / 日历 / 清单 (V0.2) ====================\n\n// 打卡项: 周期性目标 (每天 / 每周 / 每月 / 每年 n 次)\nmodel Habit {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n name String\n period String @default(\"day\") // day | week | month | year\n target Int @default(1) // 周期内目标次数 n (>=1)\n color String @default(\"#1677ff\")\n icon String @default(\"\") // emoji 或图标名, 预留\n note String @default(\"\")\n archived Boolean @default(false) // 归档: 不出现在今日待办, 历史保留\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n records CheckIn[]\n\n @@index([userId, archived, sortOrder])\n}\n\n// 打卡记录: 一次打卡 = 一条; 同日多次 => seq 递增 (1..n, 超额继续累加)\nmodel CheckIn {\n id Int @id @default(autoincrement())\n habitId Int\n habit Habit @relation(fields: [habitId], references: [id], onDelete: Cascade)\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n date String @db.VarChar(10) // 本地日历日 \"YYYY-MM-DD\" (Asia/Shanghai)\n seq Int @default(1) // 当日第几次\n note String @default(\"\")\n source String @default(\"user\") // user | backfill (补打)\n createdAt DateTime @default(now())\n\n @@unique([habitId, date, seq])\n @@index([userId, date])\n @@index([habitId, date])\n}\n\n// 检查清单: 出差 / 回老家 等场景的一次性清单\nmodel CheckList {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n title String\n scene String @default(\"\") // 出差 | 回老家 | 自定义\n note String @default(\"\")\n archived Boolean @default(false)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n items CheckListItem[]\n\n @@index([userId, archived])\n}\n\n// 检查项: 勾选即完成\nmodel CheckListItem {\n id Int @id @default(autoincrement())\n listId Int\n list CheckList @relation(fields: [listId], references: [id], onDelete: Cascade)\n title String\n note String @default(\"\")\n done Boolean @default(false)\n doneAt DateTime?\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([listId, sortOrder])\n}\n\n// 清单模板: builtin = 系统预置 (userId 为空); 否则为用户自定义\nmodel CheckListTemplate {\n id Int @id @default(autoincrement())\n userId Int?\n user User? @relation(fields: [userId], references: [id], onDelete: Cascade)\n name String\n scene String @default(\"\")\n items Json // [{ title, note }]\n builtin Boolean @default(false)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n @@index([userId, builtin])\n}\n\n// ================== 任务模块 (V0.2 任务模块需求文档 T-*) ==================\n// 口径见 docs/V0.2/任务模块/任务模块数据库设计文档.md\n// 项目 = 隔离 + 权限单位; 看板列是实体(可增删改排序);\n// 任务状态(todo/doing/done) 与 看板列 是两个正交维度, 由列的 boundStatus 决定是否联动.\n\nmodel Project {\n id Int @id @default(autoincrement())\n name String @db.VarChar(50)\n ownerId Int\n owner User @relation(\"ProjectOwner\", fields: [ownerId], references: [id], onDelete: Cascade)\n isPersonal Boolean @default(false)\n archived Boolean @default(false)\n notes Json @default(\"[]\") // 项目信息块 [{ title, content }] (T-PJ-13)\n taskKinds Json? // 任务类型标签列表 (未配置时服务端回落默认四类)\n icon String? @db.Text // 项目图标 (data URL, 客户端裁剪为 96x96 JPEG)\n autoArchive String @default(\"never\") @db.VarChar(8) // 自动归档档位: 3d/1w/1m/never (T-ARC-02)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n members ProjectMember[]\n columns BoardColumn[]\n tasks Task[]\n\n @@index([ownerId])\n @@index([archived])\n}\n\nmodel ProjectMember {\n id Int @id @default(autoincrement())\n projectId Int\n project Project @relation(fields: [projectId], references: [id], onDelete: Cascade)\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n permission String @default(\"member\")\n createdAt DateTime @default(now())\n\n @@unique([projectId, userId])\n @@index([userId])\n}\n\nmodel BoardColumn {\n id Int @id @default(autoincrement())\n projectId Int\n project Project @relation(fields: [projectId], references: [id], onDelete: Cascade)\n name String @db.VarChar(20)\n sortOrder Int @default(0)\n boundStatus String? @db.VarChar(8)\n retention String @default(\"forever\") @db.VarChar(8)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n tasks Task[]\n\n @@unique([projectId, name])\n @@index([projectId, sortOrder])\n}\n\nmodel Task {\n id Int @id @default(autoincrement())\n projectId Int\n project Project @relation(fields: [projectId], references: [id], onDelete: Cascade)\n columnId Int\n column BoardColumn @relation(fields: [columnId], references: [id], onDelete: Restrict)\n parentId Int?\n parent Task? @relation(\"Subtask\", fields: [parentId], references: [id], onDelete: Cascade)\n children Task[] @relation(\"Subtask\")\n\n title String @db.VarChar(200)\n description String @default(\"\") @db.Text\n kind String? @db.VarChar(20) // 任务类型标签 (项目 taskKinds 之一)\n markDate DateTime? // 时间标记 (完整日期存储, 展示为 MM-dd)\n status String @default(\"todo\") @db.VarChar(8)\n doneAt DateTime?\n\n assigneeId Int?\n assignee User? @relation(\"TaskAssignee\", fields: [assigneeId], references: [id], onDelete: SetNull)\n creatorId Int\n creator User @relation(\"TaskCreator\", fields: [creatorId], references: [id], onDelete: Cascade)\n\n extras Json @default(\"[]\")\n sortOrder Int @default(0)\n archived Boolean @default(false)\n archivedAt DateTime?\n archiveSource String? @db.VarChar(8) // manual | auto (T-ARC)\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n members TaskMember[]\n tags TaskTag[]\n\n @@index([projectId, columnId])\n @@index([projectId, status])\n @@index([parentId])\n @@index([projectId, doneAt])\n @@index([projectId, archived, archivedAt])\n @@index([projectId, status, archived])\n}\n\nmodel TaskMember {\n id Int @id @default(autoincrement())\n taskId Int\n task Task @relation(fields: [taskId], references: [id], onDelete: Cascade)\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n\n @@unique([taskId, userId])\n}\n\nmodel TaskTag {\n id Int @id @default(autoincrement())\n taskId Int\n task Task @relation(fields: [taskId], references: [id], onDelete: Cascade)\n name String @db.VarChar(20)\n\n @@index([taskId])\n}\n", "runtimeDataModel": { "models": {}, "enums": {}, @@ -32,10 +32,10 @@ const config: runtime.GetPrismaClientConfig = { } } -config.runtimeDataModel = JSON.parse("{\"models\":{\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"habits\",\"kind\":\"object\",\"type\":\"Habit\",\"relationName\":\"HabitToUser\"},{\"name\":\"checkIns\",\"kind\":\"object\",\"type\":\"CheckIn\",\"relationName\":\"CheckInToUser\"},{\"name\":\"checkLists\",\"kind\":\"object\",\"type\":\"CheckList\",\"relationName\":\"CheckListToUser\"},{\"name\":\"templates\",\"kind\":\"object\",\"type\":\"CheckListTemplate\",\"relationName\":\"CheckListTemplateToUser\"}],\"dbName\":null},\"Article\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"slug\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"content\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Strategy\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"data\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Indicator\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"groupName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unit\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"frequency\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"hidden\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"points\",\"kind\":\"object\",\"type\":\"IndicatorPoint\",\"relationName\":\"IndicatorToIndicatorPoint\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"IndicatorPoint\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"indicatorId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"indicator\",\"kind\":\"object\",\"type\":\"Indicator\",\"relationName\":\"IndicatorToIndicatorPoint\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"value\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"News\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"summary\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"content\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"publishedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"impactRank\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Alert\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"indicatorName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"valueA\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"valueB\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"sourceA\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sourceB\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"diff\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"diffRatio\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ServerNode\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"uuid\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"cpuName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"os\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"region\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"memTotal\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"diskTotal\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"cpuCores\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cpuUsage\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"ramUsed\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"swapUsed\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"load1\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"load5\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"load15\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"diskUsed\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netIn\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netOut\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"uptime\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"process\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"connections\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"recordedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ServerNodeHistory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"uuid\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"cpu\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"ram\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"load\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"disk\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netIn\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netOut\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"process\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"connections\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ServiceCheck\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"latencyMs\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastCheckAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Econ_SowInventory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"month\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"inventory\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ScraperCache\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"scraperName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastDataHash\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastUpdateAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"metadata\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"OilPriceHistory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"province\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fuel\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"price\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MihomeAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"key\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastError\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MihomeHome\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"homeId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"devices\",\"kind\":\"object\",\"type\":\"MihomeDevice\",\"relationName\":\"MihomeDeviceToMihomeHome\"}],\"dbName\":null},\"MihomeDevice\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"did\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"homeId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"home\",\"kind\":\"object\",\"type\":\"MihomeHome\",\"relationName\":\"MihomeDeviceToMihomeHome\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"alias\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"tempSiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"tempPiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"humSiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"humPiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"battSiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"battPiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"battery\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"batteryAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"lastSyncAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"samples\",\"kind\":\"object\",\"type\":\"MihomeEnvSample\",\"relationName\":\"MihomeDeviceToMihomeEnvSample\"},{\"name\":\"hours\",\"kind\":\"object\",\"type\":\"MihomeEnvHour\",\"relationName\":\"MihomeDeviceToMihomeEnvHour\"}],\"dbName\":null},\"MihomeEnvSample\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"deviceId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"device\",\"kind\":\"object\",\"type\":\"MihomeDevice\",\"relationName\":\"MihomeDeviceToMihomeEnvSample\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"temperature\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidity\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"temperatureAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"temperatureMin\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"temperatureMax\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityMin\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityMax\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"origin\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sampledAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"raw\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MihomeEnvHour\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"deviceId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"device\",\"kind\":\"object\",\"type\":\"MihomeDevice\",\"relationName\":\"MihomeDeviceToMihomeEnvHour\"},{\"name\":\"hour\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"temperatureAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"raw\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Habit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"HabitToUser\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"target\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"color\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"icon\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"archived\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"records\",\"kind\":\"object\",\"type\":\"CheckIn\",\"relationName\":\"CheckInToHabit\"}],\"dbName\":null},\"CheckIn\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"habitId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"habit\",\"kind\":\"object\",\"type\":\"Habit\",\"relationName\":\"CheckInToHabit\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CheckInToUser\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"seq\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"CheckList\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CheckListToUser\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"scene\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"archived\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"items\",\"kind\":\"object\",\"type\":\"CheckListItem\",\"relationName\":\"CheckListToCheckListItem\"}],\"dbName\":null},\"CheckListItem\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"listId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"list\",\"kind\":\"object\",\"type\":\"CheckList\",\"relationName\":\"CheckListToCheckListItem\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"done\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"doneAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"CheckListTemplate\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CheckListTemplateToUser\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"scene\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"items\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"builtin\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}") +config.runtimeDataModel = JSON.parse("{\"models\":{\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"habits\",\"kind\":\"object\",\"type\":\"Habit\",\"relationName\":\"HabitToUser\"},{\"name\":\"checkIns\",\"kind\":\"object\",\"type\":\"CheckIn\",\"relationName\":\"CheckInToUser\"},{\"name\":\"checkLists\",\"kind\":\"object\",\"type\":\"CheckList\",\"relationName\":\"CheckListToUser\"},{\"name\":\"templates\",\"kind\":\"object\",\"type\":\"CheckListTemplate\",\"relationName\":\"CheckListTemplateToUser\"},{\"name\":\"ownedProjects\",\"kind\":\"object\",\"type\":\"Project\",\"relationName\":\"ProjectOwner\"},{\"name\":\"projectMembers\",\"kind\":\"object\",\"type\":\"ProjectMember\",\"relationName\":\"ProjectMemberToUser\"},{\"name\":\"assignedTasks\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"TaskAssignee\"},{\"name\":\"createdTasks\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"TaskCreator\"},{\"name\":\"taskMembers\",\"kind\":\"object\",\"type\":\"TaskMember\",\"relationName\":\"TaskMemberToUser\"}],\"dbName\":null},\"Article\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"slug\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"content\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Strategy\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"data\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Indicator\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"groupName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unit\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"frequency\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"hidden\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"points\",\"kind\":\"object\",\"type\":\"IndicatorPoint\",\"relationName\":\"IndicatorToIndicatorPoint\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"IndicatorPoint\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"indicatorId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"indicator\",\"kind\":\"object\",\"type\":\"Indicator\",\"relationName\":\"IndicatorToIndicatorPoint\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"value\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"News\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"summary\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"content\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"publishedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"impactRank\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Alert\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"indicatorName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"valueA\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"valueB\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"sourceA\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sourceB\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"diff\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"diffRatio\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ServerNode\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"uuid\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"cpuName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"os\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"region\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"memTotal\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"diskTotal\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"cpuCores\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cpuUsage\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"ramUsed\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"swapUsed\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"load1\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"load5\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"load15\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"diskUsed\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netIn\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netOut\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"uptime\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"process\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"connections\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"recordedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ServerNodeHistory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"uuid\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"cpu\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"ram\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"load\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"disk\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netIn\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"netOut\",\"kind\":\"scalar\",\"type\":\"BigInt\"},{\"name\":\"process\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"connections\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ServiceCheck\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"latencyMs\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastCheckAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Econ_SowInventory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"month\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"inventory\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"ScraperCache\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"scraperName\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastDataHash\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastUpdateAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"metadata\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"OilPriceHistory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"province\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fuel\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"price\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MihomeAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"key\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"lastError\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MihomeHome\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"homeId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"devices\",\"kind\":\"object\",\"type\":\"MihomeDevice\",\"relationName\":\"MihomeDeviceToMihomeHome\"}],\"dbName\":null},\"MihomeDevice\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"did\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"homeId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"home\",\"kind\":\"object\",\"type\":\"MihomeHome\",\"relationName\":\"MihomeDeviceToMihomeHome\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"alias\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"tempSiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"tempPiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"humSiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"humPiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"battSiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"battPiid\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"battery\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"batteryAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"enabled\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"lastSyncAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"samples\",\"kind\":\"object\",\"type\":\"MihomeEnvSample\",\"relationName\":\"MihomeDeviceToMihomeEnvSample\"},{\"name\":\"hours\",\"kind\":\"object\",\"type\":\"MihomeEnvHour\",\"relationName\":\"MihomeDeviceToMihomeEnvHour\"}],\"dbName\":null},\"MihomeEnvSample\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"deviceId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"device\",\"kind\":\"object\",\"type\":\"MihomeDevice\",\"relationName\":\"MihomeDeviceToMihomeEnvSample\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"temperature\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidity\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"temperatureAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"temperatureMin\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"temperatureMax\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityMin\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityMax\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"origin\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sampledAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"raw\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MihomeEnvHour\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"deviceId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"device\",\"kind\":\"object\",\"type\":\"MihomeDevice\",\"relationName\":\"MihomeDeviceToMihomeEnvHour\"},{\"name\":\"hour\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"temperatureAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"humidityAvg\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"raw\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Habit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"HabitToUser\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"period\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"target\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"color\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"icon\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"archived\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"records\",\"kind\":\"object\",\"type\":\"CheckIn\",\"relationName\":\"CheckInToHabit\"}],\"dbName\":null},\"CheckIn\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"habitId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"habit\",\"kind\":\"object\",\"type\":\"Habit\",\"relationName\":\"CheckInToHabit\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CheckInToUser\"},{\"name\":\"date\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"seq\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"source\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"CheckList\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CheckListToUser\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"scene\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"archived\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"items\",\"kind\":\"object\",\"type\":\"CheckListItem\",\"relationName\":\"CheckListToCheckListItem\"}],\"dbName\":null},\"CheckListItem\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"listId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"list\",\"kind\":\"object\",\"type\":\"CheckList\",\"relationName\":\"CheckListToCheckListItem\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"note\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"done\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"doneAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"CheckListTemplate\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"CheckListTemplateToUser\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"scene\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"items\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"builtin\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Project\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"ownerId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"owner\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"ProjectOwner\"},{\"name\":\"isPersonal\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"archived\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"taskKinds\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"icon\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"autoArchive\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"members\",\"kind\":\"object\",\"type\":\"ProjectMember\",\"relationName\":\"ProjectToProjectMember\"},{\"name\":\"columns\",\"kind\":\"object\",\"type\":\"BoardColumn\",\"relationName\":\"BoardColumnToProject\"},{\"name\":\"tasks\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"ProjectToTask\"}],\"dbName\":null},\"ProjectMember\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"projectId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"project\",\"kind\":\"object\",\"type\":\"Project\",\"relationName\":\"ProjectToProjectMember\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"ProjectMemberToUser\"},{\"name\":\"permission\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"BoardColumn\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"projectId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"project\",\"kind\":\"object\",\"type\":\"Project\",\"relationName\":\"BoardColumnToProject\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"boundStatus\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"retention\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tasks\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"BoardColumnToTask\"}],\"dbName\":null},\"Task\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"projectId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"project\",\"kind\":\"object\",\"type\":\"Project\",\"relationName\":\"ProjectToTask\"},{\"name\":\"columnId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"column\",\"kind\":\"object\",\"type\":\"BoardColumn\",\"relationName\":\"BoardColumnToTask\"},{\"name\":\"parentId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"parent\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"Subtask\"},{\"name\":\"children\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"Subtask\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"kind\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"markDate\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"doneAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"assigneeId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"assignee\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"TaskAssignee\"},{\"name\":\"creatorId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"creator\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"TaskCreator\"},{\"name\":\"extras\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"archived\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"archivedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"archiveSource\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"members\",\"kind\":\"object\",\"type\":\"TaskMember\",\"relationName\":\"TaskToTaskMember\"},{\"name\":\"tags\",\"kind\":\"object\",\"type\":\"TaskTag\",\"relationName\":\"TaskToTaskTag\"}],\"dbName\":null},\"TaskMember\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"taskId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"task\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"TaskToTaskMember\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"TaskMemberToUser\"}],\"dbName\":null},\"TaskTag\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"taskId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"task\",\"kind\":\"object\",\"type\":\"Task\",\"relationName\":\"TaskToTaskTag\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}") config.parameterizationSchema = { - strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"user\",\"habit\",\"records\",\"_count\",\"habits\",\"checkIns\",\"list\",\"items\",\"checkLists\",\"templates\",\"User.findUnique\",\"User.findUniqueOrThrow\",\"User.findFirst\",\"User.findFirstOrThrow\",\"User.findMany\",\"data\",\"User.createOne\",\"User.createMany\",\"User.updateOne\",\"User.updateMany\",\"create\",\"update\",\"User.upsertOne\",\"User.deleteOne\",\"User.deleteMany\",\"having\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"User.groupBy\",\"User.aggregate\",\"Article.findUnique\",\"Article.findUniqueOrThrow\",\"Article.findFirst\",\"Article.findFirstOrThrow\",\"Article.findMany\",\"Article.createOne\",\"Article.createMany\",\"Article.updateOne\",\"Article.updateMany\",\"Article.upsertOne\",\"Article.deleteOne\",\"Article.deleteMany\",\"Article.groupBy\",\"Article.aggregate\",\"Strategy.findUnique\",\"Strategy.findUniqueOrThrow\",\"Strategy.findFirst\",\"Strategy.findFirstOrThrow\",\"Strategy.findMany\",\"Strategy.createOne\",\"Strategy.createMany\",\"Strategy.updateOne\",\"Strategy.updateMany\",\"Strategy.upsertOne\",\"Strategy.deleteOne\",\"Strategy.deleteMany\",\"Strategy.groupBy\",\"Strategy.aggregate\",\"indicator\",\"points\",\"Indicator.findUnique\",\"Indicator.findUniqueOrThrow\",\"Indicator.findFirst\",\"Indicator.findFirstOrThrow\",\"Indicator.findMany\",\"Indicator.createOne\",\"Indicator.createMany\",\"Indicator.updateOne\",\"Indicator.updateMany\",\"Indicator.upsertOne\",\"Indicator.deleteOne\",\"Indicator.deleteMany\",\"Indicator.groupBy\",\"Indicator.aggregate\",\"IndicatorPoint.findUnique\",\"IndicatorPoint.findUniqueOrThrow\",\"IndicatorPoint.findFirst\",\"IndicatorPoint.findFirstOrThrow\",\"IndicatorPoint.findMany\",\"IndicatorPoint.createOne\",\"IndicatorPoint.createMany\",\"IndicatorPoint.updateOne\",\"IndicatorPoint.updateMany\",\"IndicatorPoint.upsertOne\",\"IndicatorPoint.deleteOne\",\"IndicatorPoint.deleteMany\",\"IndicatorPoint.groupBy\",\"IndicatorPoint.aggregate\",\"News.findUnique\",\"News.findUniqueOrThrow\",\"News.findFirst\",\"News.findFirstOrThrow\",\"News.findMany\",\"News.createOne\",\"News.createMany\",\"News.updateOne\",\"News.updateMany\",\"News.upsertOne\",\"News.deleteOne\",\"News.deleteMany\",\"News.groupBy\",\"News.aggregate\",\"Alert.findUnique\",\"Alert.findUniqueOrThrow\",\"Alert.findFirst\",\"Alert.findFirstOrThrow\",\"Alert.findMany\",\"Alert.createOne\",\"Alert.createMany\",\"Alert.updateOne\",\"Alert.updateMany\",\"Alert.upsertOne\",\"Alert.deleteOne\",\"Alert.deleteMany\",\"Alert.groupBy\",\"Alert.aggregate\",\"ServerNode.findUnique\",\"ServerNode.findUniqueOrThrow\",\"ServerNode.findFirst\",\"ServerNode.findFirstOrThrow\",\"ServerNode.findMany\",\"ServerNode.createOne\",\"ServerNode.createMany\",\"ServerNode.updateOne\",\"ServerNode.updateMany\",\"ServerNode.upsertOne\",\"ServerNode.deleteOne\",\"ServerNode.deleteMany\",\"ServerNode.groupBy\",\"ServerNode.aggregate\",\"ServerNodeHistory.findUnique\",\"ServerNodeHistory.findUniqueOrThrow\",\"ServerNodeHistory.findFirst\",\"ServerNodeHistory.findFirstOrThrow\",\"ServerNodeHistory.findMany\",\"ServerNodeHistory.createOne\",\"ServerNodeHistory.createMany\",\"ServerNodeHistory.updateOne\",\"ServerNodeHistory.updateMany\",\"ServerNodeHistory.upsertOne\",\"ServerNodeHistory.deleteOne\",\"ServerNodeHistory.deleteMany\",\"ServerNodeHistory.groupBy\",\"ServerNodeHistory.aggregate\",\"ServiceCheck.findUnique\",\"ServiceCheck.findUniqueOrThrow\",\"ServiceCheck.findFirst\",\"ServiceCheck.findFirstOrThrow\",\"ServiceCheck.findMany\",\"ServiceCheck.createOne\",\"ServiceCheck.createMany\",\"ServiceCheck.updateOne\",\"ServiceCheck.updateMany\",\"ServiceCheck.upsertOne\",\"ServiceCheck.deleteOne\",\"ServiceCheck.deleteMany\",\"ServiceCheck.groupBy\",\"ServiceCheck.aggregate\",\"Econ_SowInventory.findUnique\",\"Econ_SowInventory.findUniqueOrThrow\",\"Econ_SowInventory.findFirst\",\"Econ_SowInventory.findFirstOrThrow\",\"Econ_SowInventory.findMany\",\"Econ_SowInventory.createOne\",\"Econ_SowInventory.createMany\",\"Econ_SowInventory.updateOne\",\"Econ_SowInventory.updateMany\",\"Econ_SowInventory.upsertOne\",\"Econ_SowInventory.deleteOne\",\"Econ_SowInventory.deleteMany\",\"Econ_SowInventory.groupBy\",\"Econ_SowInventory.aggregate\",\"ScraperCache.findUnique\",\"ScraperCache.findUniqueOrThrow\",\"ScraperCache.findFirst\",\"ScraperCache.findFirstOrThrow\",\"ScraperCache.findMany\",\"ScraperCache.createOne\",\"ScraperCache.createMany\",\"ScraperCache.updateOne\",\"ScraperCache.updateMany\",\"ScraperCache.upsertOne\",\"ScraperCache.deleteOne\",\"ScraperCache.deleteMany\",\"ScraperCache.groupBy\",\"ScraperCache.aggregate\",\"OilPriceHistory.findUnique\",\"OilPriceHistory.findUniqueOrThrow\",\"OilPriceHistory.findFirst\",\"OilPriceHistory.findFirstOrThrow\",\"OilPriceHistory.findMany\",\"OilPriceHistory.createOne\",\"OilPriceHistory.createMany\",\"OilPriceHistory.updateOne\",\"OilPriceHistory.updateMany\",\"OilPriceHistory.upsertOne\",\"OilPriceHistory.deleteOne\",\"OilPriceHistory.deleteMany\",\"OilPriceHistory.groupBy\",\"OilPriceHistory.aggregate\",\"MihomeAccount.findUnique\",\"MihomeAccount.findUniqueOrThrow\",\"MihomeAccount.findFirst\",\"MihomeAccount.findFirstOrThrow\",\"MihomeAccount.findMany\",\"MihomeAccount.createOne\",\"MihomeAccount.createMany\",\"MihomeAccount.updateOne\",\"MihomeAccount.updateMany\",\"MihomeAccount.upsertOne\",\"MihomeAccount.deleteOne\",\"MihomeAccount.deleteMany\",\"MihomeAccount.groupBy\",\"MihomeAccount.aggregate\",\"home\",\"device\",\"samples\",\"hours\",\"devices\",\"MihomeHome.findUnique\",\"MihomeHome.findUniqueOrThrow\",\"MihomeHome.findFirst\",\"MihomeHome.findFirstOrThrow\",\"MihomeHome.findMany\",\"MihomeHome.createOne\",\"MihomeHome.createMany\",\"MihomeHome.updateOne\",\"MihomeHome.updateMany\",\"MihomeHome.upsertOne\",\"MihomeHome.deleteOne\",\"MihomeHome.deleteMany\",\"MihomeHome.groupBy\",\"MihomeHome.aggregate\",\"MihomeDevice.findUnique\",\"MihomeDevice.findUniqueOrThrow\",\"MihomeDevice.findFirst\",\"MihomeDevice.findFirstOrThrow\",\"MihomeDevice.findMany\",\"MihomeDevice.createOne\",\"MihomeDevice.createMany\",\"MihomeDevice.updateOne\",\"MihomeDevice.updateMany\",\"MihomeDevice.upsertOne\",\"MihomeDevice.deleteOne\",\"MihomeDevice.deleteMany\",\"MihomeDevice.groupBy\",\"MihomeDevice.aggregate\",\"MihomeEnvSample.findUnique\",\"MihomeEnvSample.findUniqueOrThrow\",\"MihomeEnvSample.findFirst\",\"MihomeEnvSample.findFirstOrThrow\",\"MihomeEnvSample.findMany\",\"MihomeEnvSample.createOne\",\"MihomeEnvSample.createMany\",\"MihomeEnvSample.updateOne\",\"MihomeEnvSample.updateMany\",\"MihomeEnvSample.upsertOne\",\"MihomeEnvSample.deleteOne\",\"MihomeEnvSample.deleteMany\",\"MihomeEnvSample.groupBy\",\"MihomeEnvSample.aggregate\",\"MihomeEnvHour.findUnique\",\"MihomeEnvHour.findUniqueOrThrow\",\"MihomeEnvHour.findFirst\",\"MihomeEnvHour.findFirstOrThrow\",\"MihomeEnvHour.findMany\",\"MihomeEnvHour.createOne\",\"MihomeEnvHour.createMany\",\"MihomeEnvHour.updateOne\",\"MihomeEnvHour.updateMany\",\"MihomeEnvHour.upsertOne\",\"MihomeEnvHour.deleteOne\",\"MihomeEnvHour.deleteMany\",\"MihomeEnvHour.groupBy\",\"MihomeEnvHour.aggregate\",\"Habit.findUnique\",\"Habit.findUniqueOrThrow\",\"Habit.findFirst\",\"Habit.findFirstOrThrow\",\"Habit.findMany\",\"Habit.createOne\",\"Habit.createMany\",\"Habit.updateOne\",\"Habit.updateMany\",\"Habit.upsertOne\",\"Habit.deleteOne\",\"Habit.deleteMany\",\"Habit.groupBy\",\"Habit.aggregate\",\"CheckIn.findUnique\",\"CheckIn.findUniqueOrThrow\",\"CheckIn.findFirst\",\"CheckIn.findFirstOrThrow\",\"CheckIn.findMany\",\"CheckIn.createOne\",\"CheckIn.createMany\",\"CheckIn.updateOne\",\"CheckIn.updateMany\",\"CheckIn.upsertOne\",\"CheckIn.deleteOne\",\"CheckIn.deleteMany\",\"CheckIn.groupBy\",\"CheckIn.aggregate\",\"CheckList.findUnique\",\"CheckList.findUniqueOrThrow\",\"CheckList.findFirst\",\"CheckList.findFirstOrThrow\",\"CheckList.findMany\",\"CheckList.createOne\",\"CheckList.createMany\",\"CheckList.updateOne\",\"CheckList.updateMany\",\"CheckList.upsertOne\",\"CheckList.deleteOne\",\"CheckList.deleteMany\",\"CheckList.groupBy\",\"CheckList.aggregate\",\"CheckListItem.findUnique\",\"CheckListItem.findUniqueOrThrow\",\"CheckListItem.findFirst\",\"CheckListItem.findFirstOrThrow\",\"CheckListItem.findMany\",\"CheckListItem.createOne\",\"CheckListItem.createMany\",\"CheckListItem.updateOne\",\"CheckListItem.updateMany\",\"CheckListItem.upsertOne\",\"CheckListItem.deleteOne\",\"CheckListItem.deleteMany\",\"CheckListItem.groupBy\",\"CheckListItem.aggregate\",\"CheckListTemplate.findUnique\",\"CheckListTemplate.findUniqueOrThrow\",\"CheckListTemplate.findFirst\",\"CheckListTemplate.findFirstOrThrow\",\"CheckListTemplate.findMany\",\"CheckListTemplate.createOne\",\"CheckListTemplate.createMany\",\"CheckListTemplate.updateOne\",\"CheckListTemplate.updateMany\",\"CheckListTemplate.upsertOne\",\"CheckListTemplate.deleteOne\",\"CheckListTemplate.deleteMany\",\"CheckListTemplate.groupBy\",\"CheckListTemplate.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"userId\",\"name\",\"scene\",\"builtin\",\"createdAt\",\"updatedAt\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"string_contains\",\"string_starts_with\",\"string_ends_with\",\"array_starts_with\",\"array_ends_with\",\"array_contains\",\"contains\",\"startsWith\",\"endsWith\",\"search\",\"listId\",\"title\",\"note\",\"done\",\"doneAt\",\"sortOrder\",\"archived\",\"habitId\",\"date\",\"seq\",\"source\",\"period\",\"target\",\"color\",\"icon\",\"deviceId\",\"hour\",\"temperatureAvg\",\"humidityAvg\",\"raw\",\"temperature\",\"humidity\",\"temperatureMin\",\"temperatureMax\",\"humidityMin\",\"humidityMax\",\"origin\",\"sampledAt\",\"did\",\"homeId\",\"model\",\"alias\",\"tempSiid\",\"tempPiid\",\"humSiid\",\"humPiid\",\"battSiid\",\"battPiid\",\"battery\",\"batteryAt\",\"enabled\",\"lastSyncAt\",\"every\",\"some\",\"none\",\"deviceId_hour\",\"deviceId_date\",\"key\",\"status\",\"lastError\",\"province\",\"fuel\",\"price\",\"date_province_fuel\",\"scraperName\",\"lastDataHash\",\"lastUpdateAt\",\"metadata\",\"month\",\"inventory\",\"url\",\"latencyMs\",\"message\",\"lastCheckAt\",\"uuid\",\"cpu\",\"ram\",\"load\",\"disk\",\"netIn\",\"netOut\",\"process\",\"connections\",\"uuid_period\",\"cpuName\",\"os\",\"region\",\"memTotal\",\"diskTotal\",\"cpuCores\",\"cpuUsage\",\"ramUsed\",\"swapUsed\",\"load1\",\"load5\",\"load15\",\"diskUsed\",\"uptime\",\"recordedAt\",\"indicatorName\",\"valueA\",\"valueB\",\"sourceA\",\"sourceB\",\"diff\",\"diffRatio\",\"summary\",\"content\",\"publishedAt\",\"impactRank\",\"title_publishedAt\",\"indicatorId\",\"value\",\"groupName\",\"unit\",\"frequency\",\"hidden\",\"indicatorId_period\",\"description\",\"slug\",\"email\",\"password\",\"habitId_date_seq\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"createMany\",\"set\",\"disconnect\",\"delete\",\"connect\",\"updateMany\",\"deleteMany\",\"_relevance\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"), - graph: "lQi_AcICDQcAAIsFACAIAACMBQAgCwAAjQUAIAwAAI4FACDeAgAAigUAMN8CAAAaABDgAgAAigUAMOECAgAAAAHjAgEAzwQAIeYCQADQBAAh5wJAANAEACHoAwEAAAAB6QMBAM8EACEBAAAAAQAgEQMAAJQFACAFAACMBQAg3gIAAJkFADDfAgAAAwAQ4AIAAJkFADDhAgIAzgQAIeICAgDOBAAh4wIBAM8EACHmAkAA0AQAIecCQADQBAAh_AIBAM8EACH_AgIAzgQAIYADIADdBAAhhQMBAM8EACGGAwIAzgQAIYcDAQDPBAAhiAMBAM8EACEDAwAA0QcAIAUAAM0HACD2AwAA2QcAIBEDAACUBQAgBQAAjAUAIN4CAACZBQAw3wIAAAMAEOACAACZBQAw4QICAAAAAeICAgDOBAAh4wIBAM8EACHmAkAA0AQAIecCQADQBAAh_AIBAM8EACH_AgIAzgQAIYADIADdBAAhhQMBAM8EACGGAwIAzgQAIYcDAQDPBAAhiAMBAM8EACEDAAAAAwAgAQAABAAwAgAABQAgDQMAAJQFACAEAACYBQAg3gIAAJcFADDfAgAABwAQ4AIAAJcFADDhAgIAzgQAIeICAgDOBAAh5gJAANAEACH8AgEAzwQAIYEDAgDOBAAhggMBAM8EACGDAwIAzgQAIYQDAQDPBAAhAwMAANEHACAEAADXBwAg9gMAANgHACAOAwAAlAUAIAQAAJgFACDeAgAAlwUAMN8CAAAHABDgAgAAlwUAMOECAgAAAAHiAgIAzgQAIeYCQADQBAAh_AIBAM8EACGBAwIAzgQAIYIDAQDPBAAhgwMCAM4EACGEAwEAzwQAIeoDAACWBQAgAwAAAAcAIAEAAAgAMAIAAAkAIAEAAAAHACADAAAABwAgAQAACAAwAgAACQAgDQMAAJQFACAKAACVBQAg3gIAAJMFADDfAgAADQAQ4AIAAJMFADDhAgIAzgQAIeICAgDOBAAh5AIBAM8EACHmAkAA0AQAIecCQADQBAAh-wIBAM8EACH8AgEAzwQAIYADIADdBAAhAwMAANEHACAKAADVBwAg9gMAANYHACANAwAAlAUAIAoAAJUFACDeAgAAkwUAMN8CAAANABDgAgAAkwUAMOECAgAAAAHiAgIAzgQAIeQCAQDPBAAh5gJAANAEACHnAkAA0AQAIfsCAQDPBAAh_AIBAM8EACGAAyAA3QQAIQMAAAANACABAAAOADACAAAPACANCQAAkgUAIN4CAACRBQAw3wIAABEAEOACAACRBQAw4QICAM4EACHmAkAA0AQAIecCQADQBAAh-gICAM4EACH7AgEAzwQAIfwCAQDPBAAh_QIgAN0EACH-AkAA2QQAIf8CAgDOBAAhAwkAANMHACD-AgAAmgUAIPYDAADUBwAgDQkAAJIFACDeAgAAkQUAMN8CAAARABDgAgAAkQUAMOECAgAAAAHmAkAA0AQAIecCQADQBAAh-gICAM4EACH7AgEAzwQAIfwCAQDPBAAh_QIgAN0EACH-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_wQAMN8CAABqABDgAgAA_wQAMOECAgAAAAHjAgEAAAAB5gJAANAEACHnAkAA0AQAIfsCAQDPBAAhhAMBAM8EACHhAwEAzwQAIeIDAQDPBAAh4wMBAM8EACHkAyAA3QQAIQEAAABiACAKPwAAgwUAIN4CAACCBQAw3wIAAGQAEOACAACCBQAw4QICAM4EACHmAkAA0AQAIecCQADQBAAhhQMBAM8EACHfAwIAzgQAIeADCADnBAAhAj8AAIQHACD2AwAAhQcAIAs_AACDBQAg3gIAAIIFADDfAgAAZAAQ4AIAAIIFADDhAgIAAAAB5gJAANAEACHnAkAA0AQAIYUDAQDPBAAh3wMCAM4EACHgAwgA5wQAIeUDAACBBQAgAwAAAGQAIAEAAGUAMAIAAGYAIAEAAABkACABAAAAYgAgDkAAAIAFACDeAgAA_wQAMN8CAABqABDgAgAA_wQAMOECAgDOBAAh4wIBAM8EACHmAkAA0AQAIecCQADQBAAh-wIBAM8EACGEAwEAzwQAIeEDAQDPBAAh4gMBAM8EACHjAwEAzwQAIeQDIADdBAAhAkAAAIIHACD2AwAAgwcAIAMAAABqACABAABrADACAABiACADAAAAagAgAQAAawAwAgAAYgAgAwAAAGoAIAEAAGsAMAIAAGIAIAtAAACBBwAg4QICAAAAAeMCAQAAAAHmAkAAAAAB5wJAAAAAAfsCAQAAAAGEAwEAAAAB4QMBAAAAAeIDAQAAAAHjAwEAAAAB5AMgAAAAAQESAABvACAK4QICAAAAAeMCAQAAAAHmAkAAAAAB5wJAAAAAAfsCAQAAAAGEAwEAAAAB4QMBAAAAAeIDAQAAAAHjAwEAAAAB5AMgAAAAAQESAABxADALQAAA9AYAIOECAgCjBQAh4wIBAKAFACHmAkAAogUAIecCQACiBQAh-wIBAKAFACGEAwEAoAUAIeEDAQCgBQAh4gMBAKAFACHjAwEAoAUAIeQDIAChBQAhAgAAAGIAIBIAAHMAIArhAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIfsCAQCgBQAhhAMBAKAFACHhAwEAoAUAIeIDAQCgBQAh4wMBAKAFACHkAyAAoQUAIQIAAABqACASAAB1ACADAAAAYgAgFwAAbwAgGAAAcwAgAQAAAGIAIAEAAABqACAFBgAA7wYAIB0AAPAGACAeAADzBgAgHwAA8gYAICAAAPEGACAN3gIAAP4EADDfAgAAewAQ4AIAAP4EADDhAgIAqAQAIeMCAQCqBAAh5gJAAK0EACHnAkAArQQAIfsCAQCqBAAhhAMBAKoEACHhAwEAqgQAIeIDAQCqBAAh4wMBAKoEACHkAyAArAQAIQMAAABqACABAAB6ADAcAAB7ACADAAAAagAgAQAAawAwAgAAYgAgAQAAAGYAIAEAAABmACADAAAAZAAgAQAAZQAwAgAAZgAgAwAAAGQAIAEAAGUAMAIAAGYAIAMAAABkACABAABlADACAABmACAHPwAA7gYAIOECAgAAAAHmAkAAAAAB5wJAAAAAAYUDAQAAAAHfAwIAAAAB4AMIAAAAAQESAACDAQAgBuECAgAAAAHmAkAAAAAB5wJAAAAAAYUDAQAAAAHfAwIAAAAB4AMIAAAAAQESAACFAQAwBz8AAO0GACDhAgIAowUAIeYCQACiBQAh5wJAAKIFACGFAwEAoAUAId8DAgCjBQAh4AMIALsGACECAAAAZgAgEgAAhwEAIAbhAgIAowUAIeYCQACiBQAh5wJAAKIFACGFAwEAoAUAId8DAgCjBQAh4AMIALsGACECAAAAZAAgEgAAiQEAIAMAAABmACAXAACDAQAgGAAAhwEAIAEAAABmACABAAAAZAAgBQYAAOgGACAdAADpBgAgHgAA7AYAIB8AAOsGACAgAADqBgAgCd4CAAD9BAAw3wIAAI8BABDgAgAA_QQAMOECAgCoBAAh5gJAAK0EACHnAkAArQQAIYUDAQCqBAAh3wMCAKgEACHgAwgA5AQAIQMAAABkACABAACOAQAwHAAAjwEAIAMAAABkACABAABlADACAABmACAN3gIAAPsEADDfAgAAlQEAEOACAAD7BAAw4QICAAAAAeYCQADQBAAh-wIBAM8EACGEAwEAzwQAIbYDAQDPBAAh2gMBAM8EACHbAwEA2wQAIdwDQADQBAAh3QMCAM4EACHeAwAA_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_AwQA9AQAIcADBAD0BAAhwQMCAM4EACHCAwIAzgQAIcQDAQDPBAAhxQMBAM8EACHGAwEAzwQAIccDBAD0BAAhyAMEAPQEACHJAwIAzgQAIcoDCADnBAAhywMEAPQEACHMAwQA9AQAIc0DCADnBAAhzgMIAOcEACHPAwgA5wQAIdADBAD0BAAh0QMEAPQEACHSA0AA0AQAIQH2AwAA2wYAIAMAAADDAQAgAQAAxAEAMAIAAMABACADAAAAwwEAIAEAAMQBADACAADAAQAgAwAAAMMBACABAADEAQAwAgAAwAEAIBnhAgIAAAAB4wIBAAAAAeYCQAAAAAHnAkAAAAABqgMBAAAAAboDAQAAAAG_AwQAAAABwAMEAAAAAcEDAgAAAAHCAwIAAAABxAMBAAAAAcUDAQAAAAHGAwEAAAABxwMEAAAAAcgDBAAAAAHJAwIAAAABygMIAAAAAcsDBAAAAAHMAwQAAAABzQMIAAAAAc4DCAAAAAHPAwgAAAAB0AMEAAAAAdEDBAAAAAHSA0AAAAABARIAAMgBACAZ4QICAAAAAeMCAQAAAAHmAkAAAAAB5wJAAAAAAaoDAQAAAAG6AwEAAAABvwMEAAAAAcADBAAAAAHBAwIAAAABwgMCAAAAAcQDAQAAAAHFAwEAAAABxgMBAAAAAccDBAAAAAHIAwQAAAAByQMCAAAAAcoDCAAAAAHLAwQAAAABzAMEAAAAAc0DCAAAAAHOAwgAAAABzwMIAAAAAdADBAAAAAHRAwQAAAAB0gNAAAAAAQESAADKAQAwGeECAgCjBQAh4wIBAKAFACHmAkAAogUAIecCQACiBQAhqgMBAKAFACG6AwEAoAUAIb8DBADUBgAhwAMEANQGACHBAwIAowUAIcIDAgCjBQAhxAMBAKAFACHFAwEAoAUAIcYDAQCgBQAhxwMEANQGACHIAwQA1AYAIckDAgCjBQAhygMIALsGACHLAwQA1AYAIcwDBADUBgAhzQMIALsGACHOAwgAuwYAIc8DCAC7BgAh0AMEANQGACHRAwQA1AYAIdIDQACiBQAhAgAAAMABACASAADMAQAgGeECAgCjBQAh4wIBAKAFACHmAkAAogUAIecCQACiBQAhqgMBAKAFACG6AwEAoAUAIb8DBADUBgAhwAMEANQGACHBAwIAowUAIcIDAgCjBQAhxAMBAKAFACHFAwEAoAUAIcYDAQCgBQAhxwMEANQGACHIAwQA1AYAIckDAgCjBQAhygMIALsGACHLAwQA1AYAIcwDBADUBgAhzQMIALsGACHOAwgAuwYAIc8DCAC7BgAh0AMEANQGACHRAwQA1AYAIdIDQACiBQAhAgAAAMMBACASAADOAQAgAwAAAMABACAXAADIAQAgGAAAzAEAIAEAAADAAQAgAQAAAMMBACAFBgAA1gYAIB0AANcGACAeAADaBgAgHwAA2QYAICAAANgGACAc3gIAAPYEADDfAgAA1AEAEOACAAD2BAAw4QICAKgEACHjAgEAqgQAIeYCQACtBAAh5wJAAK0EACGqAwEAqgQAIboDAQCqBAAhvwMEAPAEACHAAwQA8AQAIcEDAgCoBAAhwgMCAKgEACHEAwEAqgQAIcUDAQCqBAAhxgMBAKoEACHHAwQA8AQAIcgDBADwBAAhyQMCAKgEACHKAwgA5AQAIcsDBADwBAAhzAMEAPAEACHNAwgA5AQAIc4DCADkBAAhzwMIAOQEACHQAwQA8AQAIdEDBADwBAAh0gNAAK0EACEDAAAAwwEAIAEAANMBADAcAADUAQAgAwAAAMMBACABAADEAQAwAgAAwAEAIBDeAgAA8wQAMN8CAADaAQAQ4AIAAPMEADDhAgIAAAAB5gJAANAEACGFA0AA0AQAIboDAQDPBAAhuwMIAOcEACG8AwQA9AQAIb0DCADnBAAhvgMEAPQEACG_AwQA9AQAIcADBAD0BAAhwQMCAM4EACHCAwIAzgQAIcMDAAD1BAAgAQAAANcBACABAAAA1wEAIA_eAgAA8wQAMN8CAADaAQAQ4AIAAPMEADDhAgIAzgQAIeYCQADQBAAhhQNAANAEACG6AwEAzwQAIbsDCADnBAAhvAMEAPQEACG9AwgA5wQAIb4DBAD0BAAhvwMEAPQEACHAAwQA9AQAIcEDAgDOBAAhwgMCAM4EACEB9gMAANUGACADAAAA2gEAIAEAANsBADACAADXAQAgAwAAANoBACABAADbAQAwAgAA1wEAIAMAAADaAQAgAQAA2wEAMAIAANcBACAM4QICAAAAAeYCQAAAAAGFA0AAAAABugMBAAAAAbsDCAAAAAG8AwQAAAABvQMIAAAAAb4DBAAAAAG_AwQAAAABwAMEAAAAAcEDAgAAAAHCAwIAAAABARIAAN8BACAM4QICAAAAAeYCQAAAAAGFA0AAAAABugMBAAAAAbsDCAAAAAG8AwQAAAABvQMIAAAAAb4DBAAAAAG_AwQAAAABwAMEAAAAAcEDAgAAAAHCAwIAAAABARIAAOEBADAM4QICAKMFACHmAkAAogUAIYUDQACiBQAhugMBAKAFACG7AwgAuwYAIbwDBADUBgAhvQMIALsGACG-AwQA1AYAIb8DBADUBgAhwAMEANQGACHBAwIAowUAIcIDAgCjBQAhAgAAANcBACASAADjAQAgDOECAgCjBQAh5gJAAKIFACGFA0AAogUAIboDAQCgBQAhuwMIALsGACG8AwQA1AYAIb0DCAC7BgAhvgMEANQGACG_AwQA1AYAIcADBADUBgAhwQMCAKMFACHCAwIAowUAIQIAAADaAQAgEgAA5QEAIAMAAADXAQAgFwAA3wEAIBgAAOMBACABAAAA1wEAIAEAAADaAQAgBQYAAM8GACAdAADQBgAgHgAA0wYAIB8AANIGACAgAADRBgAgD94CAADvBAAw3wIAAOsBABDgAgAA7wQAMOECAgCoBAAh5gJAAK0EACGFA0AArQQAIboDAQCqBAAhuwMIAOQEACG8AwQA8AQAIb0DCADkBAAhvgMEAPAEACG_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-BgAgHgAAwQYAIB8AAMAGACAgAAC_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_hAgIAowUAIeYCQACiBQAhggNAAKIFACGJAwIAowUAIYsDCADnBQAhjAMIAOcFACGNA4AAAAABjgMIAOcFACGPAwgA5wUAIZADCADnBQAhkQMIAOcFACGSAwgA5wUAIZMDCADnBQAhlAMBAKAFACGVA0AArAUAIQIAAADnAgAgEgAApgMAIAMAAADpAgAgFwAAoAMAIBgAAKQDACABAAAA6QIAIAEAAADnAgAgDwYAAOoFACAdAADrBQAgHgAA7gUAIB8AAO0FACAgAADsBQAgiwMAAJoFACCMAwAAmgUAII0DAACaBQAgjgMAAJoFACCPAwAAmgUAIJADAACaBQAgkQMAAJoFACCSAwAAmgUAIJMDAACaBQAglQMAAJoFACAS3gIAAMcEADDfAgAArAMAEOACAADHBAAw4QICAKgEACHmAkAArQQAIYIDQACtBAAhiQMCAKgEACGLAwgAwwQAIYwDCADDBAAhjQMAAMQEACCOAwgAwwQAIY8DCADDBAAhkAMIAMMEACGRAwgAwwQAIZIDCADDBAAhkwMIAMMEACGUAwEAqgQAIZUDQAC8BAAhAwAAAOcCACABAACrAwAwHAAArAMAIAMAAADnAgAgAQAA6AIAMAIAAOkCACABAAAA7QIAIAEAAADtAgAgAwAAAOsCACABAADsAgAwAgAA7QIAIAMAAADrAgAgAQAA7AIAMAIAAO0CACADAAAA6wIAIAEAAOwCADACAADtAgAgCNwBAADpBQAg4QICAAAAAeYCQAAAAAGJAwIAAAABigNAAAAAAYsDCAAAAAGMAwgAAAABjQOAAAAAAQESAAC0AwAgB-ECAgAAAAHmAkAAAAABiQMCAAAAAYoDQAAAAAGLAwgAAAABjAMIAAAAAY0DgAAAAAEBEgAAtgMAMAjcAQAA6AUAIOECAgCjBQAh5gJAAKIFACGJAwIAowUAIYoDQACiBQAhiwMIAOcFACGMAwgA5wUAIY0DgAAAAAECAAAA7QIAIBIAALgDACAH4QICAKMFACHmAkAAogUAIYkDAgCjBQAhigNAAKIFACGLAwgA5wUAIYwDCADnBQAhjQOAAAAAAQIAAADrAgAgEgAAugMAIAMAAADtAgAgFwAAtAMAIBgAALgDACABAAAA7QIAIAEAAADrAgAgCAYAAOIFACAdAADjBQAgHgAA5gUAIB8AAOUFACAgAADkBQAgiwMAAJoFACCMAwAAmgUAII0DAACaBQAgCt4CAADCBAAw3wIAAMADABDgAgAAwgQAMOECAgCoBAAh5gJAAK0EACGJAwIAqAQAIYoDQACtBAAhiwMIAMMEACGMAwgAwwQAIY0DAADEBAAgAwAAAOsCACABAAC_AwAwHAAAwAMAIAMAAADrAgAgAQAA7AIAMAIAAO0CACABAAAABQAgAQAAAAUAIAMAAAADACABAAAEADACAAAFACADAAAAAwAgAQAABAAwAgAABQAgAwAAAAMAIAEAAAQAMAIAAAUAIA4DAADgBQAgBQAA4QUAIOECAgAAAAHiAgIAAAAB4wIBAAAAAeYCQAAAAAHnAkAAAAAB_AIBAAAAAf8CAgAAAAGAAyAAAAABhQMBAAAAAYYDAgAAAAGHAwEAAAABiAMBAAAAAQESAADIAwAgDOECAgAAAAHiAgIAAAAB4wIBAAAAAeYCQAAAAAHnAkAAAAAB_AIBAAAAAf8CAgAAAAGAAyAAAAABhQMBAAAAAYYDAgAAAAGHAwEAAAABiAMBAAAAAQESAADKAwAwDgMAANIFACAFAADTBQAg4QICAKMFACHiAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIfwCAQCgBQAh_wICAKMFACGAAyAAoQUAIYUDAQCgBQAhhgMCAKMFACGHAwEAoAUAIYgDAQCgBQAhAgAAAAUAIBIAAMwDACAM4QICAKMFACHiAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIfwCAQCgBQAh_wICAKMFACGAAyAAoQUAIYUDAQCgBQAhhgMCAKMFACGHAwEAoAUAIYgDAQCgBQAhAgAAAAMAIBIAAM4DACADAAAABQAgFwAAyAMAIBgAAMwDACABAAAABQAgAQAAAAMAIAUGAADNBQAgHQAAzgUAIB4AANEFACAfAADQBQAgIAAAzwUAIA_eAgAAwQQAMN8CAADUAwAQ4AIAAMEEADDhAgIAqAQAIeICAgCoBAAh4wIBAKoEACHmAkAArQQAIecCQACtBAAh_AIBAKoEACH_AgIAqAQAIYADIACsBAAhhQMBAKoEACGGAwIAqAQAIYcDAQCqBAAhiAMBAKoEACEDAAAAAwAgAQAA0wMAMBwAANQDACADAAAAAwAgAQAABAAwAgAABQAgAQAAAAkAIAEAAAAJACADAAAABwAgAQAACAAwAgAACQAgAwAAAAcAIAEAAAgAMAIAAAkAIAMAAAAHACABAAAIADACAAAJACAKAwAAzAUAIAQAAMsFACDhAgIAAAAB4gICAAAAAeYCQAAAAAH8AgEAAAABgQMCAAAAAYIDAQAAAAGDAwIAAAABhAMBAAAAAQESAADcAwAgCOECAgAAAAHiAgIAAAAB5gJAAAAAAfwCAQAAAAGBAwIAAAABggMBAAAAAYMDAgAAAAGEAwEAAAABARIAAN4DADAKAwAAygUAIAQAAMkFACDhAgIAowUAIeICAgCjBQAh5gJAAKIFACH8AgEAoAUAIYEDAgCjBQAhggMBAKAFACGDAwIAowUAIYQDAQCgBQAhAgAAAAkAIBIAAOADACAI4QICAKMFACHiAgIAowUAIeYCQACiBQAh_AIBAKAFACGBAwIAowUAIYIDAQCgBQAhgwMCAKMFACGEAwEAoAUAIQIAAAAHACASAADiAwAgAwAAAAkAIBcAANwDACAYAADgAwAgAQAAAAkAIAEAAAAHACAFBgAAxAUAIB0AAMUFACAeAADIBQAgHwAAxwUAICAAAMYFACAL3gIAAMAEADDfAgAA6AMAEOACAADABAAw4QICAKgEACHiAgIAqAQAIeYCQACtBAAh_AIBAKoEACGBAwIAqAQAIYIDAQCqBAAhgwMCAKgEACGEAwEAqgQAIQMAAAAHACABAADnAwAwHAAA6AMAIAMAAAAHACABAAAIADACAAAJACABAAAADwAgAQAAAA8AIAMAAAANACABAAAOADACAAAPACADAAAADQAgAQAADgAwAgAADwAgAwAAAA0AIAEAAA4AMAIAAA8AIAoDAADCBQAgCgAAwwUAIOECAgAAAAHiAgIAAAAB5AIBAAAAAeYCQAAAAAHnAkAAAAAB-wIBAAAAAfwCAQAAAAGAAyAAAAABARIAAPADACAI4QICAAAAAeICAgAAAAHkAgEAAAAB5gJAAAAAAecCQAAAAAH7AgEAAAAB_AIBAAAAAYADIAAAAAEBEgAA8gMAMAoDAAC0BQAgCgAAtQUAIOECAgCjBQAh4gICAKMFACHkAgEAoAUAIeYCQACiBQAh5wJAAKIFACH7AgEAoAUAIfwCAQCgBQAhgAMgAKEFACECAAAADwAgEgAA9AMAIAjhAgIAowUAIeICAgCjBQAh5AIBAKAFACHmAkAAogUAIecCQACiBQAh-wIBAKAFACH8AgEAoAUAIYADIAChBQAhAgAAAA0AIBIAAPYDACADAAAADwAgFwAA8AMAIBgAAPQDACABAAAADwAgAQAAAA0AIAUGAACvBQAgHQAAsAUAIB4AALMFACAfAACyBQAgIAAAsQUAIAveAgAAvwQAMN8CAAD8AwAQ4AIAAL8EADDhAgIAqAQAIeICAgCoBAAh5AIBAKoEACHmAkAArQQAIecCQACtBAAh-wIBAKoEACH8AgEAqgQAIYADIACsBAAhAwAAAA0AIAEAAPsDADAcAAD8AwAgAwAAAA0AIAEAAA4AMAIAAA8AIAEAAAATACABAAAAEwAgAwAAABEAIAEAABIAMAIAABMAIAMAAAARACABAAASADACAAATACADAAAAEQAgAQAAEgAwAgAAEwAgCgkAAK4FACDhAgIAAAAB5gJAAAAAAecCQAAAAAH6AgIAAAAB-wIBAAAAAfwCAQAAAAH9AiAAAAAB_gJAAAAAAf8CAgAAAAEBEgAAhAQAIAnhAgIAAAAB5gJAAAAAAecCQAAAAAH6AgIAAAAB-wIBAAAAAfwCAQAAAAH9AiAAAAAB_gJAAAAAAf8CAgAAAAEBEgAAhgQAMAoJAACtBQAg4QICAKMFACHmAkAAogUAIecCQACiBQAh-gICAKMFACH7AgEAoAUAIfwCAQCgBQAh_QIgAKEFACH-AkAArAUAIf8CAgCjBQAhAgAAABMAIBIAAIgEACAJ4QICAKMFACHmAkAAogUAIecCQACiBQAh-gICAKMFACH7AgEAoAUAIfwCAQCgBQAh_QIgAKEFACH-AkAArAUAIf8CAgCjBQAhAgAAABEAIBIAAIoEACADAAAAEwAgFwAAhAQAIBgAAIgEACABAAAAEwAgAQAAABEAIAYGAACnBQAgHQAAqAUAIB4AAKsFACAfAACqBQAgIAAAqQUAIP4CAACaBQAgDN4CAAC7BAAw3wIAAJAEABDgAgAAuwQAMOECAgCoBAAh5gJAAK0EACHnAkAArQQAIfoCAgCoBAAh-wIBAKoEACH8AgEAqgQAIf0CIACsBAAh_gJAALwEACH_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_AIBAKoEACH9AiAArAQAIf4CQAC8BAAh_wICAKgEACELBgAAtwQAIB8AAL4EACAgAAC-BAAg6AJAAAAAAekCQAAAAAXqAkAAAAAF6wJAAAAAAewCQAAAAAHtAkAAAAAB7gJAAAAAAe8CQAC9BAAhCwYAALcEACAfAAC-BAAgIAAAvgQAIOgCQAAAAAHpAkAAAAAF6gJAAAAABesCQAAAAAHsAkAAAAAB7QJAAAAAAe4CQAAAAAHvAkAAvQQAIQjoAkAAAAAB6QJAAAAABeoCQAAAAAXrAkAAAAAB7AJAAAAAAe0CQAAAAAHuAkAAAAAB7wJAAL4EACEL3gIAAL8EADDfAgAA_AMAEOACAAC_BAAw4QICAKgEACHiAgIAqAQAIeQCAQCqBAAh5gJAAK0EACHnAkAArQQAIfsCAQCqBAAh_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_AwQA8AQAIcADBADwBAAhwQMCAKgEACHCAwIAqAQAIQ0GAACvBAAgHQAAugQAIB4AAPIEACAfAADyBAAgIAAA8gQAIOgCBAAAAAHpAgQAAAAE6gIEAAAABOsCBAAAAAHsAgQAAAAB7QIEAAAAAe4CBAAAAAHvAgQA8QQAIQ0GAACvBAAgHQAAugQAIB4AAPIEACAfAADyBAAgIAAA8gQAIOgCBAAAAAHpAgQAAAAE6gIEAAAABOsCBAAAAAHsAgQAAAAB7QIEAAAAAe4CBAAAAAHvAgQA8QQAIQjoAgQAAAAB6QIEAAAABOoCBAAAAATrAgQAAAAB7AIEAAAAAe0CBAAAAAHuAgQAAAAB7wIEAPIEACEP3gIAAPMEADDfAgAA2gEAEOACAADzBAAw4QICAM4EACHmAkAA0AQAIYUDQADQBAAhugMBAM8EACG7AwgA5wQAIbwDBAD0BAAhvQMIAOcEACG-AwQA9AQAIb8DBAD0BAAhwAMEAPQEACHBAwIAzgQAIcIDAgDOBAAhCOgCBAAAAAHpAgQAAAAE6gIEAAAABOsCBAAAAAHsAgQAAAAB7QIEAAAAAe4CBAAAAAHvAgQA8gQAIQKFA0AAAAABugMBAAAAARzeAgAA9gQAMN8CAADUAQAQ4AIAAPYEADDhAgIAqAQAIeMCAQCqBAAh5gJAAK0EACHnAkAArQQAIaoDAQCqBAAhugMBAKoEACG_AwQA8AQAIcADBADwBAAhwQMCAKgEACHCAwIAqAQAIcQDAQCqBAAhxQMBAKoEACHGAwEAqgQAIccDBADwBAAhyAMEAPAEACHJAwIAqAQAIcoDCADkBAAhywMEAPAEACHMAwQA8AQAIc0DCADkBAAhzgMIAOQEACHPAwgA5AQAIdADBADwBAAh0QMEAPAEACHSA0AArQQAIRzeAgAA9wQAMN8CAADDAQAQ4AIAAPcEADDhAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIaoDAQDPBAAhugMBAM8EACG_AwQA9AQAIcADBAD0BAAhwQMCAM4EACHCAwIAzgQAIcQDAQDPBAAhxQMBAM8EACHGAwEAzwQAIccDBAD0BAAhyAMEAPQEACHJAwIAzgQAIcoDCADnBAAhywMEAPQEACHMAwQA9AQAIc0DCADnBAAhzgMIAOcEACHPAwgA5wQAIdADBAD0BAAh0QMEAPQEACHSA0AA0AQAIQ3eAgAA-AQAMN8CAAC9AQAQ4AIAAPgEADDhAgIAqAQAIeYCQACtBAAhhQMBAKoEACHTAwEAqgQAIdQDCADkBAAh1QMIAOQEACHWAwEAqgQAIdcDAQCqBAAh2AMIAOQEACHZAwgA5AQAIQ3eAgAA-QQAMN8CAACsAQAQ4AIAAPkEADDhAgIAzgQAIeYCQADQBAAhhQMBAM8EACHTAwEAzwQAIdQDCADnBAAh1QMIAOcEACHWAwEAzwQAIdcDAQDPBAAh2AMIAOcEACHZAwgA5wQAIQzeAgAA-gQAMN8CAACmAQAQ4AIAAPoEADDhAgIAqAQAIeYCQACtBAAh-wIBAKoEACGEAwEAqgQAIbYDAQCqBAAh2gMBAKoEACHbAwEAyQQAIdwDQACtBAAh3QMCAKgEACEM3gIAAPsEADDfAgAAlQEAEOACAAD7BAAw4QICAM4EACHmAkAA0AQAIfsCAQDPBAAhhAMBAM8EACG2AwEAzwQAIdoDAQDPBAAh2wMBANsEACHcA0AA0AQAId0DAgDOBAAhAvsCAQAAAAHcA0AAAAABCd4CAAD9BAAw3wIAAI8BABDgAgAA_QQAMOECAgCoBAAh5gJAAK0EACHnAkAArQQAIYUDAQCqBAAh3wMCAKgEACHgAwgA5AQAIQ3eAgAA_gQAMN8CAAB7ABDgAgAA_gQAMOECAgCoBAAh4wIBAKoEACHmAkAArQQAIecCQACtBAAh-wIBAKoEACGEAwEAqgQAIeEDAQCqBAAh4gMBAKoEACHjAwEAqgQAIeQDIACsBAAhDkAAAIAFACDeAgAA_wQAMN8CAABqABDgAgAA_wQAMOECAgDOBAAh4wIBAM8EACHmAkAA0AQAIecCQADQBAAh-wIBAM8EACGEAwEAzwQAIeEDAQDPBAAh4gMBAM8EACHjAwEAzwQAIeQDIADdBAAhA6QDAABkACClAwAAZAAgpgMAAGQAIAKFAwEAAAAB3wMCAAAAAQo_AACDBQAg3gIAAIIFADDfAgAAZAAQ4AIAAIIFADDhAgIAzgQAIeYCQADQBAAh5wJAANAEACGFAwEAzwQAId8DAgDOBAAh4AMIAOcEACEQQAAAgAUAIN4CAAD_BAAw3wIAAGoAEOACAAD_BAAw4QICAM4EACHjAgEAzwQAIeYCQADQBAAh5wJAANAEACH7AgEAzwQAIYQDAQDPBAAh4QMBAM8EACHiAwEAzwQAIeMDAQDPBAAh5AMgAN0EACHrAwAAagAg7AMAAGoAIAkSAACrBAAg3gIAAIQFADDfAgAAXwAQ4AIAAIQFADDhAgIAqAQAIeMCAQCqBAAh5gJAAK0EACHnAkAArQQAIeYDAQCqBAAhCRIAAIYFACDeAgAAhQUAMN8CAABOABDgAgAAhQUAMOECAgDOBAAh4wIBAM8EACHmAkAA0AQAIecCQADQBAAh5gMBAM8EACEM6AKAAAAAAesCgAAAAAHsAoAAAAAB7QKAAAAAAe4CgAAAAAHvAoAAAAAB8AIBAAAAAfECAQAAAAHyAgEAAAAB8wKAAAAAAfQCgAAAAAH1AoAAAAABCt4CAACHBQAw3wIAAEgAEOACAACHBQAw4QICAKgEACHmAkAArQQAIecCQACtBAAh-wIBAKoEACGCAwEAqgQAIdsDAQCqBAAh5wMBAKoEACEK3gIAAIgFADDfAgAANwAQ4AIAAIgFADDhAgIAzgQAIeYCQADQBAAh5wJAANAEACH7AgEAzwQAIYIDAQDPBAAh2wMBAM8EACHnAwEAzwQAIQneAgAAiQUAMN8CAAAxABDgAgAAiQUAMOECAgCoBAAh4wIBAKoEACHmAkAArQQAIecCQACtBAAh6AMBAKoEACHpAwEAqgQAIQ0HAACLBQAgCAAAjAUAIAsAAI0FACAMAACOBQAg3gIAAIoFADDfAgAAGgAQ4AIAAIoFADDhAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIegDAQDPBAAh6QMBAM8EACEDpAMAAAMAIKUDAAADACCmAwAAAwAgA6QDAAAHACClAwAABwAgpgMAAAcAIAOkAwAADQAgpQMAAA0AIKYDAAANACADpAMAABYAIKUDAAAWACCmAwAAFgAgDAMAAJAFACAKAACGBQAg3gIAAI8FADDfAgAAFgAQ4AIAAI8FADDhAgIAzgQAIeICAgDcBAAh4wIBAM8EACHkAgEAzwQAIeUCIADdBAAh5gJAANAEACHnAkAA0AQAIQ8HAACLBQAgCAAAjAUAIAsAAI0FACAMAACOBQAg3gIAAIoFADDfAgAAGgAQ4AIAAIoFADDhAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIegDAQDPBAAh6QMBAM8EACHrAwAAGgAg7AMAABoAIA0JAACSBQAg3gIAAJEFADDfAgAAEQAQ4AIAAJEFADDhAgIAzgQAIeYCQADQBAAh5wJAANAEACH6AgIAzgQAIfsCAQDPBAAh_AIBAM8EACH9AiAA3QQAIf4CQADZBAAh_wICAM4EACEPAwAAlAUAIAoAAJUFACDeAgAAkwUAMN8CAAANABDgAgAAkwUAMOECAgDOBAAh4gICAM4EACHkAgEAzwQAIeYCQADQBAAh5wJAANAEACH7AgEAzwQAIfwCAQDPBAAhgAMgAN0EACHrAwAADQAg7AMAAA0AIA0DAACUBQAgCgAAlQUAIN4CAACTBQAw3wIAAA0AEOACAACTBQAw4QICAM4EACHiAgIAzgQAIeQCAQDPBAAh5gJAANAEACHnAkAA0AQAIfsCAQDPBAAh_AIBAM8EACGAAyAA3QQAIQ8HAACLBQAgCAAAjAUAIAsAAI0FACAMAACOBQAg3gIAAIoFADDfAgAAGgAQ4AIAAIoFADDhAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIegDAQDPBAAh6QMBAM8EACHrAwAAGgAg7AMAABoAIAOkAwAAEQAgpQMAABEAIKYDAAARACADgQMCAAAAAYIDAQAAAAGDAwIAAAABDQMAAJQFACAEAACYBQAg3gIAAJcFADDfAgAABwAQ4AIAAJcFADDhAgIAzgQAIeICAgDOBAAh5gJAANAEACH8AgEAzwQAIYEDAgDOBAAhggMBAM8EACGDAwIAzgQAIYQDAQDPBAAhEwMAAJQFACAFAACMBQAg3gIAAJkFADDfAgAAAwAQ4AIAAJkFADDhAgIAzgQAIeICAgDOBAAh4wIBAM8EACHmAkAA0AQAIecCQADQBAAh_AIBAM8EACH_AgIAzgQAIYADIADdBAAhhQMBAM8EACGGAwIAzgQAIYcDAQDPBAAhiAMBAM8EACHrAwAAAwAg7AMAAAMAIBEDAACUBQAgBQAAjAUAIN4CAACZBQAw3wIAAAMAEOACAACZBQAw4QICAM4EACHiAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIfwCAQDPBAAh_wICAM4EACGAAyAA3QQAIYUDAQDPBAAhhgMCAM4EACGHAwEAzwQAIYgDAQDPBAAhAAAAAAAAAfADAQAAAAEB8AMgAAAAAQHwA0AAAAABBfADAgAAAAH3AwIAAAAB-AMCAAAAAfkDAgAAAAH6AwIAAAABBfADAgAAAAH3AwIAAAAB-AMCAAAAAfkDAgAAAAH6AwIAAAABBxcAAJEIACAYAACUCAAg7QMAAJIIACDuAwAAkwgAIPEDAAAaACDyAwAAGgAg8wMAAAEAIAMXAACRCAAg7QMAAJIIACDzAwAAAQAgAAAAAAAB8ANAAAAAAQUXAACMCAAgGAAAjwgAIO0DAACNCAAg7gMAAI4IACDzAwAADwAgAxcAAIwIACDtAwAAjQgAIPMDAAAPACAAAAAAAAUXAACGCAAgGAAAiggAIO0DAACHCAAg7gMAAIkIACDzAwAAAQAgCxcAALYFADAYAAC7BQAw7QMAALcFADDuAwAAuAUAMO8DAAC5BQAg8AMAALoFADDxAwAAugUAMPIDAAC6BQAw8wMAALoFADD0AwAAvAUAMPUDAAC9BQAwCOECAgAAAAHmAkAAAAAB5wJAAAAAAfsCAQAAAAH8AgEAAAAB_QIgAAAAAf4CQAAAAAH_AgIAAAABAgAAABMAIBcAAMEFACADAAAAEwAgFwAAwQUAIBgAAMAFACABEgAAiAgAMA0JAACSBQAg3gIAAJEFADDfAgAAEQAQ4AIAAJEFADDhAgIAAAAB5gJAANAEACHnAkAA0AQAIfoCAgDOBAAh-wIBAM8EACH8AgEAzwQAIf0CIADdBAAh_gJAANkEACH_AgIAzgQAIQIAAAATACASAADABQAgAgAAAL4FACASAAC_BQAgDN4CAAC9BQAw3wIAAL4FABDgAgAAvQUAMOECAgDOBAAh5gJAANAEACHnAkAA0AQAIfoCAgDOBAAh-wIBAM8EACH8AgEAzwQAIf0CIADdBAAh_gJAANkEACH_AgIAzgQAIQzeAgAAvQUAMN8CAAC-BQAQ4AIAAL0FADDhAgIAzgQAIeYCQADQBAAh5wJAANAEACH6AgIAzgQAIfsCAQDPBAAh_AIBAM8EACH9AiAA3QQAIf4CQADZBAAh_wICAM4EACEI4QICAKMFACHmAkAAogUAIecCQACiBQAh-wIBAKAFACH8AgEAoAUAIf0CIAChBQAh_gJAAKwFACH_AgIAowUAIQjhAgIAowUAIeYCQACiBQAh5wJAAKIFACH7AgEAoAUAIfwCAQCgBQAh_QIgAKEFACH-AkAArAUAIf8CAgCjBQAhCOECAgAAAAHmAkAAAAAB5wJAAAAAAfsCAQAAAAH8AgEAAAAB_QIgAAAAAf4CQAAAAAH_AgIAAAABAxcAAIYIACDtAwAAhwgAIPMDAAABACAEFwAAtgUAMO0DAAC3BQAw7wMAALkFACDzAwAAugUAMAAAAAAABRcAAP4HACAYAACECAAg7QMAAP8HACDuAwAAgwgAIPMDAAAFACAFFwAA_AcAIBgAAIEIACDtAwAA_QcAIO4DAACACAAg8wMAAAEAIAMXAAD-BwAg7QMAAP8HACDzAwAABQAgAxcAAPwHACDtAwAA_QcAIPMDAAABACAAAAAAAAUXAAD2BwAgGAAA-gcAIO0DAAD3BwAg7gMAAPkHACDzAwAAAQAgCxcAANQFADAYAADZBQAw7QMAANUFADDuAwAA1gUAMO8DAADXBQAg8AMAANgFADDxAwAA2AUAMPIDAADYBQAw8wMAANgFADD0AwAA2gUAMPUDAADbBQAwCAMAAMwFACDhAgIAAAAB4gICAAAAAeYCQAAAAAH8AgEAAAABggMBAAAAAYMDAgAAAAGEAwEAAAABAgAAAAkAIBcAAN8FACADAAAACQAgFwAA3wUAIBgAAN4FACABEgAA-AcAMA4DAACUBQAgBAAAmAUAIN4CAACXBQAw3wIAAAcAEOACAACXBQAw4QICAAAAAeICAgDOBAAh5gJAANAEACH8AgEAzwQAIYEDAgDOBAAhggMBAM8EACGDAwIAzgQAIYQDAQDPBAAh6gMAAJYFACACAAAACQAgEgAA3gUAIAIAAADcBQAgEgAA3QUAIAveAgAA2wUAMN8CAADcBQAQ4AIAANsFADDhAgIAzgQAIeICAgDOBAAh5gJAANAEACH8AgEAzwQAIYEDAgDOBAAhggMBAM8EACGDAwIAzgQAIYQDAQDPBAAhC94CAADbBQAw3wIAANwFABDgAgAA2wUAMOECAgDOBAAh4gICAM4EACHmAkAA0AQAIfwCAQDPBAAhgQMCAM4EACGCAwEAzwQAIYMDAgDOBAAhhAMBAM8EACEH4QICAKMFACHiAgIAowUAIeYCQACiBQAh_AIBAKAFACGCAwEAoAUAIYMDAgCjBQAhhAMBAKAFACEIAwAAygUAIOECAgCjBQAh4gICAKMFACHmAkAAogUAIfwCAQCgBQAhggMBAKAFACGDAwIAowUAIYQDAQCgBQAhCAMAAMwFACDhAgIAAAAB4gICAAAAAeYCQAAAAAH8AgEAAAABggMBAAAAAYMDAgAAAAGEAwEAAAABAxcAAPYHACDtAwAA9wcAIPMDAAABACAEFwAA1AUAMO0DAADVBQAw7wMAANcFACDzAwAA2AUAMAAAAAAABfADCAAAAAH3AwgAAAAB-AMIAAAAAfkDCAAAAAH6AwgAAAABBRcAAPEHACAYAAD0BwAg7QMAAPIHACDuAwAA8wcAIPMDAADlAgAgAxcAAPEHACDtAwAA8gcAIPMDAADlAgAgAAAAAAAFFwAA7AcAIBgAAO8HACDtAwAA7QcAIO4DAADuBwAg8wMAAOUCACADFwAA7AcAIO0DAADtBwAg8wMAAOUCACAAAAAAAAHwAwEAAAABBRcAAOUHACAYAADqBwAg7QMAAOYHACDuAwAA6QcAIPMDAADhAgAgCxcAAIYGADAYAACLBgAw7QMAAIcGADDuAwAAiAYAMO8DAACJBgAg8AMAAIoGADDxAwAAigYAMPIDAACKBgAw8wMAAIoGADD0AwAAjAYAMPUDAACNBgAwCxcAAPoFADAYAAD_BQAw7QMAAPsFADDuAwAA_AUAMO8DAAD9BQAg8AMAAP4FADDxAwAA_gUAMPIDAAD-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-QIBAAAAAQAAAAAABfADCAAAAAH3AwgAAAAB-AMIAAAAAfkDCAAAAAH6AwgAAAABAfkCAQAAAAEAAAAAAAH5AgEAAAABAAAAAAAB-QIBAAAAAQAAAAAAAfkCAQAAAAEAAAAAAAXwAwQAAAAB9wMEAAAAAfgDBAAAAAH5AwQAAAAB-gMEAAAAAQH5AgEAAAABAAAAAAAB-QIBAAAAAQAAAAAAAfkCAQAAAAEAAAAAAAH5AgEAAAABAAAAAAAFFwAA3wcAIBgAAOIHACDtAwAA4AcAIO4DAADhBwAg8wMAAGIAIAMXAADfBwAg7QMAAOAHACDzAwAAYgAgAAAAAAALFwAA9QYAMBgAAPoGADDtAwAA9gYAMO4DAAD3BgAw7wMAAPgGACDwAwAA-QYAMPEDAAD5BgAw8gMAAPkGADDzAwAA-QYAMPQDAAD7BgAw9QMAAPwGADAF4QICAAAAAeYCQAAAAAHnAkAAAAABhQMBAAAAAeADCAAAAAECAAAAZgAgFwAAgAcAIAMAAABmACAXAACABwAgGAAA_wYAIAESAADeBwAwCz8AAIMFACDeAgAAggUAMN8CAABkABDgAgAAggUAMOECAgAAAAHmAkAA0AQAIecCQADQBAAhhQMBAM8EACHfAwIAzgQAIeADCADnBAAh5QMAAIEFACACAAAAZgAgEgAA_wYAIAIAAAD9BgAgEgAA_gYAIAneAgAA_AYAMN8CAAD9BgAQ4AIAAPwGADDhAgIAzgQAIeYCQADQBAAh5wJAANAEACGFAwEAzwQAId8DAgDOBAAh4AMIAOcEACEJ3gIAAPwGADDfAgAA_QYAEOACAAD8BgAw4QICAM4EACHmAkAA0AQAIecCQADQBAAhhQMBAM8EACHfAwIAzgQAIeADCADnBAAhBeECAgCjBQAh5gJAAKIFACHnAkAAogUAIYUDAQCgBQAh4AMIALsGACEF4QICAKMFACHmAkAAogUAIecCQACiBQAhhQMBAKAFACHgAwgAuwYAIQXhAgIAAAAB5gJAAAAAAecCQAAAAAGFAwEAAAAB4AMIAAAAAQQXAAD1BgAw7QMAAPYGADDvAwAA-AYAIPMDAAD5BgAwAAH5AgEAAAABAkAAAIIHACD2AwAAgwcAIAH5AgEAAAABAAAAAAAB-QIBAAAAAQAAAAAAAfkCAQAAAAEAAAAAAAsXAAC8BwAwGAAAwQcAMO0DAAC9BwAw7gMAAL4HADDvAwAAvwcAIPADAADABwAw8QMAAMAHADDyAwAAwAcAMPMDAADABwAw9AMAAMIHADD1AwAAwwcAMAsXAACzBwAwGAAAtwcAMO0DAAC0BwAw7gMAALUHADDvAwAAtgcAIPADAADYBQAw8QMAANgFADDyAwAA2AUAMPMDAADYBQAw9AMAALgHADD1AwAA2wUAMAsXAACnBwAwGAAArAcAMO0DAACoBwAw7gMAAKkHADDvAwAAqgcAIPADAACrBwAw8QMAAKsHADDyAwAAqwcAMPMDAACrBwAw9AMAAK0HADD1AwAArgcAMAsXAACbBwAwGAAAoAcAMO0DAACcBwAw7gMAAJ0HADDvAwAAngcAIPADAACfBwAw8QMAAJ8HADDyAwAAnwcAMPMDAACfBwAw9AMAAKEHADD1AwAAogcAMAcKgAAAAAHhAgIAAAAB4wIBAAAAAeQCAQAAAAHlAiAAAAAB5gJAAAAAAecCQAAAAAECAAAAGAAgFwAApgcAIAMAAAAYACAXAACmBwAgGAAApQcAIAESAADdBwAwDAMAAJAFACAKAACGBQAg3gIAAI8FADDfAgAAFgAQ4AIAAI8FADDhAgIAAAAB4gICANwEACHjAgEAzwQAIeQCAQDPBAAh5QIgAN0EACHmAkAA0AQAIecCQADQBAAhAgAAABgAIBIAAKUHACACAAAAowcAIBIAAKQHACALCgAAhgUAIN4CAACiBwAw3wIAAKMHABDgAgAAogcAMOECAgDOBAAh4gICANwEACHjAgEAzwQAIeQCAQDPBAAh5QIgAN0EACHmAkAA0AQAIecCQADQBAAhCwoAAIYFACDeAgAAogcAMN8CAACjBwAQ4AIAAKIHADDhAgIAzgQAIeICAgDcBAAh4wIBAM8EACHkAgEAzwQAIeUCIADdBAAh5gJAANAEACHnAkAA0AQAIQcKgAAAAAHhAgIAowUAIeMCAQCgBQAh5AIBAKAFACHlAiAAoQUAIeYCQACiBQAh5wJAAKIFACEHCoAAAAAB4QICAKMFACHjAgEAoAUAIeQCAQCgBQAh5QIgAKEFACHmAkAAogUAIecCQACiBQAhBwqAAAAAAeECAgAAAAHjAgEAAAAB5AIBAAAAAeUCIAAAAAHmAkAAAAAB5wJAAAAAAQgKAADDBQAg4QICAAAAAeQCAQAAAAHmAkAAAAAB5wJAAAAAAfsCAQAAAAH8AgEAAAABgAMgAAAAAQIAAAAPACAXAACyBwAgAwAAAA8AIBcAALIHACAYAACxBwAgARIAANwHADANAwAAlAUAIAoAAJUFACDeAgAAkwUAMN8CAAANABDgAgAAkwUAMOECAgAAAAHiAgIAzgQAIeQCAQDPBAAh5gJAANAEACHnAkAA0AQAIfsCAQDPBAAh_AIBAM8EACGAAyAA3QQAIQIAAAAPACASAACxBwAgAgAAAK8HACASAACwBwAgC94CAACuBwAw3wIAAK8HABDgAgAArgcAMOECAgDOBAAh4gICAM4EACHkAgEAzwQAIeYCQADQBAAh5wJAANAEACH7AgEAzwQAIfwCAQDPBAAhgAMgAN0EACEL3gIAAK4HADDfAgAArwcAEOACAACuBwAw4QICAM4EACHiAgIAzgQAIeQCAQDPBAAh5gJAANAEACHnAkAA0AQAIfsCAQDPBAAh_AIBAM8EACGAAyAA3QQAIQfhAgIAowUAIeQCAQCgBQAh5gJAAKIFACHnAkAAogUAIfsCAQCgBQAh_AIBAKAFACGAAyAAoQUAIQgKAAC1BQAg4QICAKMFACHkAgEAoAUAIeYCQACiBQAh5wJAAKIFACH7AgEAoAUAIfwCAQCgBQAhgAMgAKEFACEICgAAwwUAIOECAgAAAAHkAgEAAAAB5gJAAAAAAecCQAAAAAH7AgEAAAAB_AIBAAAAAYADIAAAAAEIBAAAywUAIOECAgAAAAHmAkAAAAAB_AIBAAAAAYEDAgAAAAGCAwEAAAABgwMCAAAAAYQDAQAAAAECAAAACQAgFwAAuwcAIAMAAAAJACAXAAC7BwAgGAAAugcAIAESAADbBwAwAgAAAAkAIBIAALoHACACAAAA3AUAIBIAALkHACAH4QICAKMFACHmAkAAogUAIfwCAQCgBQAhgQMCAKMFACGCAwEAoAUAIYMDAgCjBQAhhAMBAKAFACEIBAAAyQUAIOECAgCjBQAh5gJAAKIFACH8AgEAoAUAIYEDAgCjBQAhggMBAKAFACGDAwIAowUAIYQDAQCgBQAhCAQAAMsFACDhAgIAAAAB5gJAAAAAAfwCAQAAAAGBAwIAAAABggMBAAAAAYMDAgAAAAGEAwEAAAABDAUAAOEFACDhAgIAAAAB4wIBAAAAAeYCQAAAAAHnAkAAAAAB_AIBAAAAAf8CAgAAAAGAAyAAAAABhQMBAAAAAYYDAgAAAAGHAwEAAAABiAMBAAAAAQIAAAAFACAXAADHBwAgAwAAAAUAIBcAAMcHACAYAADGBwAgARIAANoHADARAwAAlAUAIAUAAIwFACDeAgAAmQUAMN8CAAADABDgAgAAmQUAMOECAgAAAAHiAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIfwCAQDPBAAh_wICAM4EACGAAyAA3QQAIYUDAQDPBAAhhgMCAM4EACGHAwEAzwQAIYgDAQDPBAAhAgAAAAUAIBIAAMYHACACAAAAxAcAIBIAAMUHACAP3gIAAMMHADDfAgAAxAcAEOACAADDBwAw4QICAM4EACHiAgIAzgQAIeMCAQDPBAAh5gJAANAEACHnAkAA0AQAIfwCAQDPBAAh_wICAM4EACGAAyAA3QQAIYUDAQDPBAAhhgMCAM4EACGHAwEAzwQAIYgDAQDPBAAhD94CAADDBwAw3wIAAMQHABDgAgAAwwcAMOECAgDOBAAh4gICAM4EACHjAgEAzwQAIeYCQADQBAAh5wJAANAEACH8AgEAzwQAIf8CAgDOBAAhgAMgAN0EACGFAwEAzwQAIYYDAgDOBAAhhwMBAM8EACGIAwEAzwQAIQvhAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIfwCAQCgBQAh_wICAKMFACGAAyAAoQUAIYUDAQCgBQAhhgMCAKMFACGHAwEAoAUAIYgDAQCgBQAhDAUAANMFACDhAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIfwCAQCgBQAh_wICAKMFACGAAyAAoQUAIYUDAQCgBQAhhgMCAKMFACGHAwEAoAUAIYgDAQCgBQAhDAUAAOEFACDhAgIAAAAB4wIBAAAAAeYCQAAAAAHnAkAAAAAB_AIBAAAAAf8CAgAAAAGAAyAAAAABhQMBAAAAAYYDAgAAAAGHAwEAAAABiAMBAAAAAQQXAAC8BwAw7QMAAL0HADDvAwAAvwcAIPMDAADABwAwBBcAALMHADDtAwAAtAcAMO8DAAC2BwAg8wMAANgFADAEFwAApwcAMO0DAACoBwAw7wMAAKoHACDzAwAAqwcAMAQXAACbBwAw7QMAAJwHADDvAwAAngcAIPMDAACfBwAwAAAAAAH5AgEAAAABBQcAAMwHACAIAADNBwAgCwAAzgcAIAwAAM8HACD2AwAA0AcAIAH5AgEAAAABAwMAANEHACAKAADVBwAg9gMAANYHACAB-QIBAAAAAQAB-QIBAAAAAQMDAADRBwAgBQAAzQcAIPYDAADZBwAgAfkCAQAAAAEB-QIBAAAAAQvhAgIAAAAB4wIBAAAAAeYCQAAAAAHnAkAAAAAB_AIBAAAAAf8CAgAAAAGAAyAAAAABhQMBAAAAAYYDAgAAAAGHAwEAAAABiAMBAAAAAQfhAgIAAAAB5gJAAAAAAfwCAQAAAAGBAwIAAAABggMBAAAAAYMDAgAAAAGEAwEAAAABB-ECAgAAAAHkAgEAAAAB5gJAAAAAAecCQAAAAAH7AgEAAAAB_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_AIBAAAAAf8CAgAAAAGAAyAAAAABhQMBAAAAAYYDAgAAAAGHAwEAAAABiAMBAAAAAQIAAAAFACAXAAD-BwAgAwAAABoAIBcAAPwHACAYAACCCAAgCwAAABoAIAcAAJcHACALAACZBwAgDAAAmgcAIBIAAIIIACDhAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIegDAQCgBQAh6QMBAKAFACEJBwAAlwcAIAsAAJkHACAMAACaBwAg4QICAKMFACHjAgEAoAUAIeYCQACiBQAh5wJAAKIFACHoAwEAoAUAIekDAQCgBQAhAwAAAAMAIBcAAP4HACAYAACFCAAgDwAAAAMAIAMAANIFACASAACFCAAg4QICAKMFACHiAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIfwCAQCgBQAh_wICAKMFACGAAyAAoQUAIYUDAQCgBQAhhgMCAKMFACGHAwEAoAUAIYgDAQCgBQAhDQMAANIFACDhAgIAowUAIeICAgCjBQAh4wIBAKAFACHmAkAAogUAIecCQACiBQAh_AIBAKAFACH_AgIAowUAIYADIAChBQAhhQMBAKAFACGGAwIAowUAIYcDAQCgBQAhiAMBAKAFACEJBwAAyAcAIAgAAMkHACAMAADLBwAg4QICAAAAAeMCAQAAAAHmAkAAAAAB5wJAAAAAAegDAQAAAAHpAwEAAAABAgAAAAEAIBcAAIYIACAI4QICAAAAAeYCQAAAAAHnAkAAAAAB-wIBAAAAAfwCAQAAAAH9AiAAAAAB_gJAAAAAAf8CAgAAAAEDAAAAGgAgFwAAhggAIBgAAIsIACALAAAAGgAgBwAAlwcAIAgAAJgHACAMAACaBwAgEgAAiwgAIOECAgCjBQAh4wIBAKAFACHmAkAAogUAIecCQACiBQAh6AMBAKAFACHpAwEAoAUAIQkHAACXBwAgCAAAmAcAIAwAAJoHACDhAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIegDAQCgBQAh6QMBAKAFACEJAwAAwgUAIOECAgAAAAHiAgIAAAAB5AIBAAAAAeYCQAAAAAHnAkAAAAAB-wIBAAAAAfwCAQAAAAGAAyAAAAABAgAAAA8AIBcAAIwIACADAAAADQAgFwAAjAgAIBgAAJAIACALAAAADQAgAwAAtAUAIBIAAJAIACDhAgIAowUAIeICAgCjBQAh5AIBAKAFACHmAkAAogUAIecCQACiBQAh-wIBAKAFACH8AgEAoAUAIYADIAChBQAhCQMAALQFACDhAgIAowUAIeICAgCjBQAh5AIBAKAFACHmAkAAogUAIecCQACiBQAh-wIBAKAFACH8AgEAoAUAIYADIAChBQAhCQcAAMgHACAIAADJBwAgCwAAygcAIOECAgAAAAHjAgEAAAAB5gJAAAAAAecCQAAAAAHoAwEAAAAB6QMBAAAAAQIAAAABACAXAACRCAAgAwAAABoAIBcAAJEIACAYAACVCAAgCwAAABoAIAcAAJcHACAIAACYBwAgCwAAmQcAIBIAAJUIACDhAgIAowUAIeMCAQCgBQAh5gJAAKIFACHnAkAAogUAIegDAQCgBQAh6QMBAKAFACEJBwAAlwcAIAgAAJgHACALAACZBwAg4QICAKMFACHjAgEAoAUAIeYCQACiBQAh5wJAAKIFACHoAwEAoAUAIekDAQCgBQAhBQYACQcGAggMAwsQBQwZCAMDAAEFCgMGAAQCAwABBAACAQULAAMDAAEGAAcKFAYBCQAFAQoVAAEDGwEEBxwACB0ACx4ADB8AAAUGAAwdAA0eAA4fAA8gABAAAAAAAAUGAAwdAA0eAA4fAA8gABAABQYAFB0AFR4AFh8AFyAAGAAAAAAABQYAFB0AFR4AFh8AFyAAGAAFBgAcHQAdHgAeHwAfIAAgAAAAAAAFBgAcHQAdHgAeHwAfIAAgAgYAJEBnIwE_ACIBQGgABQYAJh0AJx4AKB8AKSAAKgAAAAAABQYAJh0AJx4AKB8AKSAAKgUGAC0dAC4eAC8fADAgADEAAAAAAAUGAC0dAC4eAC8fADAgADEABQYANR0ANh4ANx8AOCAAOQAAAAAABQYANR0ANh4ANx8AOCAAOQAFBgA9HQA-HgA_HwBAIABBAAAAAAAFBgA9HQA-HgA_HwBAIABBAAUGAEUdAEYeAEcfAEggAEkAAAAAAAUGAEUdAEYeAEcfAEggAEkABQYATR0ATh4ATx8AUCAAUQAAAAAABQYATR0ATh4ATx8AUCAAUQAFBgBVHQBWHgBXHwBYIABZAAAAAAAFBgBVHQBWHgBXHwBYIABZAAUGAF0dAF4eAF8fAGAgAGEAAAAAAAUGAF0dAF4eAF8fAGAgAGEABQYAZR0AZh4AZx8AaCAAaQAAAAAABQYAZR0AZh4AZx8AaCAAaQAFBgBtHQBuHgBvHwBwIABxAAAAAAAFBgBtHQBuHgBvHwBwIABxAAUGAHUdAHYeAHcfAHggAHkAAAAAAAUGAHUdAHYeAHcfAHggAHkCBgCAAd8B5gJ8BAYAf9sBAHvdAeoCfd4B7gJ-AdwBAHwB3AEAfALdAe8CAN4B8AIAAd8B8QIABQYAggEdAIMBHgCEAR8AhQEgAIYBAAAAAAAFBgCCAR0AgwEeAIQBHwCFASAAhgEFBgCJAR0AigEeAIsBHwCMASAAjQEAAAAAAAUGAIkBHQCKAR4AiwEfAIwBIACNAQUGAJABHQCRAR4AkgEfAJMBIACUAQAAAAAABQYAkAEdAJEBHgCSAR8AkwEgAJQBBQYAlwEdAJgBHgCZAR8AmgEgAJsBAAAAAAAFBgCXAR0AmAEeAJkBHwCaASAAmwEFBgCeAR0AnwEeAKABHwChASAAogEAAAAAAAUGAJ4BHQCfAR4AoAEfAKEBIACiAQUGAKUBHQCmAR4ApwEfAKgBIACpAQAAAAAABQYApQEdAKYBHgCnAR8AqAEgAKkBBQYArAEdAK0BHgCuAR8ArwEgALABAAAAAAAFBgCsAR0ArQEeAK4BHwCvASAAsAEFBgCzAR0AtAEeALUBHwC2ASAAtwEAAAAAAAUGALMBHQC0AR4AtQEfALYBIAC3AQUGALoBHQC7AR4AvAEfAL0BIAC-AQAAAAAABQYAugEdALsBHgC8AR8AvQEgAL4BDQIBDiABDyIBECMBESQBEyYBFCgKFSoBFiwKGS0BGi4BGy8KITILIjMRIzUSJDYSJTkSJjoSJzsSKD0SKT8KKkESK0MKLEQSLUUSLkYKL0kTMEoZMUwaMk0aM1AaNFEaNVIaNlQaN1YKOFgaOVoKOlsaO1waPF0KPWAbPmEhQWMiQmkiQ2wiRG0iRW4iRnAiR3IKSHQiSXYKSnciS3giTHkKTXwlTn0rT34jUH8jUYABI1KBASNTggEjVIQBI1WGAQpWiAEjV4oBCliLASNZjAEjWo0BCluQASxckQEyXZMBM16UATNflwEzYJgBM2GZATNimwEzY50BCmSfATNloQEKZqIBM2ejATNopAEKaacBNGqoATprqgE7bKsBO22uATturwE7b7ABO3CyATtxtAEKcrYBO3O4AQp0uQE7dboBO3a7AQp3vgE8eL8BQnnBAUN6wgFDe8UBQ3zGAUN9xwFDfskBQ3_LAQqAAc0BQ4EBzwEKggHQAUODAdEBQ4QB0gEKhQHVAUSGAdYBSocB2AFLiAHZAUuJAdwBS4oB3QFLiwHeAUuMAeABS40B4gEKjgHkAUuPAeYBCpAB5wFLkQHoAUuSAekBCpMB7AFMlAHtAVKVAe8BU5YB8AFTlwHzAVOYAfQBU5kB9QFTmgH3AVObAfkBCpwB-wFTnQH9AQqeAf4BU58B_wFToAGAAgqhAYMCVKIBhAJaowGGAlukAYcCW6UBigJbpgGLAlunAYwCW6gBjgJbqQGQAgqqAZICW6sBlAIKrAGVAlutAZYCW64BlwIKrwGaAlywAZsCYrEBnQJjsgGeAmOzAaECY7QBogJjtQGjAmO2AaUCY7cBpwIKuAGpAmO5AasCCroBrAJjuwGtAmO8Aa4CCr0BsQJkvgGyAmq_AbQCa8ABtQJrwQG4AmvCAbkCa8MBugJrxAG8AmvFAb4CCsYBwAJrxwHCAgrIAcMCa8kBxAJrygHFAgrLAcgCbMwByQJyzQHLAnPOAcwCc88BzwJz0AHQAnPRAdECc9IB0wJz0wHVAgrUAdcCc9UB2QIK1gHaAnPXAdsCc9gB3AIK2QHfAnTaAeACeuAB4gJ74QHyAnviAfUCe-MB9gJ75AH3AnvlAfkCe-YB-wIK5wH9AnvoAf8CCukBgAN76gGBA3vrAYIDCuwBhQOBAe0BhgOHAe4BhwN87wGIA3zwAYkDfPEBigN88gGLA3zzAY0DfPQBjwMK9QGRA3z2AZMDCvcBlAN8-AGVA3z5AZYDCvoBmQOIAfsBmgOOAfwBmwN9_QGcA33-AZ0Dff8BngN9gAKfA32BAqEDfYICowMKgwKlA32EAqcDCoUCqAN9hgKpA32HAqoDCogCrQOPAYkCrgOVAYoCrwN-iwKwA36MArEDfo0CsgN-jgKzA36PArUDfpACtwMKkQK5A36SArsDCpMCvAN-lAK9A36VAr4DCpYCwQOWAZcCwgOcAZgCwwMCmQLEAwKaAsUDApsCxgMCnALHAwKdAskDAp4CywMKnwLNAwKgAs8DCqEC0AMCogLRAwKjAtIDCqQC1QOdAaUC1gOjAaYC1wMDpwLYAwOoAtkDA6kC2gMDqgLbAwOrAt0DA6wC3wMKrQLhAwOuAuMDCq8C5AMDsALlAwOxAuYDCrIC6QOkAbMC6gOqAbQC6wMFtQLsAwW2Au0DBbcC7gMFuALvAwW5AvEDBboC8wMKuwL1AwW8AvcDCr0C-AMFvgL5AwW_AvoDCsAC_QOrAcEC_gOxAcIC_wMGwwKABAbEAoEEBsUCggQGxgKDBAbHAoUEBsgChwQKyQKJBAbKAosECssCjAQGzAKNBAbNAo4ECs4CkQSyAc8CkgS4AdACkwQI0QKUBAjSApUECNMClgQI1AKXBAjVApkECNYCmwQK1wKdBAjYAp8ECtkCoAQI2gKhBAjbAqIECtwCpQS5Ad0CpgS_AQ" + strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"user\",\"habit\",\"records\",\"_count\",\"habits\",\"checkIns\",\"list\",\"items\",\"checkLists\",\"templates\",\"owner\",\"project\",\"members\",\"column\",\"parent\",\"children\",\"assignee\",\"creator\",\"task\",\"tags\",\"tasks\",\"columns\",\"ownedProjects\",\"projectMembers\",\"assignedTasks\",\"createdTasks\",\"taskMembers\",\"User.findUnique\",\"User.findUniqueOrThrow\",\"User.findFirst\",\"User.findFirstOrThrow\",\"User.findMany\",\"data\",\"User.createOne\",\"User.createMany\",\"User.updateOne\",\"User.updateMany\",\"create\",\"update\",\"User.upsertOne\",\"User.deleteOne\",\"User.deleteMany\",\"having\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"User.groupBy\",\"User.aggregate\",\"Article.findUnique\",\"Article.findUniqueOrThrow\",\"Article.findFirst\",\"Article.findFirstOrThrow\",\"Article.findMany\",\"Article.createOne\",\"Article.createMany\",\"Article.updateOne\",\"Article.updateMany\",\"Article.upsertOne\",\"Article.deleteOne\",\"Article.deleteMany\",\"Article.groupBy\",\"Article.aggregate\",\"Strategy.findUnique\",\"Strategy.findUniqueOrThrow\",\"Strategy.findFirst\",\"Strategy.findFirstOrThrow\",\"Strategy.findMany\",\"Strategy.createOne\",\"Strategy.createMany\",\"Strategy.updateOne\",\"Strategy.updateMany\",\"Strategy.upsertOne\",\"Strategy.deleteOne\",\"Strategy.deleteMany\",\"Strategy.groupBy\",\"Strategy.aggregate\",\"indicator\",\"points\",\"Indicator.findUnique\",\"Indicator.findUniqueOrThrow\",\"Indicator.findFirst\",\"Indicator.findFirstOrThrow\",\"Indicator.findMany\",\"Indicator.createOne\",\"Indicator.createMany\",\"Indicator.updateOne\",\"Indicator.updateMany\",\"Indicator.upsertOne\",\"Indicator.deleteOne\",\"Indicator.deleteMany\",\"Indicator.groupBy\",\"Indicator.aggregate\",\"IndicatorPoint.findUnique\",\"IndicatorPoint.findUniqueOrThrow\",\"IndicatorPoint.findFirst\",\"IndicatorPoint.findFirstOrThrow\",\"IndicatorPoint.findMany\",\"IndicatorPoint.createOne\",\"IndicatorPoint.createMany\",\"IndicatorPoint.updateOne\",\"IndicatorPoint.updateMany\",\"IndicatorPoint.upsertOne\",\"IndicatorPoint.deleteOne\",\"IndicatorPoint.deleteMany\",\"IndicatorPoint.groupBy\",\"IndicatorPoint.aggregate\",\"News.findUnique\",\"News.findUniqueOrThrow\",\"News.findFirst\",\"News.findFirstOrThrow\",\"News.findMany\",\"News.createOne\",\"News.createMany\",\"News.updateOne\",\"News.updateMany\",\"News.upsertOne\",\"News.deleteOne\",\"News.deleteMany\",\"News.groupBy\",\"News.aggregate\",\"Alert.findUnique\",\"Alert.findUniqueOrThrow\",\"Alert.findFirst\",\"Alert.findFirstOrThrow\",\"Alert.findMany\",\"Alert.createOne\",\"Alert.createMany\",\"Alert.updateOne\",\"Alert.updateMany\",\"Alert.upsertOne\",\"Alert.deleteOne\",\"Alert.deleteMany\",\"Alert.groupBy\",\"Alert.aggregate\",\"ServerNode.findUnique\",\"ServerNode.findUniqueOrThrow\",\"ServerNode.findFirst\",\"ServerNode.findFirstOrThrow\",\"ServerNode.findMany\",\"ServerNode.createOne\",\"ServerNode.createMany\",\"ServerNode.updateOne\",\"ServerNode.updateMany\",\"ServerNode.upsertOne\",\"ServerNode.deleteOne\",\"ServerNode.deleteMany\",\"ServerNode.groupBy\",\"ServerNode.aggregate\",\"ServerNodeHistory.findUnique\",\"ServerNodeHistory.findUniqueOrThrow\",\"ServerNodeHistory.findFirst\",\"ServerNodeHistory.findFirstOrThrow\",\"ServerNodeHistory.findMany\",\"ServerNodeHistory.createOne\",\"ServerNodeHistory.createMany\",\"ServerNodeHistory.updateOne\",\"ServerNodeHistory.updateMany\",\"ServerNodeHistory.upsertOne\",\"ServerNodeHistory.deleteOne\",\"ServerNodeHistory.deleteMany\",\"ServerNodeHistory.groupBy\",\"ServerNodeHistory.aggregate\",\"ServiceCheck.findUnique\",\"ServiceCheck.findUniqueOrThrow\",\"ServiceCheck.findFirst\",\"ServiceCheck.findFirstOrThrow\",\"ServiceCheck.findMany\",\"ServiceCheck.createOne\",\"ServiceCheck.createMany\",\"ServiceCheck.updateOne\",\"ServiceCheck.updateMany\",\"ServiceCheck.upsertOne\",\"ServiceCheck.deleteOne\",\"ServiceCheck.deleteMany\",\"ServiceCheck.groupBy\",\"ServiceCheck.aggregate\",\"Econ_SowInventory.findUnique\",\"Econ_SowInventory.findUniqueOrThrow\",\"Econ_SowInventory.findFirst\",\"Econ_SowInventory.findFirstOrThrow\",\"Econ_SowInventory.findMany\",\"Econ_SowInventory.createOne\",\"Econ_SowInventory.createMany\",\"Econ_SowInventory.updateOne\",\"Econ_SowInventory.updateMany\",\"Econ_SowInventory.upsertOne\",\"Econ_SowInventory.deleteOne\",\"Econ_SowInventory.deleteMany\",\"Econ_SowInventory.groupBy\",\"Econ_SowInventory.aggregate\",\"ScraperCache.findUnique\",\"ScraperCache.findUniqueOrThrow\",\"ScraperCache.findFirst\",\"ScraperCache.findFirstOrThrow\",\"ScraperCache.findMany\",\"ScraperCache.createOne\",\"ScraperCache.createMany\",\"ScraperCache.updateOne\",\"ScraperCache.updateMany\",\"ScraperCache.upsertOne\",\"ScraperCache.deleteOne\",\"ScraperCache.deleteMany\",\"ScraperCache.groupBy\",\"ScraperCache.aggregate\",\"OilPriceHistory.findUnique\",\"OilPriceHistory.findUniqueOrThrow\",\"OilPriceHistory.findFirst\",\"OilPriceHistory.findFirstOrThrow\",\"OilPriceHistory.findMany\",\"OilPriceHistory.createOne\",\"OilPriceHistory.createMany\",\"OilPriceHistory.updateOne\",\"OilPriceHistory.updateMany\",\"OilPriceHistory.upsertOne\",\"OilPriceHistory.deleteOne\",\"OilPriceHistory.deleteMany\",\"OilPriceHistory.groupBy\",\"OilPriceHistory.aggregate\",\"MihomeAccount.findUnique\",\"MihomeAccount.findUniqueOrThrow\",\"MihomeAccount.findFirst\",\"MihomeAccount.findFirstOrThrow\",\"MihomeAccount.findMany\",\"MihomeAccount.createOne\",\"MihomeAccount.createMany\",\"MihomeAccount.updateOne\",\"MihomeAccount.updateMany\",\"MihomeAccount.upsertOne\",\"MihomeAccount.deleteOne\",\"MihomeAccount.deleteMany\",\"MihomeAccount.groupBy\",\"MihomeAccount.aggregate\",\"home\",\"device\",\"samples\",\"hours\",\"devices\",\"MihomeHome.findUnique\",\"MihomeHome.findUniqueOrThrow\",\"MihomeHome.findFirst\",\"MihomeHome.findFirstOrThrow\",\"MihomeHome.findMany\",\"MihomeHome.createOne\",\"MihomeHome.createMany\",\"MihomeHome.updateOne\",\"MihomeHome.updateMany\",\"MihomeHome.upsertOne\",\"MihomeHome.deleteOne\",\"MihomeHome.deleteMany\",\"MihomeHome.groupBy\",\"MihomeHome.aggregate\",\"MihomeDevice.findUnique\",\"MihomeDevice.findUniqueOrThrow\",\"MihomeDevice.findFirst\",\"MihomeDevice.findFirstOrThrow\",\"MihomeDevice.findMany\",\"MihomeDevice.createOne\",\"MihomeDevice.createMany\",\"MihomeDevice.updateOne\",\"MihomeDevice.updateMany\",\"MihomeDevice.upsertOne\",\"MihomeDevice.deleteOne\",\"MihomeDevice.deleteMany\",\"MihomeDevice.groupBy\",\"MihomeDevice.aggregate\",\"MihomeEnvSample.findUnique\",\"MihomeEnvSample.findUniqueOrThrow\",\"MihomeEnvSample.findFirst\",\"MihomeEnvSample.findFirstOrThrow\",\"MihomeEnvSample.findMany\",\"MihomeEnvSample.createOne\",\"MihomeEnvSample.createMany\",\"MihomeEnvSample.updateOne\",\"MihomeEnvSample.updateMany\",\"MihomeEnvSample.upsertOne\",\"MihomeEnvSample.deleteOne\",\"MihomeEnvSample.deleteMany\",\"MihomeEnvSample.groupBy\",\"MihomeEnvSample.aggregate\",\"MihomeEnvHour.findUnique\",\"MihomeEnvHour.findUniqueOrThrow\",\"MihomeEnvHour.findFirst\",\"MihomeEnvHour.findFirstOrThrow\",\"MihomeEnvHour.findMany\",\"MihomeEnvHour.createOne\",\"MihomeEnvHour.createMany\",\"MihomeEnvHour.updateOne\",\"MihomeEnvHour.updateMany\",\"MihomeEnvHour.upsertOne\",\"MihomeEnvHour.deleteOne\",\"MihomeEnvHour.deleteMany\",\"MihomeEnvHour.groupBy\",\"MihomeEnvHour.aggregate\",\"Habit.findUnique\",\"Habit.findUniqueOrThrow\",\"Habit.findFirst\",\"Habit.findFirstOrThrow\",\"Habit.findMany\",\"Habit.createOne\",\"Habit.createMany\",\"Habit.updateOne\",\"Habit.updateMany\",\"Habit.upsertOne\",\"Habit.deleteOne\",\"Habit.deleteMany\",\"Habit.groupBy\",\"Habit.aggregate\",\"CheckIn.findUnique\",\"CheckIn.findUniqueOrThrow\",\"CheckIn.findFirst\",\"CheckIn.findFirstOrThrow\",\"CheckIn.findMany\",\"CheckIn.createOne\",\"CheckIn.createMany\",\"CheckIn.updateOne\",\"CheckIn.updateMany\",\"CheckIn.upsertOne\",\"CheckIn.deleteOne\",\"CheckIn.deleteMany\",\"CheckIn.groupBy\",\"CheckIn.aggregate\",\"CheckList.findUnique\",\"CheckList.findUniqueOrThrow\",\"CheckList.findFirst\",\"CheckList.findFirstOrThrow\",\"CheckList.findMany\",\"CheckList.createOne\",\"CheckList.createMany\",\"CheckList.updateOne\",\"CheckList.updateMany\",\"CheckList.upsertOne\",\"CheckList.deleteOne\",\"CheckList.deleteMany\",\"CheckList.groupBy\",\"CheckList.aggregate\",\"CheckListItem.findUnique\",\"CheckListItem.findUniqueOrThrow\",\"CheckListItem.findFirst\",\"CheckListItem.findFirstOrThrow\",\"CheckListItem.findMany\",\"CheckListItem.createOne\",\"CheckListItem.createMany\",\"CheckListItem.updateOne\",\"CheckListItem.updateMany\",\"CheckListItem.upsertOne\",\"CheckListItem.deleteOne\",\"CheckListItem.deleteMany\",\"CheckListItem.groupBy\",\"CheckListItem.aggregate\",\"CheckListTemplate.findUnique\",\"CheckListTemplate.findUniqueOrThrow\",\"CheckListTemplate.findFirst\",\"CheckListTemplate.findFirstOrThrow\",\"CheckListTemplate.findMany\",\"CheckListTemplate.createOne\",\"CheckListTemplate.createMany\",\"CheckListTemplate.updateOne\",\"CheckListTemplate.updateMany\",\"CheckListTemplate.upsertOne\",\"CheckListTemplate.deleteOne\",\"CheckListTemplate.deleteMany\",\"CheckListTemplate.groupBy\",\"CheckListTemplate.aggregate\",\"Project.findUnique\",\"Project.findUniqueOrThrow\",\"Project.findFirst\",\"Project.findFirstOrThrow\",\"Project.findMany\",\"Project.createOne\",\"Project.createMany\",\"Project.updateOne\",\"Project.updateMany\",\"Project.upsertOne\",\"Project.deleteOne\",\"Project.deleteMany\",\"Project.groupBy\",\"Project.aggregate\",\"ProjectMember.findUnique\",\"ProjectMember.findUniqueOrThrow\",\"ProjectMember.findFirst\",\"ProjectMember.findFirstOrThrow\",\"ProjectMember.findMany\",\"ProjectMember.createOne\",\"ProjectMember.createMany\",\"ProjectMember.updateOne\",\"ProjectMember.updateMany\",\"ProjectMember.upsertOne\",\"ProjectMember.deleteOne\",\"ProjectMember.deleteMany\",\"ProjectMember.groupBy\",\"ProjectMember.aggregate\",\"BoardColumn.findUnique\",\"BoardColumn.findUniqueOrThrow\",\"BoardColumn.findFirst\",\"BoardColumn.findFirstOrThrow\",\"BoardColumn.findMany\",\"BoardColumn.createOne\",\"BoardColumn.createMany\",\"BoardColumn.updateOne\",\"BoardColumn.updateMany\",\"BoardColumn.upsertOne\",\"BoardColumn.deleteOne\",\"BoardColumn.deleteMany\",\"BoardColumn.groupBy\",\"BoardColumn.aggregate\",\"Task.findUnique\",\"Task.findUniqueOrThrow\",\"Task.findFirst\",\"Task.findFirstOrThrow\",\"Task.findMany\",\"Task.createOne\",\"Task.createMany\",\"Task.updateOne\",\"Task.updateMany\",\"Task.upsertOne\",\"Task.deleteOne\",\"Task.deleteMany\",\"Task.groupBy\",\"Task.aggregate\",\"TaskMember.findUnique\",\"TaskMember.findUniqueOrThrow\",\"TaskMember.findFirst\",\"TaskMember.findFirstOrThrow\",\"TaskMember.findMany\",\"TaskMember.createOne\",\"TaskMember.createMany\",\"TaskMember.updateOne\",\"TaskMember.updateMany\",\"TaskMember.upsertOne\",\"TaskMember.deleteOne\",\"TaskMember.deleteMany\",\"TaskMember.groupBy\",\"TaskMember.aggregate\",\"TaskTag.findUnique\",\"TaskTag.findUniqueOrThrow\",\"TaskTag.findFirst\",\"TaskTag.findFirstOrThrow\",\"TaskTag.findMany\",\"TaskTag.createOne\",\"TaskTag.createMany\",\"TaskTag.updateOne\",\"TaskTag.updateMany\",\"TaskTag.upsertOne\",\"TaskTag.deleteOne\",\"TaskTag.deleteMany\",\"TaskTag.groupBy\",\"TaskTag.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"taskId\",\"name\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"contains\",\"startsWith\",\"endsWith\",\"search\",\"not\",\"userId\",\"projectId\",\"columnId\",\"parentId\",\"title\",\"description\",\"kind\",\"markDate\",\"status\",\"doneAt\",\"assigneeId\",\"creatorId\",\"extras\",\"sortOrder\",\"archived\",\"archivedAt\",\"archiveSource\",\"createdAt\",\"updatedAt\",\"string_contains\",\"string_starts_with\",\"string_ends_with\",\"array_starts_with\",\"array_ends_with\",\"array_contains\",\"boundStatus\",\"retention\",\"permission\",\"ownerId\",\"isPersonal\",\"notes\",\"taskKinds\",\"icon\",\"autoArchive\",\"scene\",\"builtin\",\"listId\",\"note\",\"done\",\"habitId\",\"date\",\"seq\",\"source\",\"period\",\"target\",\"color\",\"deviceId\",\"hour\",\"temperatureAvg\",\"humidityAvg\",\"raw\",\"temperature\",\"humidity\",\"temperatureMin\",\"temperatureMax\",\"humidityMin\",\"humidityMax\",\"origin\",\"sampledAt\",\"did\",\"homeId\",\"model\",\"alias\",\"tempSiid\",\"tempPiid\",\"humSiid\",\"humPiid\",\"battSiid\",\"battPiid\",\"battery\",\"batteryAt\",\"enabled\",\"lastSyncAt\",\"every\",\"some\",\"none\",\"deviceId_hour\",\"deviceId_date\",\"key\",\"lastError\",\"province\",\"fuel\",\"price\",\"date_province_fuel\",\"scraperName\",\"lastDataHash\",\"lastUpdateAt\",\"metadata\",\"month\",\"inventory\",\"url\",\"latencyMs\",\"message\",\"lastCheckAt\",\"uuid\",\"cpu\",\"ram\",\"load\",\"disk\",\"netIn\",\"netOut\",\"process\",\"connections\",\"uuid_period\",\"cpuName\",\"os\",\"region\",\"memTotal\",\"diskTotal\",\"cpuCores\",\"cpuUsage\",\"ramUsed\",\"swapUsed\",\"load1\",\"load5\",\"load15\",\"diskUsed\",\"uptime\",\"recordedAt\",\"indicatorName\",\"valueA\",\"valueB\",\"sourceA\",\"sourceB\",\"diff\",\"diffRatio\",\"summary\",\"content\",\"publishedAt\",\"impactRank\",\"title_publishedAt\",\"indicatorId\",\"value\",\"groupName\",\"unit\",\"frequency\",\"hidden\",\"indicatorId_period\",\"slug\",\"email\",\"password\",\"taskId_userId\",\"projectId_name\",\"projectId_userId\",\"habitId_date_seq\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"createMany\",\"set\",\"disconnect\",\"delete\",\"connect\",\"updateMany\",\"deleteMany\",\"_relevance\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"), + graph: "9AvyAZYDEgcAAMkGACAIAADKBgAgCwAAywYAIAwAAMwGACAZAADNBgAgGgAAxgYAIBsAAL0GACAcAAC9BgAgHQAAvwYAIMMDAADIBgAwxAMAABoAEMUDAADIBgAwxgMCAAAAAcgDAQD5BQAh5gNAAPoFACHnA0AA-gUAIeAEAQAAAAHhBAEA-QUAIQEAAAABACARAwAAuAYAIAUAAMoGACDDAwAA1gYAMMQDAAADABDFAwAA1gYAMMYDAgD4BQAhyAMBAPkFACHVAwIA-AUAIeIDAgD4BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh9QMBAPkFACH6AwEA-QUAIYAEAQD5BQAhgQQCAPgFACGCBAEA-QUAIQMDAADgCgAgBQAA1goAIPEEAADwCgAgEQMAALgGACAFAADKBgAgwwMAANYGADDEAwAAAwAQxQMAANYGADDGAwIAAAAByAMBAPkFACHVAwIA-AUAIeIDAgD4BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh9QMBAPkFACH6AwEA-QUAIYAEAQD5BQAhgQQCAPgFACGCBAEA-QUAIQMAAAADACABAAAEADACAAAFACANAwAAuAYAIAQAANUGACDDAwAA1AYAMMQDAAAHABDFAwAA1AYAMMYDAgD4BQAh1QMCAPgFACHmA0AA-gUAIfoDAQD5BQAh_AMCAPgFACH9AwEA-QUAIf4DAgD4BQAh_wMBAPkFACEDAwAA4AoAIAQAAO4KACDxBAAA7woAIA4DAAC4BgAgBAAA1QYAIMMDAADUBgAwxAMAAAcAEMUDAADUBgAwxgMCAAAAAdUDAgD4BQAh5gNAAPoFACH6AwEA-QUAIfwDAgD4BQAh_QMBAPkFACH-AwIA-AUAIf8DAQD5BQAh5QQAANMGACADAAAABwAgAQAACAAwAgAACQAgAQAAAAcAIAMAAAAHACABAAAIADACAAAJACANAwAAuAYAIAoAANIGACDDAwAA0QYAMMQDAAANABDFAwAA0QYAMMYDAgD4BQAh1QMCAPgFACHZAwEA-QUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfcDAQD5BQAh-gMBAPkFACEDAwAA4AoAIAoAAOwKACDxBAAA7QoAIA0DAAC4BgAgCgAA0gYAIMMDAADRBgAwxAMAAA0AEMUDAADRBgAwxgMCAAAAAdUDAgD4BQAh2QMBAPkFACHjAyAAhwYAIeYDQAD6BQAh5wNAAPoFACH3AwEA-QUAIfoDAQD5BQAhAwAAAA0AIAEAAA4AMAIAAA8AIA0JAADQBgAgwwMAAM8GADDEAwAAEQAQxQMAAM8GADDGAwIA-AUAIdkDAQD5BQAh3gNAAIMGACHiAwIA-AUAIeYDQAD6BQAh5wNAAPoFACH5AwIA-AUAIfoDAQD5BQAh-wMgAIcGACEDCQAA6goAIN4DAADpBgAg8QQAAOsKACANCQAA0AYAIMMDAADPBgAwxAMAABEAEMUDAADPBgAwxgMCAAAAAdkDAQD5BQAh3gNAAIMGACHiAwIA-AUAIeYDQAD6BQAh5wNAAPoFACH5AwIA-AUAIfoDAQD5BQAh-wMgAIcGACEDAAAAEQAgAQAAEgAwAgAAEwAgAQAAABEAIAwDAAC-BgAgCgAAsAYAIMMDAADOBgAwxAMAABYAEMUDAADOBgAwxgMCAPgFACHIAwEA-QUAIdUDAgCGBgAh5gNAAPoFACHnA0AA-gUAIfcDAQD5BQAh-AMgAIcGACEDAwAA4AoAINUDAADpBgAg8QQAAOkKACAMAwAAvgYAIAoAALAGACDDAwAAzgYAMMQDAAAWABDFAwAAzgYAMMYDAgAAAAHIAwEA-QUAIdUDAgCGBgAh5gNAAPoFACHnA0AA-gUAIfcDAQD5BQAh-AMgAIcGACEDAAAAFgAgAQAAFwAwAgAAGAAgEgcAAMkGACAIAADKBgAgCwAAywYAIAwAAMwGACAZAADNBgAgGgAAxgYAIBsAAL0GACAcAAC9BgAgHQAAvwYAIMMDAADIBgAwxAMAABoAEMUDAADIBgAwxgMCAPgFACHIAwEA-QUAIeYDQAD6BQAh5wNAAPoFACHgBAEA-QUAIeEEAQD5BQAhAQAAABoAIBINAAC4BgAgDwAAxgYAIBcAAL0GACAYAADHBgAgwwMAAMUGADDEAwAAHAAQxQMAAMUGADDGAwIA-AUAIcgDAQD5BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh8QMCAPgFACHyAyAAhwYAIfMDAACwBgAg9AMAAP8FACD1AwEAhQYAIfYDAQD5BQAhBw0AAOAKACAPAADaCgAgFwAA2woAIBgAAOcKACD0AwAA6QYAIPUDAADpBgAg8QQAAOgKACASDQAAuAYAIA8AAMYGACAXAAC9BgAgGAAAxwYAIMMDAADFBgAwxAMAABwAEMUDAADFBgAwxgMCAAAAAcgDAQD5BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh8QMCAPgFACHyAyAAhwYAIfMDAACwBgAg9AMAAP8FACD1AwEAhQYAIfYDAQD5BQAhAwAAABwAIAEAAB0AMAIAAB4AIAoDAAC4BgAgDgAAugYAIMMDAADEBgAwxAMAACAAEMUDAADEBgAwxgMCAPgFACHVAwIA-AUAIdYDAgD4BQAh5gNAAPoFACHwAwEA-QUAIQMDAADgCgAgDgAA4QoAIPEEAADmCgAgCwMAALgGACAOAAC6BgAgwwMAAMQGADDEAwAAIAAQxQMAAMQGADDGAwIAAAAB1QMCAPgFACHWAwIA-AUAIeYDQAD6BQAh8AMBAPkFACHkBAAAwwYAIAMAAAAgACABAAAhADACAAAiACANDgAAugYAIBcAAL0GACDDAwAAwgYAMMQDAAAkABDFAwAAwgYAMMYDAgD4BQAhyAMBAPkFACHWAwIA-AUAIeIDAgD4BQAh5gNAAPoFACHnA0AA-gUAIe4DAQCFBgAh7wMBAPkFACEEDgAA4QoAIBcAANsKACDuAwAA6QYAIPEEAADlCgAgDg4AALoGACAXAAC9BgAgwwMAAMIGADDEAwAAJAAQxQMAAMIGADDGAwIAAAAByAMBAPkFACHWAwIA-AUAIeIDAgD4BQAh5gNAAPoFACHnA0AA-gUAIe4DAQCFBgAh7wMBAPkFACHjBAAAwQYAIAMAAAAkACABAAAlADACAAAmACAeDgAAugYAIA8AAL8GACAQAAC7BgAgEQAAvAYAIBIAAL0GACATAAC-BgAgFAAAuAYAIBYAAMAGACDDAwAAuQYAMMQDAAAoABDFAwAAuQYAMMYDAgD4BQAh1gMCAPgFACHXAwIA-AUAIdgDAgCGBgAh2QMBAPkFACHaAwEA-QUAIdsDAQCFBgAh3ANAAIMGACHdAwEA-QUAId4DQACDBgAh3wMCAIYGACHgAwIA-AUAIeEDAACwBgAg4gMCAPgFACHjAyAAhwYAIeQDQACDBgAh5QMBAIUGACHmA0AA-gUAIecDQAD6BQAhEA4AAOEKACAPAADcCgAgEAAA4goAIBEAAN4KACASAADbCgAgEwAA4AoAIBQAAOAKACAWAADjCgAg2AMAAOkGACDbAwAA6QYAINwDAADpBgAg3gMAAOkGACDfAwAA6QYAIOQDAADpBgAg5QMAAOkGACDxBAAA5AoAIB4OAAC6BgAgDwAAvwYAIBAAALsGACARAAC8BgAgEgAAvQYAIBMAAL4GACAUAAC4BgAgFgAAwAYAIMMDAAC5BgAwxAMAACgAEMUDAAC5BgAwxgMCAAAAAdYDAgD4BQAh1wMCAPgFACHYAwIAhgYAIdkDAQD5BQAh2gMBAPkFACHbAwEAhQYAIdwDQACDBgAh3QMBAPkFACHeA0AAgwYAId8DAgCGBgAh4AMCAPgFACHhAwAAsAYAIOIDAgD4BQAh4wMgAIcGACHkA0AAgwYAIeUDAQCFBgAh5gNAAPoFACHnA0AA-gUAIQMAAAAoACABAAApADACAAAqACABAAAAKAAgAwAAACgAIAEAACkAMAIAACoAIAEAAAAaACAIAwAAuAYAIBUAALUGACDDAwAAtwYAMMQDAAAvABDFAwAAtwYAMMYDAgD4BQAhxwMCAPgFACHVAwIA-AUAIQIDAADgCgAgFQAA3goAIAkDAAC4BgAgFQAAtQYAIMMDAAC3BgAwxAMAAC8AEMUDAAC3BgAwxgMCAAAAAccDAgD4BQAh1QMCAPgFACHiBAAAtgYAIAMAAAAvACABAAAwADACAAAxACAHFQAAtQYAIMMDAAC0BgAwxAMAADMAEMUDAAC0BgAwxgMCAPgFACHHAwIA-AUAIcgDAQD5BQAhAhUAAN4KACDxBAAA3woAIAcVAAC1BgAgwwMAALQGADDEAwAAMwAQxQMAALQGADDGAwIAAAABxwMCAPgFACHIAwEA-QUAIQMAAAAzACABAAA0ADACAAA1ACABAAAAKAAgAQAAAC8AIAEAAAAzACABAAAAKAAgAwAAACgAIAEAACkAMAIAACoAIAEAAAAgACABAAAAJAAgAQAAACgAIAMAAAAgACABAAAhADACAAAiACADAAAAKAAgAQAAKQAwAgAAKgAgAwAAACgAIAEAACkAMAIAACoAIAMAAAAvACABAAAwADACAAAxACABAAAAAwAgAQAAAAcAIAEAAAANACABAAAAFgAgAQAAABwAIAEAAAAgACABAAAAKAAgAQAAACgAIAEAAAAvACABAAAAAQAgCgcAANUKACAIAADWCgAgCwAA1woAIAwAANgKACAZAADZCgAgGgAA2goAIBsAANsKACAcAADbCgAgHQAA3AoAIPEEAADdCgAgAwAAABoAIAEAAE0AMAIAAAEAIAMAAAAaACABAABNADACAAABACADAAAAGgAgAQAATQAwAgAAAQAgDwcAAMwKACAIAADNCgAgCwAAzgoAIAwAAM8KACAZAADQCgAgGgAA0QoAIBsAANIKACAcAADTCgAgHQAA1AoAIMYDAgAAAAHIAwEAAAAB5gNAAAAAAecDQAAAAAHgBAEAAAAB4QQBAAAAAQEjAABRACAGxgMCAAAAAcgDAQAAAAHmA0AAAAAB5wNAAAAAAeAEAQAAAAHhBAEAAAABASMAAFMAMA8HAADmCQAgCAAA5wkAIAsAAOgJACAMAADpCQAgGQAA6gkAIBoAAOsJACAbAADsCQAgHAAA7QkAIB0AAO4JACDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACHnA0AA8gYAIeAEAQDcBgAh4QQBANwGACECAAAAAQAgIwAAVQAgBsYDAgDdBgAhyAMBANwGACHmA0AA8gYAIecDQADyBgAh4AQBANwGACHhBAEA3AYAIQIAAAAaACAjAABXACADAAAAAQAgKAAAUQAgKQAAVQAgAQAAAAEAIAEAAAAaACAFBgAA4QkAIC4AAOIJACAvAADlCQAgMAAA5AkAIDEAAOMJACAJwwMAALMGADDEAwAAXQAQxQMAALMGADDGAwIAzAUAIcgDAQDNBQAh5gNAANoFACHnA0AA2gUAIeAEAQDNBQAh4QQBAM0FACEDAAAAGgAgAQAAXAAwLQAAXQAgAwAAABoAIAEAAE0AMAIAAAEAIArDAwAAsgYAMMQDAABjABDFAwAAsgYAMMYDAgAAAAHZAwEA-QUAIeYDQAD6BQAh5wNAAPoFACH9AwEA-QUAIdQEAQD5BQAh3wQBAAAAAQEAAABgACABAAAAYAAgCsMDAACyBgAwxAMAAGMAEMUDAACyBgAwxgMCAPgFACHZAwEA-QUAIeYDQAD6BQAh5wNAAPoFACH9AwEA-QUAIdQEAQD5BQAh3wQBAPkFACEB8QQAAOAJACADAAAAYwAgAQAAZAAwAgAAYAAgAwAAAGMAIAEAAGQAMAIAAGAAIAMAAABjACABAABkADACAABgACAHxgMCAAAAAdkDAQAAAAHmA0AAAAAB5wNAAAAAAf0DAQAAAAHUBAEAAAAB3wQBAAAAAQEjAABoACAHxgMCAAAAAdkDAQAAAAHmA0AAAAAB5wNAAAAAAf0DAQAAAAHUBAEAAAAB3wQBAAAAAQEjAABqADAHxgMCAN0GACHZAwEA3AYAIeYDQADyBgAh5wNAAPIGACH9AwEA3AYAIdQEAQDcBgAh3wQBANwGACECAAAAYAAgIwAAbAAgB8YDAgDdBgAh2QMBANwGACHmA0AA8gYAIecDQADyBgAh_QMBANwGACHUBAEA3AYAId8EAQDcBgAhAgAAAGMAICMAAG4AIAMAAABgACAoAABoACApAABsACABAAAAYAAgAQAAAGMAIAUGAADbCQAgLgAA3AkAIC8AAN8JACAwAADeCQAgMQAA3QkAIArDAwAAsQYAMMQDAAB0ABDFAwAAsQYAMMYDAgDMBQAh2QMBAM0FACHmA0AA2gUAIecDQADaBQAh_QMBAM0FACHUBAEAzQUAId8EAQDNBQAhAwAAAGMAIAEAAHMAMC0AAHQAIAMAAABjACABAABkADACAABgACAJIwAAsAYAIMMDAACvBgAwxAMAAHoAEMUDAACvBgAwxgMCAAAAAcgDAQD5BQAh2gMBAPkFACHmA0AA-gUAIecDQAD6BQAhAQAAAHcAIAEAAAB3ACAJIwAAsAYAIMMDAACvBgAwxAMAAHoAEMUDAACvBgAwxgMCAPgFACHIAwEA-QUAIdoDAQD5BQAh5gNAAPoFACHnA0AA-gUAIQHxBAAA2gkAIAMAAAB6ACABAAB7ADACAAB3ACADAAAAegAgAQAAewAwAgAAdwAgAwAAAHoAIAEAAHsAMAIAAHcAIAYjgAAAAAHGAwIAAAAByAMBAAAAAdoDAQAAAAHmA0AAAAAB5wNAAAAAAQEjAAB_ACAGI4AAAAABxgMCAAAAAcgDAQAAAAHaAwEAAAAB5gNAAAAAAecDQAAAAAEBIwAAgQEAMAYjgAAAAAHGAwIA3QYAIcgDAQDcBgAh2gMBANwGACHmA0AA8gYAIecDQADyBgAhAgAAAHcAICMAAIMBACAGI4AAAAABxgMCAN0GACHIAwEA3AYAIdoDAQDcBgAh5gNAAPIGACHnA0AA8gYAIQIAAAB6ACAjAACFAQAgAwAAAHcAICgAAH8AICkAAIMBACABAAAAdwAgAQAAAHoAIAUGAADVCQAgLgAA1gkAIC8AANkJACAwAADYCQAgMQAA1wkAIAkjAADYBQAgwwMAAK4GADDEAwAAiwEAEMUDAACuBgAwxgMCAMwFACHIAwEAzQUAIdoDAQDNBQAh5gNAANoFACHnA0AA2gUAIQMAAAB6ACABAACKAQAwLQAAiwEAIAMAAAB6ACABAAB7ADACAAB3ACAOUQAAqgYAIMMDAACpBgAwxAMAAJYBABDFAwAAqQYAMMYDAgAAAAHIAwEAAAAB2QMBAPkFACHmA0AA-gUAIecDQAD6BQAh_wMBAPkFACHaBAEA-QUAIdsEAQD5BQAh3AQBAPkFACHdBCAAhwYAIQEAAACOAQAgClAAAK0GACDDAwAArAYAMMQDAACQAQAQxQMAAKwGADDGAwIA-AUAIeYDQAD6BQAh5wNAAPoFACGABAEA-QUAIdgEAgD4BQAh2QQIAJEGACECUAAA0wkAIPEEAADUCQAgC1AAAK0GACDDAwAArAYAMMQDAACQAQAQxQMAAKwGADDGAwIAAAAB5gNAAPoFACHnA0AA-gUAIYAEAQD5BQAh2AQCAPgFACHZBAgAkQYAId4EAACrBgAgAwAAAJABACABAACRAQAwAgAAkgEAIAEAAACQAQAgAQAAAI4BACAOUQAAqgYAIMMDAACpBgAwxAMAAJYBABDFAwAAqQYAMMYDAgD4BQAhyAMBAPkFACHZAwEA-QUAIeYDQAD6BQAh5wNAAPoFACH_AwEA-QUAIdoEAQD5BQAh2wQBAPkFACHcBAEA-QUAId0EIACHBgAhAlEAANEJACDxBAAA0gkAIAMAAACWAQAgAQAAlwEAMAIAAI4BACADAAAAlgEAIAEAAJcBADACAACOAQAgAwAAAJYBACABAACXAQAwAgAAjgEAIAtRAADQCQAgxgMCAAAAAcgDAQAAAAHZAwEAAAAB5gNAAAAAAecDQAAAAAH_AwEAAAAB2gQBAAAAAdsEAQAAAAHcBAEAAAAB3QQgAAAAAQEjAACbAQAgCsYDAgAAAAHIAwEAAAAB2QMBAAAAAeYDQAAAAAHnA0AAAAAB_wMBAAAAAdoEAQAAAAHbBAEAAAAB3AQBAAAAAd0EIAAAAAEBIwAAnQEAMAtRAADDCQAgxgMCAN0GACHIAwEA3AYAIdkDAQDcBgAh5gNAAPIGACHnA0AA8gYAIf8DAQDcBgAh2gQBANwGACHbBAEA3AYAIdwEAQDcBgAh3QQgAPEGACECAAAAjgEAICMAAJ8BACAKxgMCAN0GACHIAwEA3AYAIdkDAQDcBgAh5gNAAPIGACHnA0AA8gYAIf8DAQDcBgAh2gQBANwGACHbBAEA3AYAIdwEAQDcBgAh3QQgAPEGACECAAAAlgEAICMAAKEBACADAAAAjgEAICgAAJsBACApAACfAQAgAQAAAI4BACABAAAAlgEAIAUGAAC-CQAgLgAAvwkAIC8AAMIJACAwAADBCQAgMQAAwAkAIA3DAwAAqAYAMMQDAACnAQAQxQMAAKgGADDGAwIAzAUAIcgDAQDNBQAh2QMBAM0FACHmA0AA2gUAIecDQADaBQAh_wMBAM0FACHaBAEAzQUAIdsEAQDNBQAh3AQBAM0FACHdBCAA2QUAIQMAAACWAQAgAQAApgEAMC0AAKcBACADAAAAlgEAIAEAAJcBADACAACOAQAgAQAAAJIBACABAAAAkgEAIAMAAACQAQAgAQAAkQEAMAIAAJIBACADAAAAkAEAIAEAAJEBADACAACSAQAgAwAAAJABACABAACRAQAwAgAAkgEAIAdQAAC9CQAgxgMCAAAAAeYDQAAAAAHnA0AAAAABgAQBAAAAAdgEAgAAAAHZBAgAAAABASMAAK8BACAGxgMCAAAAAeYDQAAAAAHnA0AAAAABgAQBAAAAAdgEAgAAAAHZBAgAAAABASMAALEBADAHUAAAvAkAIMYDAgDdBgAh5gNAAPIGACHnA0AA8gYAIYAEAQDcBgAh2AQCAN0GACHZBAgAigkAIQIAAACSAQAgIwAAswEAIAbGAwIA3QYAIeYDQADyBgAh5wNAAPIGACGABAEA3AYAIdgEAgDdBgAh2QQIAIoJACECAAAAkAEAICMAALUBACADAAAAkgEAICgAAK8BACApAACzAQAgAQAAAJIBACABAAAAkAEAIAUGAAC3CQAgLgAAuAkAIC8AALsJACAwAAC6CQAgMQAAuQkAIAnDAwAApwYAMMQDAAC7AQAQxQMAAKcGADDGAwIAzAUAIeYDQADaBQAh5wNAANoFACGABAEAzQUAIdgEAgDMBQAh2QQIAI4GACEDAAAAkAEAIAEAALoBADAtAAC7AQAgAwAAAJABACABAACRAQAwAgAAkgEAIA3DAwAApQYAMMQDAADBAQAQxQMAAKUGADDGAwIAAAAB2QMBAPkFACHmA0AA-gUAIf8DAQD5BQAhrwQBAPkFACHTBAEA-QUAIdQEAQCFBgAh1QRAAPoFACHWBAIA-AUAIdcEAACmBgAgAQAAAL4BACABAAAAvgEAIAzDAwAApQYAMMQDAADBAQAQxQMAAKUGADDGAwIA-AUAIdkDAQD5BQAh5gNAAPoFACH_AwEA-QUAIa8EAQD5BQAh0wQBAPkFACHUBAEAhQYAIdUEQAD6BQAh1gQCAPgFACEC1AQAAOkGACDxBAAAtgkAIAMAAADBAQAgAQAAwgEAMAIAAL4BACADAAAAwQEAIAEAAMIBADACAAC-AQAgAwAAAMEBACABAADCAQAwAgAAvgEAIAnGAwIAAAAB2QMBAAAAAeYDQAAAAAH_AwEAAAABrwQBAAAAAdMEAQAAAAHUBAEAAAAB1QRAAAAAAdYEAgAAAAEBIwAAxgEAIAnGAwIAAAAB2QMBAAAAAeYDQAAAAAH_AwEAAAABrwQBAAAAAdMEAQAAAAHUBAEAAAAB1QRAAAAAAdYEAgAAAAEBIwAAyAEAMAnGAwIA3QYAIdkDAQDcBgAh5gNAAPIGACH_AwEA3AYAIa8EAQDcBgAh0wQBANwGACHUBAEA7wYAIdUEQADyBgAh1gQCAN0GACECAAAAvgEAICMAAMoBACAJxgMCAN0GACHZAwEA3AYAIeYDQADyBgAh_wMBANwGACGvBAEA3AYAIdMEAQDcBgAh1AQBAO8GACHVBEAA8gYAIdYEAgDdBgAhAgAAAMEBACAjAADMAQAgAwAAAL4BACAoAADGAQAgKQAAygEAIAEAAAC-AQAgAQAAAMEBACAGBgAAsQkAIC4AALIJACAvAAC1CQAgMAAAtAkAIDEAALMJACDUBAAA6QYAIAzDAwAApAYAMMQDAADSAQAQxQMAAKQGADDGAwIAzAUAIdkDAQDNBQAh5gNAANoFACH_AwEAzQUAIa8EAQDNBQAh0wQBAM0FACHUBAEA1gUAIdUEQADaBQAh1gQCAMwFACEDAAAAwQEAIAEAANEBADAtAADSAQAgAwAAAMEBACABAADCAQAwAgAAvgEAIA3DAwAAowYAMMQDAADYAQAQxQMAAKMGADDGAwIAAAAB5gNAAPoFACGABAEA-QUAIcwEAQD5BQAhzQQIAJEGACHOBAgAkQYAIc8EAQD5BQAh0AQBAPkFACHRBAgAkQYAIdIECACRBgAhAQAAANUBACABAAAA1QEAIA3DAwAAowYAMMQDAADYAQAQxQMAAKMGADDGAwIA-AUAIeYDQAD6BQAhgAQBAPkFACHMBAEA-QUAIc0ECACRBgAhzgQIAJEGACHPBAEA-QUAIdAEAQD5BQAh0QQIAJEGACHSBAgAkQYAIQHxBAAAsAkAIAMAAADYAQAgAQAA2QEAMAIAANUBACADAAAA2AEAIAEAANkBADACAADVAQAgAwAAANgBACABAADZAQAwAgAA1QEAIArGAwIAAAAB5gNAAAAAAYAEAQAAAAHMBAEAAAABzQQIAAAAAc4ECAAAAAHPBAEAAAAB0AQBAAAAAdEECAAAAAHSBAgAAAABASMAAN0BACAKxgMCAAAAAeYDQAAAAAGABAEAAAABzAQBAAAAAc0ECAAAAAHOBAgAAAABzwQBAAAAAdAEAQAAAAHRBAgAAAAB0gQIAAAAAQEjAADfAQAwCsYDAgDdBgAh5gNAAPIGACGABAEA3AYAIcwEAQDcBgAhzQQIAIoJACHOBAgAigkAIc8EAQDcBgAh0AQBANwGACHRBAgAigkAIdIECACKCQAhAgAAANUBACAjAADhAQAgCsYDAgDdBgAh5gNAAPIGACGABAEA3AYAIcwEAQDcBgAhzQQIAIoJACHOBAgAigkAIc8EAQDcBgAh0AQBANwGACHRBAgAigkAIdIECACKCQAhAgAAANgBACAjAADjAQAgAwAAANUBACAoAADdAQAgKQAA4QEAIAEAAADVAQAgAQAAANgBACAFBgAAqwkAIC4AAKwJACAvAACvCQAgMAAArgkAIDEAAK0JACANwwMAAKIGADDEAwAA6QEAEMUDAACiBgAwxgMCAMwFACHmA0AA2gUAIYAEAQDNBQAhzAQBAM0FACHNBAgAjgYAIc4ECACOBgAhzwQBAM0FACHQBAEAzQUAIdEECACOBgAh0gQIAI4GACEDAAAA2AEAIAEAAOgBADAtAADpAQAgAwAAANgBACABAADZAQAwAgAA1QEAIBzDAwAAoQYAMMQDAADvAQAQxQMAAKEGADDGAwIAAAAByAMBAPkFACHdAwEA-QUAIeYDQAD6BQAh5wNAAPoFACGzBAEAAAABuAQEAJ4GACG5BAQAngYAIboEAgD4BQAhuwQCAPgFACG9BAEA-QUAIb4EAQD5BQAhvwQBAPkFACHABAQAngYAIcEEBACeBgAhwgQCAPgFACHDBAgAkQYAIcQEBACeBgAhxQQEAJ4GACHGBAgAkQYAIccECACRBgAhyAQIAJEGACHJBAQAngYAIcoEBACeBgAhywRAAPoFACEBAAAA7AEAIAEAAADsAQAgHMMDAAChBgAwxAMAAO8BABDFAwAAoQYAMMYDAgD4BQAhyAMBAPkFACHdAwEA-QUAIeYDQAD6BQAh5wNAAPoFACGzBAEA-QUAIbgEBACeBgAhuQQEAJ4GACG6BAIA-AUAIbsEAgD4BQAhvQQBAPkFACG-BAEA-QUAIb8EAQD5BQAhwAQEAJ4GACHBBAQAngYAIcIEAgD4BQAhwwQIAJEGACHEBAQAngYAIcUEBACeBgAhxgQIAJEGACHHBAgAkQYAIcgECACRBgAhyQQEAJ4GACHKBAQAngYAIcsEQAD6BQAhAfEEAACqCQAgAwAAAO8BACABAADwAQAwAgAA7AEAIAMAAADvAQAgAQAA8AEAMAIAAOwBACADAAAA7wEAIAEAAPABADACAADsAQAgGcYDAgAAAAHIAwEAAAAB3QMBAAAAAeYDQAAAAAHnA0AAAAABswQBAAAAAbgEBAAAAAG5BAQAAAABugQCAAAAAbsEAgAAAAG9BAEAAAABvgQBAAAAAb8EAQAAAAHABAQAAAABwQQEAAAAAcIEAgAAAAHDBAgAAAABxAQEAAAAAcUEBAAAAAHGBAgAAAABxwQIAAAAAcgECAAAAAHJBAQAAAABygQEAAAAAcsEQAAAAAEBIwAA9AEAIBnGAwIAAAAByAMBAAAAAd0DAQAAAAHmA0AAAAAB5wNAAAAAAbMEAQAAAAG4BAQAAAABuQQEAAAAAboEAgAAAAG7BAIAAAABvQQBAAAAAb4EAQAAAAG_BAEAAAABwAQEAAAAAcEEBAAAAAHCBAIAAAABwwQIAAAAAcQEBAAAAAHFBAQAAAABxgQIAAAAAccECAAAAAHIBAgAAAAByQQEAAAAAcoEBAAAAAHLBEAAAAABASMAAPYBADAZxgMCAN0GACHIAwEA3AYAId0DAQDcBgAh5gNAAPIGACHnA0AA8gYAIbMEAQDcBgAhuAQEAKMJACG5BAQAowkAIboEAgDdBgAhuwQCAN0GACG9BAEA3AYAIb4EAQDcBgAhvwQBANwGACHABAQAowkAIcEEBACjCQAhwgQCAN0GACHDBAgAigkAIcQEBACjCQAhxQQEAKMJACHGBAgAigkAIccECACKCQAhyAQIAIoJACHJBAQAowkAIcoEBACjCQAhywRAAPIGACECAAAA7AEAICMAAPgBACAZxgMCAN0GACHIAwEA3AYAId0DAQDcBgAh5gNAAPIGACHnA0AA8gYAIbMEAQDcBgAhuAQEAKMJACG5BAQAowkAIboEAgDdBgAhuwQCAN0GACG9BAEA3AYAIb4EAQDcBgAhvwQBANwGACHABAQAowkAIcEEBACjCQAhwgQCAN0GACHDBAgAigkAIcQEBACjCQAhxQQEAKMJACHGBAgAigkAIccECACKCQAhyAQIAIoJACHJBAQAowkAIcoEBACjCQAhywRAAPIGACECAAAA7wEAICMAAPoBACADAAAA7AEAICgAAPQBACApAAD4AQAgAQAAAOwBACABAAAA7wEAIAUGAAClCQAgLgAApgkAIC8AAKkJACAwAACoCQAgMQAApwkAIBzDAwAAoAYAMMQDAACAAgAQxQMAAKAGADDGAwIAzAUAIcgDAQDNBQAh3QMBAM0FACHmA0AA2gUAIecDQADaBQAhswQBAM0FACG4BAQAmgYAIbkEBACaBgAhugQCAMwFACG7BAIAzAUAIb0EAQDNBQAhvgQBAM0FACG_BAEAzQUAIcAEBACaBgAhwQQEAJoGACHCBAIAzAUAIcMECACOBgAhxAQEAJoGACHFBAQAmgYAIcYECACOBgAhxwQIAI4GACHIBAgAjgYAIckEBACaBgAhygQEAJoGACHLBEAA2gUAIQMAAADvAQAgAQAA_wEAMC0AAIACACADAAAA7wEAIAEAAPABADACAADsAQAgEMMDAACdBgAwxAMAAIYCABDFAwAAnQYAMMYDAgAAAAHmA0AA-gUAIYAEQAD6BQAhswQBAPkFACG0BAgAkQYAIbUEBACeBgAhtgQIAJEGACG3BAQAngYAIbgEBACeBgAhuQQEAJ4GACG6BAIA-AUAIbsEAgD4BQAhvAQAAJ8GACABAAAAgwIAIAEAAACDAgAgD8MDAACdBgAwxAMAAIYCABDFAwAAnQYAMMYDAgD4BQAh5gNAAPoFACGABEAA-gUAIbMEAQD5BQAhtAQIAJEGACG1BAQAngYAIbYECACRBgAhtwQEAJ4GACG4BAQAngYAIbkEBACeBgAhugQCAPgFACG7BAIA-AUAIQHxBAAApAkAIAMAAACGAgAgAQAAhwIAMAIAAIMCACADAAAAhgIAIAEAAIcCADACAACDAgAgAwAAAIYCACABAACHAgAwAgAAgwIAIAzGAwIAAAAB5gNAAAAAAYAEQAAAAAGzBAEAAAABtAQIAAAAAbUEBAAAAAG2BAgAAAABtwQEAAAAAbgEBAAAAAG5BAQAAAABugQCAAAAAbsEAgAAAAEBIwAAiwIAIAzGAwIAAAAB5gNAAAAAAYAEQAAAAAGzBAEAAAABtAQIAAAAAbUEBAAAAAG2BAgAAAABtwQEAAAAAbgEBAAAAAG5BAQAAAABugQCAAAAAbsEAgAAAAEBIwAAjQIAMAzGAwIA3QYAIeYDQADyBgAhgARAAPIGACGzBAEA3AYAIbQECACKCQAhtQQEAKMJACG2BAgAigkAIbcEBACjCQAhuAQEAKMJACG5BAQAowkAIboEAgDdBgAhuwQCAN0GACECAAAAgwIAICMAAI8CACAMxgMCAN0GACHmA0AA8gYAIYAEQADyBgAhswQBANwGACG0BAgAigkAIbUEBACjCQAhtgQIAIoJACG3BAQAowkAIbgEBACjCQAhuQQEAKMJACG6BAIA3QYAIbsEAgDdBgAhAgAAAIYCACAjAACRAgAgAwAAAIMCACAoAACLAgAgKQAAjwIAIAEAAACDAgAgAQAAAIYCACAFBgAAngkAIC4AAJ8JACAvAACiCQAgMAAAoQkAIDEAAKAJACAPwwMAAJkGADDEAwAAlwIAEMUDAACZBgAwxgMCAMwFACHmA0AA2gUAIYAEQADaBQAhswQBAM0FACG0BAgAjgYAIbUEBACaBgAhtgQIAI4GACG3BAQAmgYAIbgEBACaBgAhuQQEAJoGACG6BAIAzAUAIbsEAgDMBQAhAwAAAIYCACABAACWAgAwLQAAlwIAIAMAAACGAgAgAQAAhwIAMAIAAIMCACAMwwMAAJgGADDEAwAAnQIAEMUDAACYBgAwxgMCAAAAAcgDAQAAAAHdAwEA-QUAIeYDQAD6BQAh5wNAAPoFACGvBAEA-QUAIbAEAgD4BQAhsQQBAPkFACGyBEAA-gUAIQEAAACaAgAgAQAAAJoCACAMwwMAAJgGADDEAwAAnQIAEMUDAACYBgAwxgMCAPgFACHIAwEA-QUAId0DAQD5BQAh5gNAAPoFACHnA0AA-gUAIa8EAQD5BQAhsAQCAPgFACGxBAEA-QUAIbIEQAD6BQAhAfEEAACdCQAgAwAAAJ0CACABAACeAgAwAgAAmgIAIAMAAACdAgAgAQAAngIAMAIAAJoCACADAAAAnQIAIAEAAJ4CADACAACaAgAgCcYDAgAAAAHIAwEAAAAB3QMBAAAAAeYDQAAAAAHnA0AAAAABrwQBAAAAAbAEAgAAAAGxBAEAAAABsgRAAAAAAQEjAACiAgAgCcYDAgAAAAHIAwEAAAAB3QMBAAAAAeYDQAAAAAHnA0AAAAABrwQBAAAAAbAEAgAAAAGxBAEAAAABsgRAAAAAAQEjAACkAgAwCcYDAgDdBgAhyAMBANwGACHdAwEA3AYAIeYDQADyBgAh5wNAAPIGACGvBAEA3AYAIbAEAgDdBgAhsQQBANwGACGyBEAA8gYAIQIAAACaAgAgIwAApgIAIAnGAwIA3QYAIcgDAQDcBgAh3QMBANwGACHmA0AA8gYAIecDQADyBgAhrwQBANwGACGwBAIA3QYAIbEEAQDcBgAhsgRAAPIGACECAAAAnQIAICMAAKgCACADAAAAmgIAICgAAKICACApAACmAgAgAQAAAJoCACABAAAAnQIAIAUGAACYCQAgLgAAmQkAIC8AAJwJACAwAACbCQAgMQAAmgkAIAzDAwAAlwYAMMQDAACuAgAQxQMAAJcGADDGAwIAzAUAIcgDAQDNBQAh3QMBAM0FACHmA0AA2gUAIecDQADaBQAhrwQBAM0FACGwBAIAzAUAIbEEAQDNBQAhsgRAANoFACEDAAAAnQIAIAEAAK0CADAtAACuAgAgAwAAAJ0CACABAACeAgAwAgAAmgIAIAjDAwAAlgYAMMQDAAC0AgAQxQMAAJYGADDGAwIAAAAB5gNAAPoFACHnA0AA-gUAIa0EAQAAAAGuBAIA-AUAIQEAAACxAgAgAQAAALECACAIwwMAAJYGADDEAwAAtAIAEMUDAACWBgAwxgMCAPgFACHmA0AA-gUAIecDQAD6BQAhrQQBAPkFACGuBAIA-AUAIQHxBAAAlwkAIAMAAAC0AgAgAQAAtQIAMAIAALECACADAAAAtAIAIAEAALUCADACAACxAgAgAwAAALQCACABAAC1AgAwAgAAsQIAIAXGAwIAAAAB5gNAAAAAAecDQAAAAAGtBAEAAAABrgQCAAAAAQEjAAC5AgAgBcYDAgAAAAHmA0AAAAAB5wNAAAAAAa0EAQAAAAGuBAIAAAABASMAALsCADAFxgMCAN0GACHmA0AA8gYAIecDQADyBgAhrQQBANwGACGuBAIA3QYAIQIAAACxAgAgIwAAvQIAIAXGAwIA3QYAIeYDQADyBgAh5wNAAPIGACGtBAEA3AYAIa4EAgDdBgAhAgAAALQCACAjAAC_AgAgAwAAALECACAoAAC5AgAgKQAAvQIAIAEAAACxAgAgAQAAALQCACAFBgAAkgkAIC4AAJMJACAvAACWCQAgMAAAlQkAIDEAAJQJACAIwwMAAJUGADDEAwAAxQIAEMUDAACVBgAwxgMCAMwFACHmA0AA2gUAIecDQADaBQAhrQQBAM0FACGuBAIAzAUAIQMAAAC0AgAgAQAAxAIAMC0AAMUCACADAAAAtAIAIAEAALUCADACAACxAgAgCsMDAACUBgAwxAMAAMsCABDFAwAAlAYAMMYDAgAAAAHmA0AA-gUAIecDQAD6BQAhqQQBAAAAAaoEAQCFBgAhqwRAAPoFACGsBAAA_wUAIAEAAADIAgAgAQAAAMgCACAKwwMAAJQGADDEAwAAywIAEMUDAACUBgAwxgMCAPgFACHmA0AA-gUAIecDQAD6BQAhqQQBAPkFACGqBAEAhQYAIasEQAD6BQAhrAQAAP8FACADqgQAAOkGACCsBAAA6QYAIPEEAACRCQAgAwAAAMsCACABAADMAgAwAgAAyAIAIAMAAADLAgAgAQAAzAIAMAIAAMgCACADAAAAywIAIAEAAMwCADACAADIAgAgB8YDAgAAAAHmA0AAAAAB5wNAAAAAAakEAQAAAAGqBAEAAAABqwRAAAAAAawEgAAAAAEBIwAA0AIAIAfGAwIAAAAB5gNAAAAAAecDQAAAAAGpBAEAAAABqgQBAAAAAasEQAAAAAGsBIAAAAABASMAANICADAHxgMCAN0GACHmA0AA8gYAIecDQADyBgAhqQQBANwGACGqBAEA7wYAIasEQADyBgAhrASAAAAAAQIAAADIAgAgIwAA1AIAIAfGAwIA3QYAIeYDQADyBgAh5wNAAPIGACGpBAEA3AYAIaoEAQDvBgAhqwRAAPIGACGsBIAAAAABAgAAAMsCACAjAADWAgAgAwAAAMgCACAoAADQAgAgKQAA1AIAIAEAAADIAgAgAQAAAMsCACAHBgAAjAkAIC4AAI0JACAvAACQCQAgMAAAjwkAIDEAAI4JACCqBAAA6QYAIKwEAADpBgAgCsMDAACTBgAwxAMAANwCABDFAwAAkwYAMMYDAgDMBQAh5gNAANoFACHnA0AA2gUAIakEAQDNBQAhqgQBANYFACGrBEAA2gUAIawEAADqBQAgAwAAAMsCACABAADbAgAwLQAA3AIAIAMAAADLAgAgAQAAzAIAMAIAAMgCACALwwMAAJAGADDEAwAA4gIAEMUDAACQBgAwxgMCAAAAAeYDQAD6BQAh_QNAAPoFACH_AwEA-QUAIaUEAQD5BQAhpgQBAPkFACGnBAgAkQYAIagEAACSBgAgAQAAAN8CACABAAAA3wIAIArDAwAAkAYAMMQDAADiAgAQxQMAAJAGADDGAwIA-AUAIeYDQAD6BQAh_QNAAPoFACH_AwEA-QUAIaUEAQD5BQAhpgQBAPkFACGnBAgAkQYAIQHxBAAAiwkAIAMAAADiAgAgAQAA4wIAMAIAAN8CACADAAAA4gIAIAEAAOMCADACAADfAgAgAwAAAOICACABAADjAgAwAgAA3wIAIAfGAwIAAAAB5gNAAAAAAf0DQAAAAAH_AwEAAAABpQQBAAAAAaYEAQAAAAGnBAgAAAABASMAAOcCACAHxgMCAAAAAeYDQAAAAAH9A0AAAAAB_wMBAAAAAaUEAQAAAAGmBAEAAAABpwQIAAAAAQEjAADpAgAwB8YDAgDdBgAh5gNAAPIGACH9A0AA8gYAIf8DAQDcBgAhpQQBANwGACGmBAEA3AYAIacECACKCQAhAgAAAN8CACAjAADrAgAgB8YDAgDdBgAh5gNAAPIGACH9A0AA8gYAIf8DAQDcBgAhpQQBANwGACGmBAEA3AYAIacECACKCQAhAgAAAOICACAjAADtAgAgAwAAAN8CACAoAADnAgAgKQAA6wIAIAEAAADfAgAgAQAAAOICACAFBgAAhQkAIC4AAIYJACAvAACJCQAgMAAAiAkAIDEAAIcJACAKwwMAAI0GADDEAwAA8wIAEMUDAACNBgAwxgMCAMwFACHmA0AA2gUAIf0DQADaBQAh_wMBAM0FACGlBAEAzQUAIaYEAQDNBQAhpwQIAI4GACEDAAAA4gIAIAEAAPICADAtAADzAgAgAwAAAOICACABAADjAgAwAgAA3wIAIAnDAwAAjAYAMMQDAAD5AgAQxQMAAIwGADDGAwIAAAAB1QMBAPkFACHdAwEA-QUAIecDQAD6BQAhowQBAAAAAaQEAQD5BQAhAQAAAPYCACABAAAA9gIAIAnDAwAAjAYAMMQDAAD5AgAQxQMAAIwGADDGAwIA-AUAIdUDAQD5BQAh3QMBAPkFACHnA0AA-gUAIaMEAQD5BQAhpAQBAPkFACEB8QQAAIQJACADAAAA-QIAIAEAAPoCADACAAD2AgAgAwAAAPkCACABAAD6AgAwAgAA9gIAIAMAAAD5AgAgAQAA-gIAMAIAAPYCACAGxgMCAAAAAdUDAQAAAAHdAwEAAAAB5wNAAAAAAaMEAQAAAAGkBAEAAAABASMAAP4CACAGxgMCAAAAAdUDAQAAAAHdAwEAAAAB5wNAAAAAAaMEAQAAAAGkBAEAAAABASMAAIADADAGxgMCAN0GACHVAwEA3AYAId0DAQDcBgAh5wNAAPIGACGjBAEA3AYAIaQEAQDcBgAhAgAAAPYCACAjAACCAwAgBsYDAgDdBgAh1QMBANwGACHdAwEA3AYAIecDQADyBgAhowQBANwGACGkBAEA3AYAIQIAAAD5AgAgIwAAhAMAIAMAAAD2AgAgKAAA_gIAICkAAIIDACABAAAA9gIAIAEAAAD5AgAgBQYAAP8IACAuAACACQAgLwAAgwkAIDAAAIIJACAxAACBCQAgCcMDAACLBgAwxAMAAIoDABDFAwAAiwYAMMYDAgDMBQAh1QMBAM0FACHdAwEAzQUAIecDQADaBQAhowQBAM0FACGkBAEAzQUAIQMAAAD5AgAgAQAAiQMAMC0AAIoDACADAAAA-QIAIAEAAPoCADACAAD2AgAgCPABAAD7BQAgwwMAAPcFADDEAwAAnwMAEMUDAAD3BQAwxgMCAAAAAcgDAQD5BQAh5gNAAPoFACGRBAEAAAABAQAAAI0DACAX7AEAAIgGACDuAQAAiQYAIO8BAACKBgAgwwMAAIQGADDEAwAAjwMAEMUDAACEBgAwxgMCAPgFACHIAwEA-QUAIeYDQAD6BQAhkAQBAPkFACGRBAEA-QUAIZIEAQD5BQAhkwQBAIUGACGUBAIA-AUAIZUEAgD4BQAhlgQCAPgFACGXBAIA-AUAIZgEAgD4BQAhmQQCAPgFACGaBAIAhgYAIZsEQACDBgAhnAQgAIcGACGdBEAAgwYAIQjsAQAA-wgAIO4BAAD8CAAg7wEAAP0IACCTBAAA6QYAIJoEAADpBgAgmwQAAOkGACCdBAAA6QYAIPEEAAD-CAAgF-wBAACIBgAg7gEAAIkGACDvAQAAigYAIMMDAACEBgAwxAMAAI8DABDFAwAAhAYAMMYDAgAAAAHIAwEA-QUAIeYDQAD6BQAhkAQBAAAAAZEEAQD5BQAhkgQBAPkFACGTBAEAhQYAIZQEAgD4BQAhlQQCAPgFACGWBAIA-AUAIZcEAgD4BQAhmAQCAPgFACGZBAIA-AUAIZoEAgCGBgAhmwRAAIMGACGcBCAAhwYAIZ0EQACDBgAhAwAAAI8DACABAACQAwAwAgAAkQMAIBPtAQAAgAYAIMMDAACCBgAwxAMAAJMDABDFAwAAggYAMMYDAgD4BQAh5gNAAPoFACH9A0AA-gUAIYMEAgD4BQAhhQQIAP4FACGGBAgA_gUAIYcEAAD_BQAgiAQIAP4FACGJBAgA_gUAIYoECAD-BQAhiwQIAP4FACGMBAgA_gUAIY0ECAD-BQAhjgQBAPkFACGPBEAAgwYAIQztAQAA-QgAIIUEAADpBgAghgQAAOkGACCHBAAA6QYAIIgEAADpBgAgiQQAAOkGACCKBAAA6QYAIIsEAADpBgAgjAQAAOkGACCNBAAA6QYAII8EAADpBgAg8QQAAPoIACAU7QEAAIAGACDDAwAAggYAMMQDAACTAwAQxQMAAIIGADDGAwIAAAAB5gNAAPoFACH9A0AA-gUAIYMEAgD4BQAhhQQIAP4FACGGBAgA_gUAIYcEAAD_BQAgiAQIAP4FACGJBAgA_gUAIYoECAD-BQAhiwQIAP4FACGMBAgA_gUAIY0ECAD-BQAhjgQBAPkFACGPBEAAgwYAIaIEAACBBgAgAwAAAJMDACABAACUAwAwAgAAlQMAIAvtAQAAgAYAIMMDAAD9BQAwxAMAAJcDABDFAwAA_QUAMMYDAgD4BQAh5gNAAPoFACGDBAIA-AUAIYQEQAD6BQAhhQQIAP4FACGGBAgA_gUAIYcEAAD_BQAgBO0BAAD5CAAghQQAAOkGACCGBAAA6QYAIIcEAADpBgAgDO0BAACABgAgwwMAAP0FADDEAwAAlwMAEMUDAAD9BQAwxgMCAAAAAeYDQAD6BQAhgwQCAPgFACGEBEAA-gUAIYUECAD-BQAhhgQIAP4FACGHBAAA_wUAIKEEAAD8BQAgAwAAAJcDACABAACYAwAwAgAAmQMAIAEAAACTAwAgAQAAAJcDACABAAAAjwMAIAEAAACNAwAgCPABAAD7BQAgwwMAAPcFADDEAwAAnwMAEMUDAAD3BQAwxgMCAPgFACHIAwEA-QUAIeYDQAD6BQAhkQQBAPkFACEC8AEAAPcIACDxBAAA-AgAIAMAAACfAwAgAQAAoAMAMAIAAI0DACADAAAAnwMAIAEAAKADADACAACNAwAgAwAAAJ8DACABAACgAwAwAgAAjQMAIAXwAQAA9ggAIMYDAgAAAAHIAwEAAAAB5gNAAAAAAZEEAQAAAAEBIwAApAMAIATGAwIAAAAByAMBAAAAAeYDQAAAAAGRBAEAAAABASMAAKYDADAF8AEAAOkIACDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGRBAEA3AYAIQIAAACNAwAgIwAAqAMAIATGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGRBAEA3AYAIQIAAACfAwAgIwAAqgMAIAMAAACNAwAgKAAApAMAICkAAKgDACABAAAAjQMAIAEAAACfAwAgBQYAAOQIACAuAADlCAAgLwAA6AgAIDAAAOcIACAxAADmCAAgB8MDAAD2BQAwxAMAALADABDFAwAA9gUAMMYDAgDMBQAhyAMBAM0FACHmA0AA2gUAIZEEAQDNBQAhAwAAAJ8DACABAACvAwAwLQAAsAMAIAMAAACfAwAgAQAAoAMAMAIAAI0DACABAAAAkQMAIAEAAACRAwAgAwAAAI8DACABAACQAwAwAgAAkQMAIAMAAACPAwAgAQAAkAMAMAIAAJEDACADAAAAjwMAIAEAAJADADACAACRAwAgFOwBAADhCAAg7gEAAOIIACDvAQAA4wgAIMYDAgAAAAHIAwEAAAAB5gNAAAAAAZAEAQAAAAGRBAEAAAABkgQBAAAAAZMEAQAAAAGUBAIAAAABlQQCAAAAAZYEAgAAAAGXBAIAAAABmAQCAAAAAZkEAgAAAAGaBAIAAAABmwRAAAAAAZwEIAAAAAGdBEAAAAABASMAALgDACARxgMCAAAAAcgDAQAAAAHmA0AAAAABkAQBAAAAAZEEAQAAAAGSBAEAAAABkwQBAAAAAZQEAgAAAAGVBAIAAAABlgQCAAAAAZcEAgAAAAGYBAIAAAABmQQCAAAAAZoEAgAAAAGbBEAAAAABnAQgAAAAAZ0EQAAAAAEBIwAAugMAMBTsAQAAxggAIO4BAADHCAAg7wEAAMgIACDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGQBAEA3AYAIZEEAQDcBgAhkgQBANwGACGTBAEA7wYAIZQEAgDdBgAhlQQCAN0GACGWBAIA3QYAIZcEAgDdBgAhmAQCAN0GACGZBAIA3QYAIZoEAgDzBgAhmwRAAPAGACGcBCAA8QYAIZ0EQADwBgAhAgAAAJEDACAjAAC8AwAgEcYDAgDdBgAhyAMBANwGACHmA0AA8gYAIZAEAQDcBgAhkQQBANwGACGSBAEA3AYAIZMEAQDvBgAhlAQCAN0GACGVBAIA3QYAIZYEAgDdBgAhlwQCAN0GACGYBAIA3QYAIZkEAgDdBgAhmgQCAPMGACGbBEAA8AYAIZwEIADxBgAhnQRAAPAGACECAAAAjwMAICMAAL4DACADAAAAkQMAICgAALgDACApAAC8AwAgAQAAAJEDACABAAAAjwMAIAkGAADBCAAgLgAAwggAIC8AAMUIACAwAADECAAgMQAAwwgAIJMEAADpBgAgmgQAAOkGACCbBAAA6QYAIJ0EAADpBgAgFMMDAAD1BQAwxAMAAMQDABDFAwAA9QUAMMYDAgDMBQAhyAMBAM0FACHmA0AA2gUAIZAEAQDNBQAhkQQBAM0FACGSBAEAzQUAIZMEAQDWBQAhlAQCAMwFACGVBAIAzAUAIZYEAgDMBQAhlwQCAMwFACGYBAIAzAUAIZkEAgDMBQAhmgQCANUFACGbBEAA1wUAIZwEIADZBQAhnQRAANcFACEDAAAAjwMAIAEAAMMDADAtAADEAwAgAwAAAI8DACABAACQAwAwAgAAkQMAIAEAAACVAwAgAQAAAJUDACADAAAAkwMAIAEAAJQDADACAACVAwAgAwAAAJMDACABAACUAwAwAgAAlQMAIAMAAACTAwAgAQAAlAMAMAIAAJUDACAQ7QEAAMAIACDGAwIAAAAB5gNAAAAAAf0DQAAAAAGDBAIAAAABhQQIAAAAAYYECAAAAAGHBIAAAAABiAQIAAAAAYkECAAAAAGKBAgAAAABiwQIAAAAAYwECAAAAAGNBAgAAAABjgQBAAAAAY8EQAAAAAEBIwAAzAMAIA_GAwIAAAAB5gNAAAAAAf0DQAAAAAGDBAIAAAABhQQIAAAAAYYECAAAAAGHBIAAAAABiAQIAAAAAYkECAAAAAGKBAgAAAABiwQIAAAAAYwECAAAAAGNBAgAAAABjgQBAAAAAY8EQAAAAAEBIwAAzgMAMBDtAQAAvwgAIMYDAgDdBgAh5gNAAPIGACH9A0AA8gYAIYMEAgDdBgAhhQQIALcIACGGBAgAtwgAIYcEgAAAAAGIBAgAtwgAIYkECAC3CAAhigQIALcIACGLBAgAtwgAIYwECAC3CAAhjQQIALcIACGOBAEA3AYAIY8EQADwBgAhAgAAAJUDACAjAADQAwAgD8YDAgDdBgAh5gNAAPIGACH9A0AA8gYAIYMEAgDdBgAhhQQIALcIACGGBAgAtwgAIYcEgAAAAAGIBAgAtwgAIYkECAC3CAAhigQIALcIACGLBAgAtwgAIYwECAC3CAAhjQQIALcIACGOBAEA3AYAIY8EQADwBgAhAgAAAJMDACAjAADSAwAgAwAAAJUDACAoAADMAwAgKQAA0AMAIAEAAACVAwAgAQAAAJMDACAPBgAAuggAIC4AALsIACAvAAC-CAAgMAAAvQgAIDEAALwIACCFBAAA6QYAIIYEAADpBgAghwQAAOkGACCIBAAA6QYAIIkEAADpBgAgigQAAOkGACCLBAAA6QYAIIwEAADpBgAgjQQAAOkGACCPBAAA6QYAIBLDAwAA9AUAMMQDAADYAwAQxQMAAPQFADDGAwIAzAUAIeYDQADaBQAh_QNAANoFACGDBAIAzAUAIYUECADyBQAhhgQIAPIFACGHBAAA6gUAIIgECADyBQAhiQQIAPIFACGKBAgA8gUAIYsECADyBQAhjAQIAPIFACGNBAgA8gUAIY4EAQDNBQAhjwRAANcFACEDAAAAkwMAIAEAANcDADAtAADYAwAgAwAAAJMDACABAACUAwAwAgAAlQMAIAEAAACZAwAgAQAAAJkDACADAAAAlwMAIAEAAJgDADACAACZAwAgAwAAAJcDACABAACYAwAwAgAAmQMAIAMAAACXAwAgAQAAmAMAMAIAAJkDACAI7QEAALkIACDGAwIAAAAB5gNAAAAAAYMEAgAAAAGEBEAAAAABhQQIAAAAAYYECAAAAAGHBIAAAAABASMAAOADACAHxgMCAAAAAeYDQAAAAAGDBAIAAAABhARAAAAAAYUECAAAAAGGBAgAAAABhwSAAAAAAQEjAADiAwAwCO0BAAC4CAAgxgMCAN0GACHmA0AA8gYAIYMEAgDdBgAhhARAAPIGACGFBAgAtwgAIYYECAC3CAAhhwSAAAAAAQIAAACZAwAgIwAA5AMAIAfGAwIA3QYAIeYDQADyBgAhgwQCAN0GACGEBEAA8gYAIYUECAC3CAAhhgQIALcIACGHBIAAAAABAgAAAJcDACAjAADmAwAgAwAAAJkDACAoAADgAwAgKQAA5AMAIAEAAACZAwAgAQAAAJcDACAIBgAAsggAIC4AALMIACAvAAC2CAAgMAAAtQgAIDEAALQIACCFBAAA6QYAIIYEAADpBgAghwQAAOkGACAKwwMAAPEFADDEAwAA7AMAEMUDAADxBQAwxgMCAMwFACHmA0AA2gUAIYMEAgDMBQAhhARAANoFACGFBAgA8gUAIYYECADyBQAhhwQAAOoFACADAAAAlwMAIAEAAOsDADAtAADsAwAgAwAAAJcDACABAACYAwAwAgAAmQMAIAEAAAAFACABAAAABQAgAwAAAAMAIAEAAAQAMAIAAAUAIAMAAAADACABAAAEADACAAAFACADAAAAAwAgAQAABAAwAgAABQAgDgMAALAIACAFAACxCAAgxgMCAAAAAcgDAQAAAAHVAwIAAAAB4gMCAAAAAeMDIAAAAAHmA0AAAAAB5wNAAAAAAfUDAQAAAAH6AwEAAAABgAQBAAAAAYEEAgAAAAGCBAEAAAABASMAAPQDACAMxgMCAAAAAcgDAQAAAAHVAwIAAAAB4gMCAAAAAeMDIAAAAAHmA0AAAAAB5wNAAAAAAfUDAQAAAAH6AwEAAAABgAQBAAAAAYEEAgAAAAGCBAEAAAABASMAAPYDADAOAwAAoggAIAUAAKMIACDGAwIA3QYAIcgDAQDcBgAh1QMCAN0GACHiAwIA3QYAIeMDIADxBgAh5gNAAPIGACHnA0AA8gYAIfUDAQDcBgAh-gMBANwGACGABAEA3AYAIYEEAgDdBgAhggQBANwGACECAAAABQAgIwAA-AMAIAzGAwIA3QYAIcgDAQDcBgAh1QMCAN0GACHiAwIA3QYAIeMDIADxBgAh5gNAAPIGACHnA0AA8gYAIfUDAQDcBgAh-gMBANwGACGABAEA3AYAIYEEAgDdBgAhggQBANwGACECAAAAAwAgIwAA-gMAIAMAAAAFACAoAAD0AwAgKQAA-AMAIAEAAAAFACABAAAAAwAgBQYAAJ0IACAuAACeCAAgLwAAoQgAIDAAAKAIACAxAACfCAAgD8MDAADwBQAwxAMAAIAEABDFAwAA8AUAMMYDAgDMBQAhyAMBAM0FACHVAwIAzAUAIeIDAgDMBQAh4wMgANkFACHmA0AA2gUAIecDQADaBQAh9QMBAM0FACH6AwEAzQUAIYAEAQDNBQAhgQQCAMwFACGCBAEAzQUAIQMAAAADACABAAD_AwAwLQAAgAQAIAMAAAADACABAAAEADACAAAFACABAAAACQAgAQAAAAkAIAMAAAAHACABAAAIADACAAAJACADAAAABwAgAQAACAAwAgAACQAgAwAAAAcAIAEAAAgAMAIAAAkAIAoDAACcCAAgBAAAmwgAIMYDAgAAAAHVAwIAAAAB5gNAAAAAAfoDAQAAAAH8AwIAAAAB_QMBAAAAAf4DAgAAAAH_AwEAAAABASMAAIgEACAIxgMCAAAAAdUDAgAAAAHmA0AAAAAB-gMBAAAAAfwDAgAAAAH9AwEAAAAB_gMCAAAAAf8DAQAAAAEBIwAAigQAMAoDAACaCAAgBAAAmQgAIMYDAgDdBgAh1QMCAN0GACHmA0AA8gYAIfoDAQDcBgAh_AMCAN0GACH9AwEA3AYAIf4DAgDdBgAh_wMBANwGACECAAAACQAgIwAAjAQAIAjGAwIA3QYAIdUDAgDdBgAh5gNAAPIGACH6AwEA3AYAIfwDAgDdBgAh_QMBANwGACH-AwIA3QYAIf8DAQDcBgAhAgAAAAcAICMAAI4EACADAAAACQAgKAAAiAQAICkAAIwEACABAAAACQAgAQAAAAcAIAUGAACUCAAgLgAAlQgAIC8AAJgIACAwAACXCAAgMQAAlggAIAvDAwAA7wUAMMQDAACUBAAQxQMAAO8FADDGAwIAzAUAIdUDAgDMBQAh5gNAANoFACH6AwEAzQUAIfwDAgDMBQAh_QMBAM0FACH-AwIAzAUAIf8DAQDNBQAhAwAAAAcAIAEAAJMEADAtAACUBAAgAwAAAAcAIAEAAAgAMAIAAAkAIAEAAAAPACABAAAADwAgAwAAAA0AIAEAAA4AMAIAAA8AIAMAAAANACABAAAOADACAAAPACADAAAADQAgAQAADgAwAgAADwAgCgMAAJIIACAKAACTCAAgxgMCAAAAAdUDAgAAAAHZAwEAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB9wMBAAAAAfoDAQAAAAEBIwAAnAQAIAjGAwIAAAAB1QMCAAAAAdkDAQAAAAHjAyAAAAAB5gNAAAAAAecDQAAAAAH3AwEAAAAB-gMBAAAAAQEjAACeBAAwCgMAAIQIACAKAACFCAAgxgMCAN0GACHVAwIA3QYAIdkDAQDcBgAh4wMgAPEGACHmA0AA8gYAIecDQADyBgAh9wMBANwGACH6AwEA3AYAIQIAAAAPACAjAACgBAAgCMYDAgDdBgAh1QMCAN0GACHZAwEA3AYAIeMDIADxBgAh5gNAAPIGACHnA0AA8gYAIfcDAQDcBgAh-gMBANwGACECAAAADQAgIwAAogQAIAMAAAAPACAoAACcBAAgKQAAoAQAIAEAAAAPACABAAAADQAgBQYAAP8HACAuAACACAAgLwAAgwgAIDAAAIIIACAxAACBCAAgC8MDAADuBQAwxAMAAKgEABDFAwAA7gUAMMYDAgDMBQAh1QMCAMwFACHZAwEAzQUAIeMDIADZBQAh5gNAANoFACHnA0AA2gUAIfcDAQDNBQAh-gMBAM0FACEDAAAADQAgAQAApwQAMC0AAKgEACADAAAADQAgAQAADgAwAgAADwAgAQAAABMAIAEAAAATACADAAAAEQAgAQAAEgAwAgAAEwAgAwAAABEAIAEAABIAMAIAABMAIAMAAAARACABAAASADACAAATACAKCQAA_gcAIMYDAgAAAAHZAwEAAAAB3gNAAAAAAeIDAgAAAAHmA0AAAAAB5wNAAAAAAfkDAgAAAAH6AwEAAAAB-wMgAAAAAQEjAACwBAAgCcYDAgAAAAHZAwEAAAAB3gNAAAAAAeIDAgAAAAHmA0AAAAAB5wNAAAAAAfkDAgAAAAH6AwEAAAAB-wMgAAAAAQEjAACyBAAwCgkAAP0HACDGAwIA3QYAIdkDAQDcBgAh3gNAAPAGACHiAwIA3QYAIeYDQADyBgAh5wNAAPIGACH5AwIA3QYAIfoDAQDcBgAh-wMgAPEGACECAAAAEwAgIwAAtAQAIAnGAwIA3QYAIdkDAQDcBgAh3gNAAPAGACHiAwIA3QYAIeYDQADyBgAh5wNAAPIGACH5AwIA3QYAIfoDAQDcBgAh-wMgAPEGACECAAAAEQAgIwAAtgQAIAMAAAATACAoAACwBAAgKQAAtAQAIAEAAAATACABAAAAEQAgBgYAAPgHACAuAAD5BwAgLwAA_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_QMBAM0FACH-AwIAzAUAIf8DAQDNBQAhD8MDAADwBQAwxAMAAIAEABDFAwAA8AUAMMYDAgDMBQAhyAMBAM0FACHVAwIAzAUAIeIDAgDMBQAh4wMgANkFACHmA0AA2gUAIecDQADaBQAh9QMBAM0FACH6AwEAzQUAIYAEAQDNBQAhgQQCAMwFACGCBAEAzQUAIQrDAwAA8QUAMMQDAADsAwAQxQMAAPEFADDGAwIAzAUAIeYDQADaBQAhgwQCAMwFACGEBEAA2gUAIYUECADyBQAhhgQIAPIFACGHBAAA6gUAIA0GAADhBQAgLgAA5gUAIC8AAOYFACAwAADmBQAgMQAA5gUAIMkDCAAAAAHKAwgAAAAFywMIAAAABcwDCAAAAAHNAwgAAAABzgMIAAAAAc8DCAAAAAHUAwgA8wUAIQ0GAADhBQAgLgAA5gUAIC8AAOYFACAwAADmBQAgMQAA5gUAIMkDCAAAAAHKAwgAAAAFywMIAAAABcwDCAAAAAHNAwgAAAABzgMIAAAAAc8DCAAAAAHUAwgA8wUAIRLDAwAA9AUAMMQDAADYAwAQxQMAAPQFADDGAwIAzAUAIeYDQADaBQAh_QNAANoFACGDBAIAzAUAIYUECADyBQAhhgQIAPIFACGHBAAA6gUAIIgECADyBQAhiQQIAPIFACGKBAgA8gUAIYsECADyBQAhjAQIAPIFACGNBAgA8gUAIY4EAQDNBQAhjwRAANcFACEUwwMAAPUFADDEAwAAxAMAEMUDAAD1BQAwxgMCAMwFACHIAwEAzQUAIeYDQADaBQAhkAQBAM0FACGRBAEAzQUAIZIEAQDNBQAhkwQBANYFACGUBAIAzAUAIZUEAgDMBQAhlgQCAMwFACGXBAIAzAUAIZgEAgDMBQAhmQQCAMwFACGaBAIA1QUAIZsEQADXBQAhnAQgANkFACGdBEAA1wUAIQfDAwAA9gUAMMQDAACwAwAQxQMAAPYFADDGAwIAzAUAIcgDAQDNBQAh5gNAANoFACGRBAEAzQUAIQjwAQAA-wUAIMMDAAD3BQAwxAMAAJ8DABDFAwAA9wUAMMYDAgD4BQAhyAMBAPkFACHmA0AA-gUAIZEEAQD5BQAhCMkDAgAAAAHKAwIAAAAEywMCAAAABMwDAgAAAAHNAwIAAAABzgMCAAAAAc8DAgAAAAHUAwIAzwUAIQzJAwEAAAABygMBAAAABMsDAQAAAATMAwEAAAABzQMBAAAAAc4DAQAAAAHPAwEAAAAB0AMBAAAAAdEDAQAAAAHSAwEAAAAB0wMBAAAAAdQDAQDQBQAhCMkDQAAAAAHKA0AAAAAEywNAAAAABMwDQAAAAAHNA0AAAAABzgNAAAAAAc8DQAAAAAHUA0AA3AUAIQOeBAAAjwMAIJ8EAACPAwAgoAQAAI8DACACgwQCAAAAAYQEQAAAAAEL7QEAAIAGACDDAwAA_QUAMMQDAACXAwAQxQMAAP0FADDGAwIA-AUAIeYDQAD6BQAhgwQCAPgFACGEBEAA-gUAIYUECAD-BQAhhgQIAP4FACGHBAAA_wUAIAjJAwgAAAABygMIAAAABcsDCAAAAAXMAwgAAAABzQMIAAAAAc4DCAAAAAHPAwgAAAAB1AMIAOYFACEMyQOAAAAAAcwDgAAAAAHNA4AAAAABzgOAAAAAAc8DgAAAAAHUA4AAAAAB6AMBAAAAAekDAQAAAAHqAwEAAAAB6wOAAAAAAewDgAAAAAHtA4AAAAABGewBAACIBgAg7gEAAIkGACDvAQAAigYAIMMDAACEBgAwxAMAAI8DABDFAwAAhAYAMMYDAgD4BQAhyAMBAPkFACHmA0AA-gUAIZAEAQD5BQAhkQQBAPkFACGSBAEA-QUAIZMEAQCFBgAhlAQCAPgFACGVBAIA-AUAIZYEAgD4BQAhlwQCAPgFACGYBAIA-AUAIZkEAgD4BQAhmgQCAIYGACGbBEAAgwYAIZwEIACHBgAhnQRAAIMGACHmBAAAjwMAIOcEAACPAwAgAv0DQAAAAAGDBAIAAAABE-0BAACABgAgwwMAAIIGADDEAwAAkwMAEMUDAACCBgAwxgMCAPgFACHmA0AA-gUAIf0DQAD6BQAhgwQCAPgFACGFBAgA_gUAIYYECAD-BQAhhwQAAP8FACCIBAgA_gUAIYkECAD-BQAhigQIAP4FACGLBAgA_gUAIYwECAD-BQAhjQQIAP4FACGOBAEA-QUAIY8EQACDBgAhCMkDQAAAAAHKA0AAAAAFywNAAAAABcwDQAAAAAHNA0AAAAABzgNAAAAAAc8DQAAAAAHUA0AA4gUAIRfsAQAAiAYAIO4BAACJBgAg7wEAAIoGACDDAwAAhAYAMMQDAACPAwAQxQMAAIQGADDGAwIA-AUAIcgDAQD5BQAh5gNAAPoFACGQBAEA-QUAIZEEAQD5BQAhkgQBAPkFACGTBAEAhQYAIZQEAgD4BQAhlQQCAPgFACGWBAIA-AUAIZcEAgD4BQAhmAQCAPgFACGZBAIA-AUAIZoEAgCGBgAhmwRAAIMGACGcBCAAhwYAIZ0EQACDBgAhDMkDAQAAAAHKAwEAAAAFywMBAAAABcwDAQAAAAHNAwEAAAABzgMBAAAAAc8DAQAAAAHQAwEAAAAB0QMBAAAAAdIDAQAAAAHTAwEAAAAB1AMBAOQFACEIyQMCAAAAAcoDAgAAAAXLAwIAAAAFzAMCAAAAAc0DAgAAAAHOAwIAAAABzwMCAAAAAdQDAgDhBQAhAskDIAAAAAHUAyAA3gUAIQrwAQAA-wUAIMMDAAD3BQAwxAMAAJ8DABDFAwAA9wUAMMYDAgD4BQAhyAMBAPkFACHmA0AA-gUAIZEEAQD5BQAh5gQAAJ8DACDnBAAAnwMAIAOeBAAAkwMAIJ8EAACTAwAgoAQAAJMDACADngQAAJcDACCfBAAAlwMAIKAEAACXAwAgCcMDAACLBgAwxAMAAIoDABDFAwAAiwYAMMYDAgDMBQAh1QMBAM0FACHdAwEAzQUAIecDQADaBQAhowQBAM0FACGkBAEAzQUAIQnDAwAAjAYAMMQDAAD5AgAQxQMAAIwGADDGAwIA-AUAIdUDAQD5BQAh3QMBAPkFACHnA0AA-gUAIaMEAQD5BQAhpAQBAPkFACEKwwMAAI0GADDEAwAA8wIAEMUDAACNBgAwxgMCAMwFACHmA0AA2gUAIf0DQADaBQAh_wMBAM0FACGlBAEAzQUAIaYEAQDNBQAhpwQIAI4GACENBgAAzwUAIC4AANIFACAvAADSBQAgMAAA0gUAIDEAANIFACDJAwgAAAABygMIAAAABMsDCAAAAATMAwgAAAABzQMIAAAAAc4DCAAAAAHPAwgAAAAB1AMIAI8GACENBgAAzwUAIC4AANIFACAvAADSBQAgMAAA0gUAIDEAANIFACDJAwgAAAABygMIAAAABMsDCAAAAATMAwgAAAABzQMIAAAAAc4DCAAAAAHPAwgAAAAB1AMIAI8GACEKwwMAAJAGADDEAwAA4gIAEMUDAACQBgAwxgMCAPgFACHmA0AA-gUAIf0DQAD6BQAh_wMBAPkFACGlBAEA-QUAIaYEAQD5BQAhpwQIAJEGACEIyQMIAAAAAcoDCAAAAATLAwgAAAAEzAMIAAAAAc0DCAAAAAHOAwgAAAABzwMIAAAAAdQDCADSBQAhA_0DQAAAAAGlBAEAAAABpgQBAAAAAQrDAwAAkwYAMMQDAADcAgAQxQMAAJMGADDGAwIAzAUAIeYDQADaBQAh5wNAANoFACGpBAEAzQUAIaoEAQDWBQAhqwRAANoFACGsBAAA6gUAIArDAwAAlAYAMMQDAADLAgAQxQMAAJQGADDGAwIA-AUAIeYDQAD6BQAh5wNAAPoFACGpBAEA-QUAIaoEAQCFBgAhqwRAAPoFACGsBAAA_wUAIAjDAwAAlQYAMMQDAADFAgAQxQMAAJUGADDGAwIAzAUAIeYDQADaBQAh5wNAANoFACGtBAEAzQUAIa4EAgDMBQAhCMMDAACWBgAwxAMAALQCABDFAwAAlgYAMMYDAgD4BQAh5gNAAPoFACHnA0AA-gUAIa0EAQD5BQAhrgQCAPgFACEMwwMAAJcGADDEAwAArgIAEMUDAACXBgAwxgMCAMwFACHIAwEAzQUAId0DAQDNBQAh5gNAANoFACHnA0AA2gUAIa8EAQDNBQAhsAQCAMwFACGxBAEAzQUAIbIEQADaBQAhDMMDAACYBgAwxAMAAJ0CABDFAwAAmAYAMMYDAgD4BQAhyAMBAPkFACHdAwEA-QUAIeYDQAD6BQAh5wNAAPoFACGvBAEA-QUAIbAEAgD4BQAhsQQBAPkFACGyBEAA-gUAIQ_DAwAAmQYAMMQDAACXAgAQxQMAAJkGADDGAwIAzAUAIeYDQADaBQAhgARAANoFACGzBAEAzQUAIbQECACOBgAhtQQEAJoGACG2BAgAjgYAIbcEBACaBgAhuAQEAJoGACG5BAQAmgYAIboEAgDMBQAhuwQCAMwFACENBgAAzwUAIC4AANIFACAvAACcBgAgMAAAnAYAIDEAAJwGACDJAwQAAAABygMEAAAABMsDBAAAAATMAwQAAAABzQMEAAAAAc4DBAAAAAHPAwQAAAAB1AMEAJsGACENBgAAzwUAIC4AANIFACAvAACcBgAgMAAAnAYAIDEAAJwGACDJAwQAAAABygMEAAAABMsDBAAAAATMAwQAAAABzQMEAAAAAc4DBAAAAAHPAwQAAAAB1AMEAJsGACEIyQMEAAAAAcoDBAAAAATLAwQAAAAEzAMEAAAAAc0DBAAAAAHOAwQAAAABzwMEAAAAAdQDBACcBgAhD8MDAACdBgAwxAMAAIYCABDFAwAAnQYAMMYDAgD4BQAh5gNAAPoFACGABEAA-gUAIbMEAQD5BQAhtAQIAJEGACG1BAQAngYAIbYECACRBgAhtwQEAJ4GACG4BAQAngYAIbkEBACeBgAhugQCAPgFACG7BAIA-AUAIQjJAwQAAAABygMEAAAABMsDBAAAAATMAwQAAAABzQMEAAAAAc4DBAAAAAHPAwQAAAAB1AMEAJwGACECgARAAAAAAbMEAQAAAAEcwwMAAKAGADDEAwAAgAIAEMUDAACgBgAwxgMCAMwFACHIAwEAzQUAId0DAQDNBQAh5gNAANoFACHnA0AA2gUAIbMEAQDNBQAhuAQEAJoGACG5BAQAmgYAIboEAgDMBQAhuwQCAMwFACG9BAEAzQUAIb4EAQDNBQAhvwQBAM0FACHABAQAmgYAIcEEBACaBgAhwgQCAMwFACHDBAgAjgYAIcQEBACaBgAhxQQEAJoGACHGBAgAjgYAIccECACOBgAhyAQIAI4GACHJBAQAmgYAIcoEBACaBgAhywRAANoFACEcwwMAAKEGADDEAwAA7wEAEMUDAAChBgAwxgMCAPgFACHIAwEA-QUAId0DAQD5BQAh5gNAAPoFACHnA0AA-gUAIbMEAQD5BQAhuAQEAJ4GACG5BAQAngYAIboEAgD4BQAhuwQCAPgFACG9BAEA-QUAIb4EAQD5BQAhvwQBAPkFACHABAQAngYAIcEEBACeBgAhwgQCAPgFACHDBAgAkQYAIcQEBACeBgAhxQQEAJ4GACHGBAgAkQYAIccECACRBgAhyAQIAJEGACHJBAQAngYAIcoEBACeBgAhywRAAPoFACENwwMAAKIGADDEAwAA6QEAEMUDAACiBgAwxgMCAMwFACHmA0AA2gUAIYAEAQDNBQAhzAQBAM0FACHNBAgAjgYAIc4ECACOBgAhzwQBAM0FACHQBAEAzQUAIdEECACOBgAh0gQIAI4GACENwwMAAKMGADDEAwAA2AEAEMUDAACjBgAwxgMCAPgFACHmA0AA-gUAIYAEAQD5BQAhzAQBAPkFACHNBAgAkQYAIc4ECACRBgAhzwQBAPkFACHQBAEA-QUAIdEECACRBgAh0gQIAJEGACEMwwMAAKQGADDEAwAA0gEAEMUDAACkBgAwxgMCAMwFACHZAwEAzQUAIeYDQADaBQAh_wMBAM0FACGvBAEAzQUAIdMEAQDNBQAh1AQBANYFACHVBEAA2gUAIdYEAgDMBQAhDMMDAAClBgAwxAMAAMEBABDFAwAApQYAMMYDAgD4BQAh2QMBAPkFACHmA0AA-gUAIf8DAQD5BQAhrwQBAPkFACHTBAEA-QUAIdQEAQCFBgAh1QRAAPoFACHWBAIA-AUAIQLZAwEAAAAB1QRAAAAAAQnDAwAApwYAMMQDAAC7AQAQxQMAAKcGADDGAwIAzAUAIeYDQADaBQAh5wNAANoFACGABAEAzQUAIdgEAgDMBQAh2QQIAI4GACENwwMAAKgGADDEAwAApwEAEMUDAACoBgAwxgMCAMwFACHIAwEAzQUAIdkDAQDNBQAh5gNAANoFACHnA0AA2gUAIf8DAQDNBQAh2gQBAM0FACHbBAEAzQUAIdwEAQDNBQAh3QQgANkFACEOUQAAqgYAIMMDAACpBgAwxAMAAJYBABDFAwAAqQYAMMYDAgD4BQAhyAMBAPkFACHZAwEA-QUAIeYDQAD6BQAh5wNAAPoFACH_AwEA-QUAIdoEAQD5BQAh2wQBAPkFACHcBAEA-QUAId0EIACHBgAhA54EAACQAQAgnwQAAJABACCgBAAAkAEAIAKABAEAAAAB2AQCAAAAAQpQAACtBgAgwwMAAKwGADDEAwAAkAEAEMUDAACsBgAwxgMCAPgFACHmA0AA-gUAIecDQAD6BQAhgAQBAPkFACHYBAIA-AUAIdkECACRBgAhEFEAAKoGACDDAwAAqQYAMMQDAACWAQAQxQMAAKkGADDGAwIA-AUAIcgDAQD5BQAh2QMBAPkFACHmA0AA-gUAIecDQAD6BQAh_wMBAPkFACHaBAEA-QUAIdsEAQD5BQAh3AQBAPkFACHdBCAAhwYAIeYEAACWAQAg5wQAAJYBACAJIwAA2AUAIMMDAACuBgAwxAMAAIsBABDFAwAArgYAMMYDAgDMBQAhyAMBAM0FACHaAwEAzQUAIeYDQADaBQAh5wNAANoFACEJIwAAsAYAIMMDAACvBgAwxAMAAHoAEMUDAACvBgAwxgMCAPgFACHIAwEA-QUAIdoDAQD5BQAh5gNAAPoFACHnA0AA-gUAIQzJA4AAAAABzAOAAAAAAc0DgAAAAAHOA4AAAAABzwOAAAAAAdQDgAAAAAHoAwEAAAAB6QMBAAAAAeoDAQAAAAHrA4AAAAAB7AOAAAAAAe0DgAAAAAEKwwMAALEGADDEAwAAdAAQxQMAALEGADDGAwIAzAUAIdkDAQDNBQAh5gNAANoFACHnA0AA2gUAIf0DAQDNBQAh1AQBAM0FACHfBAEAzQUAIQrDAwAAsgYAMMQDAABjABDFAwAAsgYAMMYDAgD4BQAh2QMBAPkFACHmA0AA-gUAIecDQAD6BQAh_QMBAPkFACHUBAEA-QUAId8EAQD5BQAhCcMDAACzBgAwxAMAAF0AEMUDAACzBgAwxgMCAMwFACHIAwEAzQUAIeYDQADaBQAh5wNAANoFACHgBAEAzQUAIeEEAQDNBQAhBxUAALUGACDDAwAAtAYAMMQDAAAzABDFAwAAtAYAMMYDAgD4BQAhxwMCAPgFACHIAwEA-QUAISAOAAC6BgAgDwAAvwYAIBAAALsGACARAAC8BgAgEgAAvQYAIBMAAL4GACAUAAC4BgAgFgAAwAYAIMMDAAC5BgAwxAMAACgAEMUDAAC5BgAwxgMCAPgFACHWAwIA-AUAIdcDAgD4BQAh2AMCAIYGACHZAwEA-QUAIdoDAQD5BQAh2wMBAIUGACHcA0AAgwYAId0DAQD5BQAh3gNAAIMGACHfAwIAhgYAIeADAgD4BQAh4QMAALAGACDiAwIA-AUAIeMDIACHBgAh5ANAAIMGACHlAwEAhQYAIeYDQAD6BQAh5wNAAPoFACHmBAAAKAAg5wQAACgAIALHAwIAAAAB1QMCAAAAAQgDAAC4BgAgFQAAtQYAIMMDAAC3BgAwxAMAAC8AEMUDAAC3BgAwxgMCAPgFACHHAwIA-AUAIdUDAgD4BQAhFAcAAMkGACAIAADKBgAgCwAAywYAIAwAAMwGACAZAADNBgAgGgAAxgYAIBsAAL0GACAcAAC9BgAgHQAAvwYAIMMDAADIBgAwxAMAABoAEMUDAADIBgAwxgMCAPgFACHIAwEA-QUAIeYDQAD6BQAh5wNAAPoFACHgBAEA-QUAIeEEAQD5BQAh5gQAABoAIOcEAAAaACAeDgAAugYAIA8AAL8GACAQAAC7BgAgEQAAvAYAIBIAAL0GACATAAC-BgAgFAAAuAYAIBYAAMAGACDDAwAAuQYAMMQDAAAoABDFAwAAuQYAMMYDAgD4BQAh1gMCAPgFACHXAwIA-AUAIdgDAgCGBgAh2QMBAPkFACHaAwEA-QUAIdsDAQCFBgAh3ANAAIMGACHdAwEA-QUAId4DQACDBgAh3wMCAIYGACHgAwIA-AUAIeEDAACwBgAg4gMCAPgFACHjAyAAhwYAIeQDQACDBgAh5QMBAIUGACHmA0AA-gUAIecDQAD6BQAhFA0AALgGACAPAADGBgAgFwAAvQYAIBgAAMcGACDDAwAAxQYAMMQDAAAcABDFAwAAxQYAMMYDAgD4BQAhyAMBAPkFACHjAyAAhwYAIeYDQAD6BQAh5wNAAPoFACHxAwIA-AUAIfIDIACHBgAh8wMAALAGACD0AwAA_wUAIPUDAQCFBgAh9gMBAPkFACHmBAAAHAAg5wQAABwAIA8OAAC6BgAgFwAAvQYAIMMDAADCBgAwxAMAACQAEMUDAADCBgAwxgMCAPgFACHIAwEA-QUAIdYDAgD4BQAh4gMCAPgFACHmA0AA-gUAIecDQAD6BQAh7gMBAIUGACHvAwEA-QUAIeYEAAAkACDnBAAAJAAgIA4AALoGACAPAAC_BgAgEAAAuwYAIBEAALwGACASAAC9BgAgEwAAvgYAIBQAALgGACAWAADABgAgwwMAALkGADDEAwAAKAAQxQMAALkGADDGAwIA-AUAIdYDAgD4BQAh1wMCAPgFACHYAwIAhgYAIdkDAQD5BQAh2gMBAPkFACHbAwEAhQYAIdwDQACDBgAh3QMBAPkFACHeA0AAgwYAId8DAgCGBgAh4AMCAPgFACHhAwAAsAYAIOIDAgD4BQAh4wMgAIcGACHkA0AAgwYAIeUDAQCFBgAh5gNAAPoFACHnA0AA-gUAIeYEAAAoACDnBAAAKAAgA54EAAAoACCfBAAAKAAgoAQAACgAIBQHAADJBgAgCAAAygYAIAsAAMsGACAMAADMBgAgGQAAzQYAIBoAAMYGACAbAAC9BgAgHAAAvQYAIB0AAL8GACDDAwAAyAYAMMQDAAAaABDFAwAAyAYAMMYDAgD4BQAhyAMBAPkFACHmA0AA-gUAIecDQAD6BQAh4AQBAPkFACHhBAEA-QUAIeYEAAAaACDnBAAAGgAgA54EAAAvACCfBAAALwAgoAQAAC8AIAOeBAAAMwAgnwQAADMAIKAEAAAzACACyAMBAAAAAdYDAgAAAAENDgAAugYAIBcAAL0GACDDAwAAwgYAMMQDAAAkABDFAwAAwgYAMMYDAgD4BQAhyAMBAPkFACHWAwIA-AUAIeIDAgD4BQAh5gNAAPoFACHnA0AA-gUAIe4DAQCFBgAh7wMBAPkFACEC1QMCAAAAAdYDAgAAAAEKAwAAuAYAIA4AALoGACDDAwAAxAYAMMQDAAAgABDFAwAAxAYAMMYDAgD4BQAh1QMCAPgFACHWAwIA-AUAIeYDQAD6BQAh8AMBAPkFACESDQAAuAYAIA8AAMYGACAXAAC9BgAgGAAAxwYAIMMDAADFBgAwxAMAABwAEMUDAADFBgAwxgMCAPgFACHIAwEA-QUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfEDAgD4BQAh8gMgAIcGACHzAwAAsAYAIPQDAAD_BQAg9QMBAIUGACH2AwEA-QUAIQOeBAAAIAAgnwQAACAAIKAEAAAgACADngQAACQAIJ8EAAAkACCgBAAAJAAgEgcAAMkGACAIAADKBgAgCwAAywYAIAwAAMwGACAZAADNBgAgGgAAxgYAIBsAAL0GACAcAAC9BgAgHQAAvwYAIMMDAADIBgAwxAMAABoAEMUDAADIBgAwxgMCAPgFACHIAwEA-QUAIeYDQAD6BQAh5wNAAPoFACHgBAEA-QUAIeEEAQD5BQAhA54EAAADACCfBAAAAwAgoAQAAAMAIAOeBAAABwAgnwQAAAcAIKAEAAAHACADngQAAA0AIJ8EAAANACCgBAAADQAgA54EAAAWACCfBAAAFgAgoAQAABYAIAOeBAAAHAAgnwQAABwAIKAEAAAcACAMAwAAvgYAIAoAALAGACDDAwAAzgYAMMQDAAAWABDFAwAAzgYAMMYDAgD4BQAhyAMBAPkFACHVAwIAhgYAIeYDQAD6BQAh5wNAAPoFACH3AwEA-QUAIfgDIACHBgAhDQkAANAGACDDAwAAzwYAMMQDAAARABDFAwAAzwYAMMYDAgD4BQAh2QMBAPkFACHeA0AAgwYAIeIDAgD4BQAh5gNAAPoFACHnA0AA-gUAIfkDAgD4BQAh-gMBAPkFACH7AyAAhwYAIQ8DAAC4BgAgCgAA0gYAIMMDAADRBgAwxAMAAA0AEMUDAADRBgAwxgMCAPgFACHVAwIA-AUAIdkDAQD5BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh9wMBAPkFACH6AwEA-QUAIeYEAAANACDnBAAADQAgDQMAALgGACAKAADSBgAgwwMAANEGADDEAwAADQAQxQMAANEGADDGAwIA-AUAIdUDAgD4BQAh2QMBAPkFACHjAyAAhwYAIeYDQAD6BQAh5wNAAPoFACH3AwEA-QUAIfoDAQD5BQAhA54EAAARACCfBAAAEQAgoAQAABEAIAP8AwIAAAAB_QMBAAAAAf4DAgAAAAENAwAAuAYAIAQAANUGACDDAwAA1AYAMMQDAAAHABDFAwAA1AYAMMYDAgD4BQAh1QMCAPgFACHmA0AA-gUAIfoDAQD5BQAh_AMCAPgFACH9AwEA-QUAIf4DAgD4BQAh_wMBAPkFACETAwAAuAYAIAUAAMoGACDDAwAA1gYAMMQDAAADABDFAwAA1gYAMMYDAgD4BQAhyAMBAPkFACHVAwIA-AUAIeIDAgD4BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh9QMBAPkFACH6AwEA-QUAIYAEAQD5BQAhgQQCAPgFACGCBAEA-QUAIeYEAAADACDnBAAAAwAgEQMAALgGACAFAADKBgAgwwMAANYGADDEAwAAAwAQxQMAANYGADDGAwIA-AUAIcgDAQD5BQAh1QMCAPgFACHiAwIA-AUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfUDAQD5BQAh-gMBAPkFACGABAEA-QUAIYEEAgD4BQAhggQBAPkFACEAAAAAAAHrBAEAAAABBesEAgAAAAHyBAIAAAAB8wQCAAAAAfQEAgAAAAH1BAIAAAABBSgAAPALACApAADzCwAg6AQAAPELACDpBAAA8gsAIO4EAAAqACADKAAA8AsAIOgEAADxCwAg7gQAACoAIAAAAAAABSgAAOgLACApAADuCwAg6AQAAOkLACDpBAAA7QsAIO4EAAAqACAFKAAA5gsAICkAAOsLACDoBAAA5wsAIOkEAADqCwAg7gQAAAEAIAMoAADoCwAg6AQAAOkLACDuBAAAKgAgAygAAOYLACDoBAAA5wsAIO4EAAABACAAAAAAAAAB6wQBAAAAAQHrBEAAAAABAesEIAAAAAEB6wRAAAAAAQXrBAIAAAAB8gQCAAAAAfMEAgAAAAH0BAIAAAAB9QQCAAAAAQUoAADSCwAgKQAA5AsAIOgEAADTCwAg6QQAAOMLACDuBAAAHgAgBSgAANALACApAADhCwAg6AQAANELACDpBAAA4AsAIO4EAAAmACAHKAAAygsAICkAAN4LACDoBAAAywsAIOkEAADdCwAg7AQAACgAIO0EAAAoACDuBAAAKgAgCygAAJQHADApAACZBwAw6AQAAJUHADDpBAAAlgcAMOoEAACXBwAg6wQAAJgHADDsBAAAmAcAMO0EAACYBwAw7gQAAJgHADDvBAAAmgcAMPAEAACbBwAwBygAAM4LACApAADbCwAg6AQAAM8LACDpBAAA2gsAIOwEAAAaACDtBAAAGgAg7gQAAAEAIAUoAADMCwAgKQAA2AsAIOgEAADNCwAg6QQAANcLACDuBAAAAQAgCygAAIgHADApAACNBwAw6AQAAIkHADDpBAAAigcAMOoEAACLBwAg6wQAAIwHADDsBAAAjAcAMO0EAACMBwAw7gQAAIwHADDvBAAAjgcAMPAEAACPBwAwCygAAPwGADApAACBBwAw6AQAAP0GADDpBAAA_gYAMOoEAAD_BgAg6wQAAIAHADDsBAAAgAcAMO0EAACABwAw7gQAAIAHADDvBAAAggcAMPAEAACDBwAwAsYDAgAAAAHIAwEAAAABAgAAADUAICgAAIcHACADAAAANQAgKAAAhwcAICkAAIYHACABIwAA1gsAMAcVAAC1BgAgwwMAALQGADDEAwAAMwAQxQMAALQGADDGAwIAAAABxwMCAPgFACHIAwEA-QUAIQIAAAA1ACAjAACGBwAgAgAAAIQHACAjAACFBwAgBsMDAACDBwAwxAMAAIQHABDFAwAAgwcAMMYDAgD4BQAhxwMCAPgFACHIAwEA-QUAIQbDAwAAgwcAMMQDAACEBwAQxQMAAIMHADDGAwIA-AUAIccDAgD4BQAhyAMBAPkFACECxgMCAN0GACHIAwEA3AYAIQLGAwIA3QYAIcgDAQDcBgAhAsYDAgAAAAHIAwEAAAABAwMAAOgGACDGAwIAAAAB1QMCAAAAAQIAAAAxACAoAACTBwAgAwAAADEAICgAAJMHACApAACSBwAgASMAANULADAJAwAAuAYAIBUAALUGACDDAwAAtwYAMMQDAAAvABDFAwAAtwYAMMYDAgAAAAHHAwIA-AUAIdUDAgD4BQAh4gQAALYGACACAAAAMQAgIwAAkgcAIAIAAACQBwAgIwAAkQcAIAbDAwAAjwcAMMQDAACQBwAQxQMAAI8HADDGAwIA-AUAIccDAgD4BQAh1QMCAPgFACEGwwMAAI8HADDEAwAAkAcAEMUDAACPBwAwxgMCAPgFACHHAwIA-AUAIdUDAgD4BQAhAsYDAgDdBgAh1QMCAN0GACEDAwAA5gYAIMYDAgDdBgAh1QMCAN0GACEDAwAA6AYAIMYDAgAAAAHVAwIAAAABGQ4AAKAHACAPAAClBwAgEAAAoQcAIBIAAKIHACATAACjBwAgFAAApAcAIBYAAKYHACDGAwIAAAAB1gMCAAAAAdcDAgAAAAHZAwEAAAAB2gMBAAAAAdsDAQAAAAHcA0AAAAAB3QMBAAAAAd4DQAAAAAHfAwIAAAAB4AMCAAAAAeEDgAAAAAHiAwIAAAAB4wMgAAAAAeQDQAAAAAHlAwEAAAAB5gNAAAAAAecDQAAAAAECAAAAKgAgKAAAnwcAIAMAAAAqACAoAACfBwAgKQAAngcAIAEjAADUCwAwHg4AALoGACAPAAC_BgAgEAAAuwYAIBEAALwGACASAAC9BgAgEwAAvgYAIBQAALgGACAWAADABgAgwwMAALkGADDEAwAAKAAQxQMAALkGADDGAwIAAAAB1gMCAPgFACHXAwIA-AUAIdgDAgCGBgAh2QMBAPkFACHaAwEA-QUAIdsDAQCFBgAh3ANAAIMGACHdAwEA-QUAId4DQACDBgAh3wMCAIYGACHgAwIA-AUAIeEDAACwBgAg4gMCAPgFACHjAyAAhwYAIeQDQACDBgAh5QMBAIUGACHmA0AA-gUAIecDQAD6BQAhAgAAACoAICMAAJ4HACACAAAAnAcAICMAAJ0HACAWwwMAAJsHADDEAwAAnAcAEMUDAACbBwAwxgMCAPgFACHWAwIA-AUAIdcDAgD4BQAh2AMCAIYGACHZAwEA-QUAIdoDAQD5BQAh2wMBAIUGACHcA0AAgwYAId0DAQD5BQAh3gNAAIMGACHfAwIAhgYAIeADAgD4BQAh4QMAALAGACDiAwIA-AUAIeMDIACHBgAh5ANAAIMGACHlAwEAhQYAIeYDQAD6BQAh5wNAAPoFACEWwwMAAJsHADDEAwAAnAcAEMUDAACbBwAwxgMCAPgFACHWAwIA-AUAIdcDAgD4BQAh2AMCAIYGACHZAwEA-QUAIdoDAQD5BQAh2wMBAIUGACHcA0AAgwYAId0DAQD5BQAh3gNAAIMGACHfAwIAhgYAIeADAgD4BQAh4QMAALAGACDiAwIA-AUAIeMDIACHBgAh5ANAAIMGACHlAwEAhQYAIeYDQAD6BQAh5wNAAPoFACESxgMCAN0GACHWAwIA3QYAIdcDAgDdBgAh2QMBANwGACHaAwEA3AYAIdsDAQDvBgAh3ANAAPAGACHdAwEA3AYAId4DQADwBgAh3wMCAPMGACHgAwIA3QYAIeEDgAAAAAHiAwIA3QYAIeMDIADxBgAh5ANAAPAGACHlAwEA7wYAIeYDQADyBgAh5wNAAPIGACEZDgAA9AYAIA8AAPoGACAQAAD1BgAgEgAA9wYAIBMAAPgGACAUAAD5BgAgFgAA-wYAIMYDAgDdBgAh1gMCAN0GACHXAwIA3QYAIdkDAQDcBgAh2gMBANwGACHbAwEA7wYAIdwDQADwBgAh3QMBANwGACHeA0AA8AYAId8DAgDzBgAh4AMCAN0GACHhA4AAAAAB4gMCAN0GACHjAyAA8QYAIeQDQADwBgAh5QMBAO8GACHmA0AA8gYAIecDQADyBgAhGQ4AAKAHACAPAAClBwAgEAAAoQcAIBIAAKIHACATAACjBwAgFAAApAcAIBYAAKYHACDGAwIAAAAB1gMCAAAAAdcDAgAAAAHZAwEAAAAB2gMBAAAAAdsDAQAAAAHcA0AAAAAB3QMBAAAAAd4DQAAAAAHfAwIAAAAB4AMCAAAAAeEDgAAAAAHiAwIAAAAB4wMgAAAAAeQDQAAAAAHlAwEAAAAB5gNAAAAAAecDQAAAAAEDKAAA0gsAIOgEAADTCwAg7gQAAB4AIAMoAADQCwAg6AQAANELACDuBAAAJgAgBCgAAJQHADDoBAAAlQcAMOoEAACXBwAg7gQAAJgHADADKAAAzgsAIOgEAADPCwAg7gQAAAEAIAMoAADMCwAg6AQAAM0LACDuBAAAAQAgBCgAAIgHADDoBAAAiQcAMOoEAACLBwAg7gQAAIwHADAEKAAA_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-AUAIeIDAgD4BQAh5gNAAPoFACHnA0AA-gUAIe4DAQCFBgAh7wMBAPkFACHjBAAAwQYAIAIAAAAmACAjAADfBwAgAgAAAN0HACAjAADeBwAgC8MDAADcBwAwxAMAAN0HABDFAwAA3AcAMMYDAgD4BQAhyAMBAPkFACHWAwIA-AUAIeIDAgD4BQAh5gNAAPoFACHnA0AA-gUAIe4DAQCFBgAh7wMBAPkFACELwwMAANwHADDEAwAA3QcAEMUDAADcBwAwxgMCAPgFACHIAwEA-QUAIdYDAgD4BQAh4gMCAPgFACHmA0AA-gUAIecDQAD6BQAh7gMBAIUGACHvAwEA-QUAIQfGAwIA3QYAIcgDAQDcBgAh4gMCAN0GACHmA0AA8gYAIecDQADyBgAh7gMBAO8GACHvAwEA3AYAIQgXAACuBwAgxgMCAN0GACHIAwEA3AYAIeIDAgDdBgAh5gNAAPIGACHnA0AA8gYAIe4DAQDvBgAh7wMBANwGACEIFwAAuQcAIMYDAgAAAAHIAwEAAAAB4gMCAAAAAeYDQAAAAAHnA0AAAAAB7gMBAAAAAe8DAQAAAAEFAwAAwgcAIMYDAgAAAAHVAwIAAAAB5gNAAAAAAfADAQAAAAECAAAAIgAgKAAA7AcAIAMAAAAiACAoAADsBwAgKQAA6wcAIAEjAAC0CwAwCwMAALgGACAOAAC6BgAgwwMAAMQGADDEAwAAIAAQxQMAAMQGADDGAwIAAAAB1QMCAPgFACHWAwIA-AUAIeYDQAD6BQAh8AMBAPkFACHkBAAAwwYAIAIAAAAiACAjAADrBwAgAgAAAOkHACAjAADqBwAgCMMDAADoBwAwxAMAAOkHABDFAwAA6AcAMMYDAgD4BQAh1QMCAPgFACHWAwIA-AUAIeYDQAD6BQAh8AMBAPkFACEIwwMAAOgHADDEAwAA6QcAEMUDAADoBwAwxgMCAPgFACHVAwIA-AUAIdYDAgD4BQAh5gNAAPoFACHwAwEA-QUAIQTGAwIA3QYAIdUDAgDdBgAh5gNAAPIGACHwAwEA3AYAIQUDAADABwAgxgMCAN0GACHVAwIA3QYAIeYDQADyBgAh8AMBANwGACEFAwAAwgcAIMYDAgAAAAHVAwIAAAAB5gNAAAAAAfADAQAAAAEDKAAAsgsAIOgEAACzCwAg7gQAAAEAIAQoAADhBwAw6AQAAOIHADDqBAAA5AcAIO4EAADlBwAwBCgAANUHADDoBAAA1gcAMOoEAADYBwAg7gQAANkHADAEKAAAzAcAMOgEAADNBwAw6gQAAM8HACDuBAAAmAcAMAAAAAAABygAAK0LACApAACwCwAg6AQAAK4LACDpBAAArwsAIOwEAAAaACDtBAAAGgAg7gQAAAEAIAMoAACtCwAg6AQAAK4LACDuBAAAAQAgAAAAAAAFKAAAqAsAICkAAKsLACDoBAAAqQsAIOkEAACqCwAg7gQAAA8AIAMoAACoCwAg6AQAAKkLACDuBAAADwAgAAAAAAAFKAAAogsAICkAAKYLACDoBAAAowsAIOkEAAClCwAg7gQAAAEAIAsoAACGCAAwKQAAiwgAMOgEAACHCAAw6QQAAIgIADDqBAAAiQgAIOsEAACKCAAw7AQAAIoIADDtBAAAiggAMO4EAACKCAAw7wQAAIwIADDwBAAAjQgAMAjGAwIAAAAB2QMBAAAAAd4DQAAAAAHiAwIAAAAB5gNAAAAAAecDQAAAAAH6AwEAAAAB-wMgAAAAAQIAAAATACAoAACRCAAgAwAAABMAICgAAJEIACApAACQCAAgASMAAKQLADANCQAA0AYAIMMDAADPBgAwxAMAABEAEMUDAADPBgAwxgMCAAAAAdkDAQD5BQAh3gNAAIMGACHiAwIA-AUAIeYDQAD6BQAh5wNAAPoFACH5AwIA-AUAIfoDAQD5BQAh-wMgAIcGACECAAAAEwAgIwAAkAgAIAIAAACOCAAgIwAAjwgAIAzDAwAAjQgAMMQDAACOCAAQxQMAAI0IADDGAwIA-AUAIdkDAQD5BQAh3gNAAIMGACHiAwIA-AUAIeYDQAD6BQAh5wNAAPoFACH5AwIA-AUAIfoDAQD5BQAh-wMgAIcGACEMwwMAAI0IADDEAwAAjggAEMUDAACNCAAwxgMCAPgFACHZAwEA-QUAId4DQACDBgAh4gMCAPgFACHmA0AA-gUAIecDQAD6BQAh-QMCAPgFACH6AwEA-QUAIfsDIACHBgAhCMYDAgDdBgAh2QMBANwGACHeA0AA8AYAIeIDAgDdBgAh5gNAAPIGACHnA0AA8gYAIfoDAQDcBgAh-wMgAPEGACEIxgMCAN0GACHZAwEA3AYAId4DQADwBgAh4gMCAN0GACHmA0AA8gYAIecDQADyBgAh-gMBANwGACH7AyAA8QYAIQjGAwIAAAAB2QMBAAAAAd4DQAAAAAHiAwIAAAAB5gNAAAAAAecDQAAAAAH6AwEAAAAB-wMgAAAAAQMoAACiCwAg6AQAAKMLACDuBAAAAQAgBCgAAIYIADDoBAAAhwgAMOoEAACJCAAg7gQAAIoIADAAAAAAAAUoAACaCwAgKQAAoAsAIOgEAACbCwAg6QQAAJ8LACDuBAAABQAgBSgAAJgLACApAACdCwAg6AQAAJkLACDpBAAAnAsAIO4EAAABACADKAAAmgsAIOgEAACbCwAg7gQAAAUAIAMoAACYCwAg6AQAAJkLACDuBAAAAQAgAAAAAAAFKAAAkgsAICkAAJYLACDoBAAAkwsAIOkEAACVCwAg7gQAAAEAIAsoAACkCAAwKQAAqQgAMOgEAAClCAAw6QQAAKYIADDqBAAApwgAIOsEAACoCAAw7AQAAKgIADDtBAAAqAgAMO4EAACoCAAw7wQAAKoIADDwBAAAqwgAMAgDAACcCAAgxgMCAAAAAdUDAgAAAAHmA0AAAAAB-gMBAAAAAf0DAQAAAAH-AwIAAAAB_wMBAAAAAQIAAAAJACAoAACvCAAgAwAAAAkAICgAAK8IACApAACuCAAgASMAAJQLADAOAwAAuAYAIAQAANUGACDDAwAA1AYAMMQDAAAHABDFAwAA1AYAMMYDAgAAAAHVAwIA-AUAIeYDQAD6BQAh-gMBAPkFACH8AwIA-AUAIf0DAQD5BQAh_gMCAPgFACH_AwEA-QUAIeUEAADTBgAgAgAAAAkAICMAAK4IACACAAAArAgAICMAAK0IACALwwMAAKsIADDEAwAArAgAEMUDAACrCAAwxgMCAPgFACHVAwIA-AUAIeYDQAD6BQAh-gMBAPkFACH8AwIA-AUAIf0DAQD5BQAh_gMCAPgFACH_AwEA-QUAIQvDAwAAqwgAMMQDAACsCAAQxQMAAKsIADDGAwIA-AUAIdUDAgD4BQAh5gNAAPoFACH6AwEA-QUAIfwDAgD4BQAh_QMBAPkFACH-AwIA-AUAIf8DAQD5BQAhB8YDAgDdBgAh1QMCAN0GACHmA0AA8gYAIfoDAQDcBgAh_QMBANwGACH-AwIA3QYAIf8DAQDcBgAhCAMAAJoIACDGAwIA3QYAIdUDAgDdBgAh5gNAAPIGACH6AwEA3AYAIf0DAQDcBgAh_gMCAN0GACH_AwEA3AYAIQgDAACcCAAgxgMCAAAAAdUDAgAAAAHmA0AAAAAB-gMBAAAAAf0DAQAAAAH-AwIAAAAB_wMBAAAAAQMoAACSCwAg6AQAAJMLACDuBAAAAQAgBCgAAKQIADDoBAAApQgAMOoEAACnCAAg7gQAAKgIADAAAAAAAAXrBAgAAAAB8gQIAAAAAfMECAAAAAH0BAgAAAAB9QQIAAAAAQUoAACNCwAgKQAAkAsAIOgEAACOCwAg6QQAAI8LACDuBAAAkQMAIAMoAACNCwAg6AQAAI4LACDuBAAAkQMAIAAAAAAABSgAAIgLACApAACLCwAg6AQAAIkLACDpBAAAigsAIO4EAACRAwAgAygAAIgLACDoBAAAiQsAIO4EAACRAwAgAAAAAAAFKAAAgQsAICkAAIYLACDoBAAAggsAIOkEAACFCwAg7gQAAI0DACALKAAA1QgAMCkAANoIADDoBAAA1ggAMOkEAADXCAAw6gQAANgIACDrBAAA2QgAMOwEAADZCAAw7QQAANkIADDuBAAA2QgAMO8EAADbCAAw8AQAANwIADALKAAAyQgAMCkAAM4IADDoBAAAyggAMOkEAADLCAAw6gQAAMwIACDrBAAAzQgAMOwEAADNCAAw7QQAAM0IADDuBAAAzQgAMO8EAADPCAAw8AQAANAIADAGxgMCAAAAAeYDQAAAAAGEBEAAAAABhQQIAAAAAYYECAAAAAGHBIAAAAABAgAAAJkDACAoAADUCAAgAwAAAJkDACAoAADUCAAgKQAA0wgAIAEjAACECwAwDO0BAACABgAgwwMAAP0FADDEAwAAlwMAEMUDAAD9BQAwxgMCAAAAAeYDQAD6BQAhgwQCAPgFACGEBEAA-gUAIYUECAD-BQAhhgQIAP4FACGHBAAA_wUAIKEEAAD8BQAgAgAAAJkDACAjAADTCAAgAgAAANEIACAjAADSCAAgCsMDAADQCAAwxAMAANEIABDFAwAA0AgAMMYDAgD4BQAh5gNAAPoFACGDBAIA-AUAIYQEQAD6BQAhhQQIAP4FACGGBAgA_gUAIYcEAAD_BQAgCsMDAADQCAAwxAMAANEIABDFAwAA0AgAMMYDAgD4BQAh5gNAAPoFACGDBAIA-AUAIYQEQAD6BQAhhQQIAP4FACGGBAgA_gUAIYcEAAD_BQAgBsYDAgDdBgAh5gNAAPIGACGEBEAA8gYAIYUECAC3CAAhhgQIALcIACGHBIAAAAABBsYDAgDdBgAh5gNAAPIGACGEBEAA8gYAIYUECAC3CAAhhgQIALcIACGHBIAAAAABBsYDAgAAAAHmA0AAAAABhARAAAAAAYUECAAAAAGGBAgAAAABhwSAAAAAAQ7GAwIAAAAB5gNAAAAAAf0DQAAAAAGFBAgAAAABhgQIAAAAAYcEgAAAAAGIBAgAAAABiQQIAAAAAYoECAAAAAGLBAgAAAABjAQIAAAAAY0ECAAAAAGOBAEAAAABjwRAAAAAAQIAAACVAwAgKAAA4AgAIAMAAACVAwAgKAAA4AgAICkAAN8IACABIwAAgwsAMBTtAQAAgAYAIMMDAACCBgAwxAMAAJMDABDFAwAAggYAMMYDAgAAAAHmA0AA-gUAIf0DQAD6BQAhgwQCAPgFACGFBAgA_gUAIYYECAD-BQAhhwQAAP8FACCIBAgA_gUAIYkECAD-BQAhigQIAP4FACGLBAgA_gUAIYwECAD-BQAhjQQIAP4FACGOBAEA-QUAIY8EQACDBgAhogQAAIEGACACAAAAlQMAICMAAN8IACACAAAA3QgAICMAAN4IACASwwMAANwIADDEAwAA3QgAEMUDAADcCAAwxgMCAPgFACHmA0AA-gUAIf0DQAD6BQAhgwQCAPgFACGFBAgA_gUAIYYECAD-BQAhhwQAAP8FACCIBAgA_gUAIYkECAD-BQAhigQIAP4FACGLBAgA_gUAIYwECAD-BQAhjQQIAP4FACGOBAEA-QUAIY8EQACDBgAhEsMDAADcCAAwxAMAAN0IABDFAwAA3AgAMMYDAgD4BQAh5gNAAPoFACH9A0AA-gUAIYMEAgD4BQAhhQQIAP4FACGGBAgA_gUAIYcEAAD_BQAgiAQIAP4FACGJBAgA_gUAIYoECAD-BQAhiwQIAP4FACGMBAgA_gUAIY0ECAD-BQAhjgQBAPkFACGPBEAAgwYAIQ7GAwIA3QYAIeYDQADyBgAh_QNAAPIGACGFBAgAtwgAIYYECAC3CAAhhwSAAAAAAYgECAC3CAAhiQQIALcIACGKBAgAtwgAIYsECAC3CAAhjAQIALcIACGNBAgAtwgAIY4EAQDcBgAhjwRAAPAGACEOxgMCAN0GACHmA0AA8gYAIf0DQADyBgAhhQQIALcIACGGBAgAtwgAIYcEgAAAAAGIBAgAtwgAIYkECAC3CAAhigQIALcIACGLBAgAtwgAIYwECAC3CAAhjQQIALcIACGOBAEA3AYAIY8EQADwBgAhDsYDAgAAAAHmA0AAAAAB_QNAAAAAAYUECAAAAAGGBAgAAAABhwSAAAAAAYgECAAAAAGJBAgAAAABigQIAAAAAYsECAAAAAGMBAgAAAABjQQIAAAAAY4EAQAAAAGPBEAAAAABAygAAIELACDoBAAAggsAIO4EAACNAwAgBCgAANUIADDoBAAA1ggAMOoEAADYCAAg7gQAANkIADAEKAAAyQgAMOgEAADKCAAw6gQAAMwIACDuBAAAzQgAMAAAAAAACygAAOoIADApAADvCAAw6AQAAOsIADDpBAAA7AgAMOoEAADtCAAg6wQAAO4IADDsBAAA7ggAMO0EAADuCAAw7gQAAO4IADDvBAAA8AgAMPAEAADxCAAwEu4BAADiCAAg7wEAAOMIACDGAwIAAAAByAMBAAAAAeYDQAAAAAGQBAEAAAABkgQBAAAAAZMEAQAAAAGUBAIAAAABlQQCAAAAAZYEAgAAAAGXBAIAAAABmAQCAAAAAZkEAgAAAAGaBAIAAAABmwRAAAAAAZwEIAAAAAGdBEAAAAABAgAAAJEDACAoAAD1CAAgAwAAAJEDACAoAAD1CAAgKQAA9AgAIAEjAACACwAwF-wBAACIBgAg7gEAAIkGACDvAQAAigYAIMMDAACEBgAwxAMAAI8DABDFAwAAhAYAMMYDAgAAAAHIAwEA-QUAIeYDQAD6BQAhkAQBAAAAAZEEAQD5BQAhkgQBAPkFACGTBAEAhQYAIZQEAgD4BQAhlQQCAPgFACGWBAIA-AUAIZcEAgD4BQAhmAQCAPgFACGZBAIA-AUAIZoEAgCGBgAhmwRAAIMGACGcBCAAhwYAIZ0EQACDBgAhAgAAAJEDACAjAAD0CAAgAgAAAPIIACAjAADzCAAgFMMDAADxCAAwxAMAAPIIABDFAwAA8QgAMMYDAgD4BQAhyAMBAPkFACHmA0AA-gUAIZAEAQD5BQAhkQQBAPkFACGSBAEA-QUAIZMEAQCFBgAhlAQCAPgFACGVBAIA-AUAIZYEAgD4BQAhlwQCAPgFACGYBAIA-AUAIZkEAgD4BQAhmgQCAIYGACGbBEAAgwYAIZwEIACHBgAhnQRAAIMGACEUwwMAAPEIADDEAwAA8ggAEMUDAADxCAAwxgMCAPgFACHIAwEA-QUAIeYDQAD6BQAhkAQBAPkFACGRBAEA-QUAIZIEAQD5BQAhkwQBAIUGACGUBAIA-AUAIZUEAgD4BQAhlgQCAPgFACGXBAIA-AUAIZgEAgD4BQAhmQQCAPgFACGaBAIAhgYAIZsEQACDBgAhnAQgAIcGACGdBEAAgwYAIRDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGQBAEA3AYAIZIEAQDcBgAhkwQBAO8GACGUBAIA3QYAIZUEAgDdBgAhlgQCAN0GACGXBAIA3QYAIZgEAgDdBgAhmQQCAN0GACGaBAIA8wYAIZsEQADwBgAhnAQgAPEGACGdBEAA8AYAIRLuAQAAxwgAIO8BAADICAAgxgMCAN0GACHIAwEA3AYAIeYDQADyBgAhkAQBANwGACGSBAEA3AYAIZMEAQDvBgAhlAQCAN0GACGVBAIA3QYAIZYEAgDdBgAhlwQCAN0GACGYBAIA3QYAIZkEAgDdBgAhmgQCAPMGACGbBEAA8AYAIZwEIADxBgAhnQRAAPAGACES7gEAAOIIACDvAQAA4wgAIMYDAgAAAAHIAwEAAAAB5gNAAAAAAZAEAQAAAAGSBAEAAAABkwQBAAAAAZQEAgAAAAGVBAIAAAABlgQCAAAAAZcEAgAAAAGYBAIAAAABmQQCAAAAAZoEAgAAAAGbBEAAAAABnAQgAAAAAZ0EQAAAAAEEKAAA6ggAMOgEAADrCAAw6gQAAO0IACDuBAAA7ggAMAAB0wMBAAAAAQjsAQAA-wgAIO4BAAD8CAAg7wEAAP0IACCTBAAA6QYAIJoEAADpBgAgmwQAAOkGACCdBAAA6QYAIPEEAAD-CAAgAdMDAQAAAAEC8AEAAPcIACDxBAAA-AgAIAAAAdMDAQAAAAEAAAAAAAHTAwEAAAABAAAAAAAF6wQIAAAAAfIECAAAAAHzBAgAAAAB9AQIAAAAAfUECAAAAAEB0wMBAAAAAQAAAAAAAdMDAQAAAAEAAAAAAAHTAwEAAAABAAAAAAAB0wMBAAAAAQAAAAAABesEBAAAAAHyBAQAAAAB8wQEAAAAAfQEBAAAAAH1BAQAAAABAdMDAQAAAAEAAAAAAAHTAwEAAAABAAAAAAAB0wMBAAAAAQAAAAAAAdMDAQAAAAEAAAAAAAUoAAD7CgAgKQAA_goAIOgEAAD8CgAg6QQAAP0KACDuBAAAjgEAIAMoAAD7CgAg6AQAAPwKACDuBAAAjgEAIAAAAAAACygAAMQJADApAADJCQAw6AQAAMUJADDpBAAAxgkAMOoEAADHCQAg6wQAAMgJADDsBAAAyAkAMO0EAADICQAw7gQAAMgJADDvBAAAygkAMPAEAADLCQAwBcYDAgAAAAHmA0AAAAAB5wNAAAAAAYAEAQAAAAHZBAgAAAABAgAAAJIBACAoAADPCQAgAwAAAJIBACAoAADPCQAgKQAAzgkAIAEjAAD6CgAwC1AAAK0GACDDAwAArAYAMMQDAACQAQAQxQMAAKwGADDGAwIAAAAB5gNAAPoFACHnA0AA-gUAIYAEAQD5BQAh2AQCAPgFACHZBAgAkQYAId4EAACrBgAgAgAAAJIBACAjAADOCQAgAgAAAMwJACAjAADNCQAgCcMDAADLCQAwxAMAAMwJABDFAwAAywkAMMYDAgD4BQAh5gNAAPoFACHnA0AA-gUAIYAEAQD5BQAh2AQCAPgFACHZBAgAkQYAIQnDAwAAywkAMMQDAADMCQAQxQMAAMsJADDGAwIA-AUAIeYDQAD6BQAh5wNAAPoFACGABAEA-QUAIdgEAgD4BQAh2QQIAJEGACEFxgMCAN0GACHmA0AA8gYAIecDQADyBgAhgAQBANwGACHZBAgAigkAIQXGAwIA3QYAIeYDQADyBgAh5wNAAPIGACGABAEA3AYAIdkECACKCQAhBcYDAgAAAAHmA0AAAAAB5wNAAAAAAYAEAQAAAAHZBAgAAAABBCgAAMQJADDoBAAAxQkAMOoEAADHCQAg7gQAAMgJADAAAdMDAQAAAAECUQAA0QkAIPEEAADSCQAgAdMDAQAAAAEAAAAAAAHTAwEAAAABAAAAAAAB0wMBAAAAAQAAAAAACygAAMAKADApAADFCgAw6AQAAMEKADDpBAAAwgoAMOoEAADDCgAg6wQAAMQKADDsBAAAxAoAMO0EAADECgAw7gQAAMQKADDvBAAAxgoAMPAEAADHCgAwCygAALcKADApAAC7CgAw6AQAALgKADDpBAAAuQoAMOoEAAC6CgAg6wQAAKgIADDsBAAAqAgAMO0EAACoCAAw7gQAAKgIADDvBAAAvAoAMPAEAACrCAAwCygAAKsKADApAACwCgAw6AQAAKwKADDpBAAArQoAMOoEAACuCgAg6wQAAK8KADDsBAAArwoAMO0EAACvCgAw7gQAAK8KADDvBAAAsQoAMPAEAACyCgAwCygAAJ8KADApAACkCgAw6AQAAKAKADDpBAAAoQoAMOoEAACiCgAg6wQAAKMKADDsBAAAowoAMO0EAACjCgAw7gQAAKMKADDvBAAApQoAMPAEAACmCgAwCygAAJMKADApAACYCgAw6AQAAJQKADDpBAAAlQoAMOoEAACWCgAg6wQAAJcKADDsBAAAlwoAMO0EAACXCgAw7gQAAJcKADDvBAAAmQoAMPAEAACaCgAwCygAAIoKADApAACOCgAw6AQAAIsKADDpBAAAjAoAMOoEAACNCgAg6wQAAOUHADDsBAAA5QcAMO0EAADlBwAw7gQAAOUHADDvBAAAjwoAMPAEAADoBwAwCygAAIEKADApAACFCgAw6AQAAIIKADDpBAAAgwoAMOoEAACECgAg6wQAAJgHADDsBAAAmAcAMO0EAACYBwAw7gQAAJgHADDvBAAAhgoAMPAEAACbBwAwCygAAPgJADApAAD8CQAw6AQAAPkJADDpBAAA-gkAMOoEAAD7CQAg6wQAAJgHADDsBAAAmAcAMO0EAACYBwAw7gQAAJgHADDvBAAA_QkAMPAEAACbBwAwCygAAO8JADApAADzCQAw6AQAAPAJADDpBAAA8QkAMOoEAADyCQAg6wQAAIwHADDsBAAAjAcAMO0EAACMBwAw7gQAAIwHADDvBAAA9AkAMPAEAACPBwAwAxUAAOcGACDGAwIAAAABxwMCAAAAAQIAAAAxACAoAAD3CQAgAwAAADEAICgAAPcJACApAAD2CQAgASMAAPkKADACAAAAMQAgIwAA9gkAIAIAAACQBwAgIwAA9QkAIALGAwIA3QYAIccDAgDdBgAhAxUAAOUGACDGAwIA3QYAIccDAgDdBgAhAxUAAOcGACDGAwIAAAABxwMCAAAAARkOAACgBwAgDwAApQcAIBAAAKEHACARAACnBwAgEgAAogcAIBMAAKMHACAWAACmBwAgxgMCAAAAAdYDAgAAAAHXAwIAAAAB2AMCAAAAAdkDAQAAAAHaAwEAAAAB2wMBAAAAAdwDQAAAAAHdAwEAAAAB3gNAAAAAAd8DAgAAAAHhA4AAAAAB4gMCAAAAAeMDIAAAAAHkA0AAAAAB5QMBAAAAAeYDQAAAAAHnA0AAAAABAgAAACoAICgAAIAKACADAAAAKgAgKAAAgAoAICkAAP8JACABIwAA-AoAMAIAAAAqACAjAAD_CQAgAgAAAJwHACAjAAD-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-QUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfEDAgD4BQAh8gMgAIcGACHzAwAAsAYAIPQDAAD_BQAg9QMBAIUGACH2AwEA-QUAIQIAAAAeACAjAACdCgAgAgAAAJsKACAjAACcCgAgDsMDAACaCgAwxAMAAJsKABDFAwAAmgoAMMYDAgD4BQAhyAMBAPkFACHjAyAAhwYAIeYDQAD6BQAh5wNAAPoFACHxAwIA-AUAIfIDIACHBgAh8wMAALAGACD0AwAA_wUAIPUDAQCFBgAh9gMBAPkFACEOwwMAAJoKADDEAwAAmwoAEMUDAACaCgAwxgMCAPgFACHIAwEA-QUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfEDAgD4BQAh8gMgAIcGACHzAwAAsAYAIPQDAAD_BQAg9QMBAIUGACH2AwEA-QUAIQrGAwIA3QYAIcgDAQDcBgAh4wMgAPEGACHmA0AA8gYAIecDQADyBgAh8gMgAPEGACHzA4AAAAAB9AOAAAAAAfUDAQDvBgAh9gMBANwGACENDwAAyQcAIBcAAMsHACAYAADKBwAgxgMCAN0GACHIAwEA3AYAIeMDIADxBgAh5gNAAPIGACHnA0AA8gYAIfIDIADxBgAh8wOAAAAAAfQDgAAAAAH1AwEA7wYAIfYDAQDcBgAhDQ8AAO4HACAXAADwBwAgGAAA7wcAIMYDAgAAAAHIAwEAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB8gMgAAAAAfMDgAAAAAH0A4AAAAAB9QMBAAAAAfYDAQAAAAEHCoAAAAABxgMCAAAAAcgDAQAAAAHmA0AAAAAB5wNAAAAAAfcDAQAAAAH4AyAAAAABAgAAABgAICgAAKoKACADAAAAGAAgKAAAqgoAICkAAKkKACABIwAA9AoAMAwDAAC-BgAgCgAAsAYAIMMDAADOBgAwxAMAABYAEMUDAADOBgAwxgMCAAAAAcgDAQD5BQAh1QMCAIYGACHmA0AA-gUAIecDQAD6BQAh9wMBAPkFACH4AyAAhwYAIQIAAAAYACAjAACpCgAgAgAAAKcKACAjAACoCgAgCwoAALAGACDDAwAApgoAMMQDAACnCgAQxQMAAKYKADDGAwIA-AUAIcgDAQD5BQAh1QMCAIYGACHmA0AA-gUAIecDQAD6BQAh9wMBAPkFACH4AyAAhwYAIQsKAACwBgAgwwMAAKYKADDEAwAApwoAEMUDAACmCgAwxgMCAPgFACHIAwEA-QUAIdUDAgCGBgAh5gNAAPoFACHnA0AA-gUAIfcDAQD5BQAh-AMgAIcGACEHCoAAAAABxgMCAN0GACHIAwEA3AYAIeYDQADyBgAh5wNAAPIGACH3AwEA3AYAIfgDIADxBgAhBwqAAAAAAcYDAgDdBgAhyAMBANwGACHmA0AA8gYAIecDQADyBgAh9wMBANwGACH4AyAA8QYAIQcKgAAAAAHGAwIAAAAByAMBAAAAAeYDQAAAAAHnA0AAAAAB9wMBAAAAAfgDIAAAAAEICgAAkwgAIMYDAgAAAAHZAwEAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB9wMBAAAAAfoDAQAAAAECAAAADwAgKAAAtgoAIAMAAAAPACAoAAC2CgAgKQAAtQoAIAEjAADzCgAwDQMAALgGACAKAADSBgAgwwMAANEGADDEAwAADQAQxQMAANEGADDGAwIAAAAB1QMCAPgFACHZAwEA-QUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfcDAQD5BQAh-gMBAPkFACECAAAADwAgIwAAtQoAIAIAAACzCgAgIwAAtAoAIAvDAwAAsgoAMMQDAACzCgAQxQMAALIKADDGAwIA-AUAIdUDAgD4BQAh2QMBAPkFACHjAyAAhwYAIeYDQAD6BQAh5wNAAPoFACH3AwEA-QUAIfoDAQD5BQAhC8MDAACyCgAwxAMAALMKABDFAwAAsgoAMMYDAgD4BQAh1QMCAPgFACHZAwEA-QUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfcDAQD5BQAh-gMBAPkFACEHxgMCAN0GACHZAwEA3AYAIeMDIADxBgAh5gNAAPIGACHnA0AA8gYAIfcDAQDcBgAh-gMBANwGACEICgAAhQgAIMYDAgDdBgAh2QMBANwGACHjAyAA8QYAIeYDQADyBgAh5wNAAPIGACH3AwEA3AYAIfoDAQDcBgAhCAoAAJMIACDGAwIAAAAB2QMBAAAAAeMDIAAAAAHmA0AAAAAB5wNAAAAAAfcDAQAAAAH6AwEAAAABCAQAAJsIACDGAwIAAAAB5gNAAAAAAfoDAQAAAAH8AwIAAAAB_QMBAAAAAf4DAgAAAAH_AwEAAAABAgAAAAkAICgAAL8KACADAAAACQAgKAAAvwoAICkAAL4KACABIwAA8goAMAIAAAAJACAjAAC-CgAgAgAAAKwIACAjAAC9CgAgB8YDAgDdBgAh5gNAAPIGACH6AwEA3AYAIfwDAgDdBgAh_QMBANwGACH-AwIA3QYAIf8DAQDcBgAhCAQAAJkIACDGAwIA3QYAIeYDQADyBgAh-gMBANwGACH8AwIA3QYAIf0DAQDcBgAh_gMCAN0GACH_AwEA3AYAIQgEAACbCAAgxgMCAAAAAeYDQAAAAAH6AwEAAAAB_AMCAAAAAf0DAQAAAAH-AwIAAAAB_wMBAAAAAQwFAACxCAAgxgMCAAAAAcgDAQAAAAHiAwIAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB9QMBAAAAAfoDAQAAAAGABAEAAAABgQQCAAAAAYIEAQAAAAECAAAABQAgKAAAywoAIAMAAAAFACAoAADLCgAgKQAAygoAIAEjAADxCgAwEQMAALgGACAFAADKBgAgwwMAANYGADDEAwAAAwAQxQMAANYGADDGAwIAAAAByAMBAPkFACHVAwIA-AUAIeIDAgD4BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh9QMBAPkFACH6AwEA-QUAIYAEAQD5BQAhgQQCAPgFACGCBAEA-QUAIQIAAAAFACAjAADKCgAgAgAAAMgKACAjAADJCgAgD8MDAADHCgAwxAMAAMgKABDFAwAAxwoAMMYDAgD4BQAhyAMBAPkFACHVAwIA-AUAIeIDAgD4BQAh4wMgAIcGACHmA0AA-gUAIecDQAD6BQAh9QMBAPkFACH6AwEA-QUAIYAEAQD5BQAhgQQCAPgFACGCBAEA-QUAIQ_DAwAAxwoAMMQDAADICgAQxQMAAMcKADDGAwIA-AUAIcgDAQD5BQAh1QMCAPgFACHiAwIA-AUAIeMDIACHBgAh5gNAAPoFACHnA0AA-gUAIfUDAQD5BQAh-gMBAPkFACGABAEA-QUAIYEEAgD4BQAhggQBAPkFACELxgMCAN0GACHIAwEA3AYAIeIDAgDdBgAh4wMgAPEGACHmA0AA8gYAIecDQADyBgAh9QMBANwGACH6AwEA3AYAIYAEAQDcBgAhgQQCAN0GACGCBAEA3AYAIQwFAACjCAAgxgMCAN0GACHIAwEA3AYAIeIDAgDdBgAh4wMgAPEGACHmA0AA8gYAIecDQADyBgAh9QMBANwGACH6AwEA3AYAIYAEAQDcBgAhgQQCAN0GACGCBAEA3AYAIQwFAACxCAAgxgMCAAAAAcgDAQAAAAHiAwIAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB9QMBAAAAAfoDAQAAAAGABAEAAAABgQQCAAAAAYIEAQAAAAEEKAAAwAoAMOgEAADBCgAw6gQAAMMKACDuBAAAxAoAMAQoAAC3CgAw6AQAALgKADDqBAAAugoAIO4EAACoCAAwBCgAAKsKADDoBAAArAoAMOoEAACuCgAg7gQAAK8KADAEKAAAnwoAMOgEAACgCgAw6gQAAKIKACDuBAAAowoAMAQoAACTCgAw6AQAAJQKADDqBAAAlgoAIO4EAACXCgAwBCgAAIoKADDoBAAAiwoAMOoEAACNCgAg7gQAAOUHADAEKAAAgQoAMOgEAACCCgAw6gQAAIQKACDuBAAAmAcAMAQoAAD4CQAw6AQAAPkJADDqBAAA-wkAIO4EAACYBwAwBCgAAO8JADDoBAAA8AkAMOoEAADyCQAg7gQAAIwHADAAAAAAAAAAAAHTAwEAAAABEA4AAOEKACAPAADcCgAgEAAA4goAIBEAAN4KACASAADbCgAgEwAA4AoAIBQAAOAKACAWAADjCgAg2AMAAOkGACDbAwAA6QYAINwDAADpBgAg3gMAAOkGACDfAwAA6QYAIOQDAADpBgAg5QMAAOkGACDxBAAA5AoAIAHTAwEAAAABCgcAANUKACAIAADWCgAgCwAA1woAIAwAANgKACAZAADZCgAgGgAA2goAIBsAANsKACAcAADbCgAgHQAA3AoAIPEEAADdCgAgBw0AAOAKACAPAADaCgAgFwAA2woAIBgAAOcKACD0AwAA6QYAIPUDAADpBgAg8QQAAOgKACAEDgAA4QoAIBcAANsKACDuAwAA6QYAIPEEAADlCgAgAAHTAwEAAAABAdMDAQAAAAEB0wMBAAAAAQAB0wMBAAAAAQHTAwEAAAABAwMAAOAKACAKAADsCgAg8QQAAO0KACAB0wMBAAAAAQAB0wMBAAAAAQMDAADgCgAgBQAA1goAIPEEAADwCgAgAdMDAQAAAAEB0wMBAAAAAQvGAwIAAAAByAMBAAAAAeIDAgAAAAHjAyAAAAAB5gNAAAAAAecDQAAAAAH1AwEAAAAB-gMBAAAAAYAEAQAAAAGBBAIAAAABggQBAAAAAQfGAwIAAAAB5gNAAAAAAfoDAQAAAAH8AwIAAAAB_QMBAAAAAf4DAgAAAAH_AwEAAAABB8YDAgAAAAHZAwEAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB9wMBAAAAAfoDAQAAAAEHCoAAAAABxgMCAAAAAcgDAQAAAAHmA0AAAAAB5wNAAAAAAfcDAQAAAAH4AyAAAAABCsYDAgAAAAHIAwEAAAAB4wMgAAAAAeYDQAAAAAHnA0AAAAAB8gMgAAAAAfMDgAAAAAH0A4AAAAAB9QMBAAAAAfYDAQAAAAEExgMCAAAAAdYDAgAAAAHmA0AAAAAB8AMBAAAAARLGAwIAAAAB1gMCAAAAAdcDAgAAAAHYAwIAAAAB2QMBAAAAAdoDAQAAAAHbAwEAAAAB3ANAAAAAAd0DAQAAAAHeA0AAAAAB4AMCAAAAAeEDgAAAAAHiAwIAAAAB4wMgAAAAAeQDQAAAAAHlAwEAAAAB5gNAAAAAAecDQAAAAAESxgMCAAAAAdYDAgAAAAHXAwIAAAAB2AMCAAAAAdkDAQAAAAHaAwEAAAAB2wMBAAAAAdwDQAAAAAHdAwEAAAAB3gNAAAAAAd8DAgAAAAHhA4AAAAAB4gMCAAAAAeMDIAAAAAHkA0AAAAAB5QMBAAAAAeYDQAAAAAHnA0AAAAABAsYDAgAAAAHHAwIAAAABBcYDAgAAAAHmA0AAAAAB5wNAAAAAAYAEAQAAAAHZBAgAAAABCsYDAgAAAAHIAwEAAAAB2QMBAAAAAeYDQAAAAAHnA0AAAAAB_wMBAAAAAdoEAQAAAAHbBAEAAAAB3AQBAAAAAd0EIAAAAAECAAAAjgEAICgAAPsKACADAAAAlgEAICgAAPsKACApAAD_CgAgDAAAAJYBACAjAAD_CgAgxgMCAN0GACHIAwEA3AYAIdkDAQDcBgAh5gNAAPIGACHnA0AA8gYAIf8DAQDcBgAh2gQBANwGACHbBAEA3AYAIdwEAQDcBgAh3QQgAPEGACEKxgMCAN0GACHIAwEA3AYAIdkDAQDcBgAh5gNAAPIGACHnA0AA8gYAIf8DAQDcBgAh2gQBANwGACHbBAEA3AYAIdwEAQDcBgAh3QQgAPEGACEQxgMCAAAAAcgDAQAAAAHmA0AAAAABkAQBAAAAAZIEAQAAAAGTBAEAAAABlAQCAAAAAZUEAgAAAAGWBAIAAAABlwQCAAAAAZgEAgAAAAGZBAIAAAABmgQCAAAAAZsEQAAAAAGcBCAAAAABnQRAAAAAAQTGAwIAAAAByAMBAAAAAeYDQAAAAAGRBAEAAAABAgAAAI0DACAoAACBCwAgDsYDAgAAAAHmA0AAAAAB_QNAAAAAAYUECAAAAAGGBAgAAAABhwSAAAAAAYgECAAAAAGJBAgAAAABigQIAAAAAYsECAAAAAGMBAgAAAABjQQIAAAAAY4EAQAAAAGPBEAAAAABBsYDAgAAAAHmA0AAAAABhARAAAAAAYUECAAAAAGGBAgAAAABhwSAAAAAAQMAAACfAwAgKAAAgQsAICkAAIcLACAGAAAAnwMAICMAAIcLACDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGRBAEA3AYAIQTGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGRBAEA3AYAIRPsAQAA4QgAIO8BAADjCAAgxgMCAAAAAcgDAQAAAAHmA0AAAAABkAQBAAAAAZEEAQAAAAGSBAEAAAABkwQBAAAAAZQEAgAAAAGVBAIAAAABlgQCAAAAAZcEAgAAAAGYBAIAAAABmQQCAAAAAZoEAgAAAAGbBEAAAAABnAQgAAAAAZ0EQAAAAAECAAAAkQMAICgAAIgLACADAAAAjwMAICgAAIgLACApAACMCwAgFQAAAI8DACAjAACMCwAg7AEAAMYIACDvAQAAyAgAIMYDAgDdBgAhyAMBANwGACHmA0AA8gYAIZAEAQDcBgAhkQQBANwGACGSBAEA3AYAIZMEAQDvBgAhlAQCAN0GACGVBAIA3QYAIZYEAgDdBgAhlwQCAN0GACGYBAIA3QYAIZkEAgDdBgAhmgQCAPMGACGbBEAA8AYAIZwEIADxBgAhnQRAAPAGACET7AEAAMYIACDvAQAAyAgAIMYDAgDdBgAhyAMBANwGACHmA0AA8gYAIZAEAQDcBgAhkQQBANwGACGSBAEA3AYAIZMEAQDvBgAhlAQCAN0GACGVBAIA3QYAIZYEAgDdBgAhlwQCAN0GACGYBAIA3QYAIZkEAgDdBgAhmgQCAPMGACGbBEAA8AYAIZwEIADxBgAhnQRAAPAGACET7AEAAOEIACDuAQAA4ggAIMYDAgAAAAHIAwEAAAAB5gNAAAAAAZAEAQAAAAGRBAEAAAABkgQBAAAAAZMEAQAAAAGUBAIAAAABlQQCAAAAAZYEAgAAAAGXBAIAAAABmAQCAAAAAZkEAgAAAAGaBAIAAAABmwRAAAAAAZwEIAAAAAGdBEAAAAABAgAAAJEDACAoAACNCwAgAwAAAI8DACAoAACNCwAgKQAAkQsAIBUAAACPAwAgIwAAkQsAIOwBAADGCAAg7gEAAMcIACDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGQBAEA3AYAIZEEAQDcBgAhkgQBANwGACGTBAEA7wYAIZQEAgDdBgAhlQQCAN0GACGWBAIA3QYAIZcEAgDdBgAhmAQCAN0GACGZBAIA3QYAIZoEAgDzBgAhmwRAAPAGACGcBCAA8QYAIZ0EQADwBgAhE-wBAADGCAAg7gEAAMcIACDGAwIA3QYAIcgDAQDcBgAh5gNAAPIGACGQBAEA3AYAIZEEAQDcBgAhkgQBANwGACGTBAEA7wYAIZQEAgDdBgAhlQQCAN0GACGWBAIA3QYAIZcEAgDdBgAhmAQCAN0GACGZBAIA3QYAIZoEAgDzBgAhmwRAAPAGACGcBCAA8QYAIZ0EQADwBgAhDggAAM0KACALAADOCgAgDAAAzwoAIBkAANAKACAaAADRCgAgGwAA0goAIBwAANMKACAdAADUCgAgxgMCAAAAAcgDAQAAAAHmA0AAAAAB5wNAAAAAAeAEAQAAAAHhBAEAAAABAgAAAAEAICgAAJILACAHxgMCAAAAAdUDAgAAAAHmA0AAAAAB-gMBAAAAAf0DAQAAAAH-AwIAAAAB_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-LgB_LwCAATAAgQExAIIBAAAAAAAFBgB-LgB_LwCAATAAgQExAIIBAgYAiQHwAZIDhQEEBgCIAewBAIQB7gGWA4YB7wGaA4cBAe0BAIUBAe0BAIUBAu4BmwMA7wGcAwAB8AGdAwAFBgCLAS4AjAEvAI0BMACOATEAjwEAAAAAAAUGAIsBLgCMAS8AjQEwAI4BMQCPAQUGAJIBLgCTAS8AlAEwAJUBMQCWAQAAAAAABQYAkgEuAJMBLwCUATAAlQExAJYBBQYAmQEuAJoBLwCbATAAnAExAJ0BAAAAAAAFBgCZAS4AmgEvAJsBMACcATEAnQEFBgCgAS4AoQEvAKIBMACjATEApAEAAAAAAAUGAKABLgChAS8AogEwAKMBMQCkAQUGAKcBLgCoAS8AqQEwAKoBMQCrAQAAAAAABQYApwEuAKgBLwCpATAAqgExAKsBBQYArgEuAK8BLwCwATAAsQExALIBAAAAAAAFBgCuAS4ArwEvALABMACxATEAsgEFBgC1AS4AtgEvALcBMAC4ATEAuQEAAAAAAAUGALUBLgC2AS8AtwEwALgBMQC5AQUGALwBLgC9AS8AvgEwAL8BMQDAAQAAAAAABQYAvAEuAL0BLwC-ATAAvwExAMABBQYAwwEuAMQBLwDFATAAxgExAMcBAAAAAAAFBgDDAS4AxAEvAMUBMADGATEAxwEFBgDKAS4AywEvAMwBMADNATEAzgEAAAAAAAUGAMoBLgDLAS8AzAEwAM0BMQDOAQUGANEBLgDSAS8A0wEwANQBMQDVAQAAAAAABQYA0QEuANIBLwDTATAA1AExANUBBQYA2AEuANkBLwDaATAA2wExANwBAAAAAAAFBgDYAS4A2QEvANoBMADbATEA3AEFBgDfAS4A4AEvAOEBMADiATEA4wEAAAAAAAUGAN8BLgDgAS8A4QEwAOIBMQDjAQUGAOYBLgDnAS8A6AEwAOkBMQDqAQAAAAAABQYA5gEuAOcBLwDoATAA6QExAOoBBQYA7QEuAO4BLwDvATAA8AExAPEBAAAAAAAFBgDtAS4A7gEvAO8BMADwATEA8QEeAgEfTAEgTgEhTwEiUAEkUgElVBMmVgEnWBMqWQErWgEsWxMyXhQzXxo0YRs1Yhs2ZRs3Zhs4Zxs5aRs6axM7bRs8bxM9cBs-cRs_chNAdRxBdiJCeCNDeSNEfCNFfSNGfiNHgAEjSIIBE0mEASNKhgETS4cBI0yIASNNiQETTowBJE-NASpSjwErU5UBK1SYAStVmQErVpoBK1ecAStYngETWaABK1qiARNbowErXKQBK12lARNeqAEuX6kBNGCqASxhqwEsYqwBLGOtASxkrgEsZbABLGayARNntAEsaLYBE2m3ASxquAEsa7kBE2y8ATVtvQE7br8BPG_AATxwwwE8ccQBPHLFATxzxwE8dMkBE3XLATx2zQETd84BPHjPATx50AETetMBPXvUAUN81gFEfdcBRH7aAUR_2wFEgAHcAUSBAd4BRIIB4AETgwHiAUSEAeQBE4UB5QFEhgHmAUSHAecBE4gB6gFFiQHrAUuKAe0BTIsB7gFMjAHxAUyNAfIBTI4B8wFMjwH1AUyQAfcBE5EB-QFMkgH7AROTAfwBTJQB_QFMlQH-AROWAYECTZcBggJTmAGEAlSZAYUCVJoBiAJUmwGJAlScAYoCVJ0BjAJUngGOAhOfAZACVKABkgIToQGTAlSiAZQCVKMBlQITpAGYAlWlAZkCW6YBmwJcpwGcAlyoAZ8CXKkBoAJcqgGhAlyrAaMCXKwBpQITrQGnAlyuAakCE68BqgJcsAGrAlyxAawCE7IBrwJdswGwAmO0AbICZLUBswJktgG2AmS3AbcCZLgBuAJkuQG6AmS6AbwCE7sBvgJkvAHAAhO9AcECZL4BwgJkvwHDAhPAAcYCZcEBxwJrwgHJAmzDAcoCbMQBzQJsxQHOAmzGAc8CbMcB0QJsyAHTAhPJAdUCbMoB1wITywHYAmzMAdkCbM0B2gITzgHdAm3PAd4Cc9AB4AJ00QHhAnTSAeQCdNMB5QJ01AHmAnTVAegCdNYB6gIT1wHsAnTYAe4CE9kB7wJ02gHwAnTbAfECE9wB9AJ13QH1AnveAfcCfN8B-AJ84AH7AnzhAfwCfOIB_QJ84wH_AnzkAYEDE-UBgwN85gGFAxPnAYYDfOgBhwN86QGIAxPqAYsDfesBjAODAfEBjgOEAfIBngOEAfMBoQOEAfQBogOEAfUBowOEAfYBpQOEAfcBpwMT-AGpA4QB-QGrAxP6AawDhAH7Aa0DhAH8Aa4DE_0BsQOKAf4BsgOQAf8BswOFAYACtAOFAYECtQOFAYICtgOFAYMCtwOFAYQCuQOFAYUCuwMThgK9A4UBhwK_AxOIAsADhQGJAsEDhQGKAsIDE4sCxQORAYwCxgOXAY0CxwOGAY4CyAOGAY8CyQOGAZACygOGAZECywOGAZICzQOGAZMCzwMTlALRA4YBlQLTAxOWAtQDhgGXAtUDhgGYAtYDE5kC2QOYAZoC2gOeAZsC2wOHAZwC3AOHAZ0C3QOHAZ4C3gOHAZ8C3wOHAaAC4QOHAaEC4wMTogLlA4cBowLnAxOkAugDhwGlAukDhwGmAuoDE6cC7QOfAagC7gOlAakC7wMCqgLwAwKrAvEDAqwC8gMCrQLzAwKuAvUDAq8C9wMTsAL5AwKxAvsDE7IC_AMCswL9AwK0Av4DE7UCgQSmAbYCggSsAbcCgwQDuAKEBAO5AoUEA7oChgQDuwKHBAO8AokEA70CiwQTvgKNBAO_Ao8EE8ACkAQDwQKRBAPCApIEE8MClQStAcQClgSzAcUClwQFxgKYBAXHApkEBcgCmgQFyQKbBAXKAp0EBcsCnwQTzAKhBAXNAqMEE84CpAQFzwKlBAXQAqYEE9ECqQS0AdICqgS6AdMCqwQG1AKsBAbVAq0EBtYCrgQG1wKvBAbYArEEBtkCswQT2gK1BAbbArcEE9wCuAQG3QK5BAbeAroEE98CvQS7AeACvgTBAeECvwQI4gLABAjjAsEECOQCwgQI5QLDBAjmAsUECOcCxwQT6ALJBAjpAssEE-oCzAQI6wLNBAjsAs4EE-0C0QTCAe4C0gTIAe8C0wQJ8ALUBAnxAtUECfIC1gQJ8wLXBAn0AtkECfUC2wQT9gLdBAn3At8EE_gC4AQJ-QLhBAn6AuIEE_sC5QTJAfwC5gTPAf0C5wQK_gLoBAr_AukECoAD6gQKgQPrBAqCA-0ECoMD7wQThAPxBAqFA_MEE4YD9AQKhwP1BAqIA_YEE4kD-QTQAYoD-gTWAYsD-wQLjAP8BAuNA_0EC44D_gQLjwP_BAuQA4EFC5EDgwUTkgOFBQuTA4cFE5QDiAULlQOJBQuWA4oFE5cDjQXXAZgDjgXdAZkDjwUMmgOQBQybA5EFDJwDkgUMnQOTBQyeA5UFDJ8DlwUToAOZBQyhA5sFE6IDnAUMowOdBQykA54FE6UDoQXeAaYDogXkAacDowUNqAOkBQ2pA6UFDaoDpgUNqwOnBQ2sA6kFDa0DqwUTrgOtBQ2vA68FE7ADsAUNsQOxBQ2yA7IFE7MDtQXlAbQDtgXrAbUDtwUOtgO4BQ63A7kFDrgDugUOuQO7BQ66A70FDrsDvwUTvAPBBQ69A8MFE74DxAUOvwPFBQ7AA8YFE8EDyQXsAcIDygXyAQ" } async function decodeBase64AsWasm(wasmBase64: string): Promise { @@ -417,6 +417,66 @@ export interface PrismaClient< * ``` */ get checkListTemplate(): Prisma.CheckListTemplateDelegate; + + /** + * `prisma.project`: Exposes CRUD operations for the **Project** model. + * Example usage: + * ```ts + * // Fetch zero or more Projects + * const projects = await prisma.project.findMany() + * ``` + */ + get project(): Prisma.ProjectDelegate; + + /** + * `prisma.projectMember`: Exposes CRUD operations for the **ProjectMember** model. + * Example usage: + * ```ts + * // Fetch zero or more ProjectMembers + * const projectMembers = await prisma.projectMember.findMany() + * ``` + */ + get projectMember(): Prisma.ProjectMemberDelegate; + + /** + * `prisma.boardColumn`: Exposes CRUD operations for the **BoardColumn** model. + * Example usage: + * ```ts + * // Fetch zero or more BoardColumns + * const boardColumns = await prisma.boardColumn.findMany() + * ``` + */ + get boardColumn(): Prisma.BoardColumnDelegate; + + /** + * `prisma.task`: Exposes CRUD operations for the **Task** model. + * Example usage: + * ```ts + * // Fetch zero or more Tasks + * const tasks = await prisma.task.findMany() + * ``` + */ + get task(): Prisma.TaskDelegate; + + /** + * `prisma.taskMember`: Exposes CRUD operations for the **TaskMember** model. + * Example usage: + * ```ts + * // Fetch zero or more TaskMembers + * const taskMembers = await prisma.taskMember.findMany() + * ``` + */ + get taskMember(): Prisma.TaskMemberDelegate; + + /** + * `prisma.taskTag`: Exposes CRUD operations for the **TaskTag** model. + * Example usage: + * ```ts + * // Fetch zero or more TaskTags + * const taskTags = await prisma.taskTag.findMany() + * ``` + */ + get taskTag(): Prisma.TaskTagDelegate; } export function getPrismaClientClass(): PrismaClientConstructor { diff --git a/generated/prisma/internal/prismaNamespace.ts b/generated/prisma/internal/prismaNamespace.ts index 26ef65d..d3aff03 100644 --- a/generated/prisma/internal/prismaNamespace.ts +++ b/generated/prisma/internal/prismaNamespace.ts @@ -406,7 +406,13 @@ export const ModelName = { CheckIn: 'CheckIn', CheckList: 'CheckList', CheckListItem: 'CheckListItem', - CheckListTemplate: 'CheckListTemplate' + CheckListTemplate: 'CheckListTemplate', + Project: 'Project', + ProjectMember: 'ProjectMember', + BoardColumn: 'BoardColumn', + Task: 'Task', + TaskMember: 'TaskMember', + TaskTag: 'TaskTag' } as const export type ModelName = (typeof ModelName)[keyof typeof ModelName] @@ -422,7 +428,7 @@ export type TypeMap + fields: Prisma.ProjectFieldRefs + operations: { + findUnique: { + args: Prisma.ProjectFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ProjectFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.ProjectFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ProjectFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.ProjectFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.ProjectCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.ProjectCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.ProjectDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.ProjectUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ProjectDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ProjectUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.ProjectUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.ProjectAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.ProjectGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.ProjectCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } + ProjectMember: { + payload: Prisma.$ProjectMemberPayload + fields: Prisma.ProjectMemberFieldRefs + operations: { + findUnique: { + args: Prisma.ProjectMemberFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ProjectMemberFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.ProjectMemberFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ProjectMemberFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.ProjectMemberFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.ProjectMemberCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.ProjectMemberCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.ProjectMemberDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.ProjectMemberUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ProjectMemberDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ProjectMemberUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.ProjectMemberUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.ProjectMemberAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.ProjectMemberGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.ProjectMemberCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } + BoardColumn: { + payload: Prisma.$BoardColumnPayload + fields: Prisma.BoardColumnFieldRefs + operations: { + findUnique: { + args: Prisma.BoardColumnFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.BoardColumnFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.BoardColumnFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.BoardColumnFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.BoardColumnFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.BoardColumnCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.BoardColumnCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.BoardColumnDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.BoardColumnUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.BoardColumnDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.BoardColumnUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.BoardColumnUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.BoardColumnAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.BoardColumnGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.BoardColumnCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } + Task: { + payload: Prisma.$TaskPayload + fields: Prisma.TaskFieldRefs + operations: { + findUnique: { + args: Prisma.TaskFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.TaskFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.TaskFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.TaskFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.TaskFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.TaskCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.TaskCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.TaskDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.TaskUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.TaskDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.TaskUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.TaskUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.TaskAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.TaskGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.TaskCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } + TaskMember: { + payload: Prisma.$TaskMemberPayload + fields: Prisma.TaskMemberFieldRefs + operations: { + findUnique: { + args: Prisma.TaskMemberFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.TaskMemberFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.TaskMemberFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.TaskMemberFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.TaskMemberFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.TaskMemberCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.TaskMemberCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.TaskMemberDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.TaskMemberUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.TaskMemberDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.TaskMemberUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.TaskMemberUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.TaskMemberAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.TaskMemberGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.TaskMemberCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } + TaskTag: { + payload: Prisma.$TaskTagPayload + fields: Prisma.TaskTagFieldRefs + operations: { + findUnique: { + args: Prisma.TaskTagFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.TaskTagFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.TaskTagFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.TaskTagFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.TaskTagFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.TaskTagCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.TaskTagCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.TaskTagDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.TaskTagUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.TaskTagDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.TaskTagUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.TaskTagUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.TaskTagAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.TaskTagGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.TaskTagCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } } } & { other: { @@ -2334,6 +2736,91 @@ export const CheckListTemplateScalarFieldEnum = { export type CheckListTemplateScalarFieldEnum = (typeof CheckListTemplateScalarFieldEnum)[keyof typeof CheckListTemplateScalarFieldEnum] +export const ProjectScalarFieldEnum = { + id: 'id', + name: 'name', + ownerId: 'ownerId', + isPersonal: 'isPersonal', + archived: 'archived', + notes: 'notes', + taskKinds: 'taskKinds', + icon: 'icon', + autoArchive: 'autoArchive', + createdAt: 'createdAt', + updatedAt: 'updatedAt' +} as const + +export type ProjectScalarFieldEnum = (typeof ProjectScalarFieldEnum)[keyof typeof ProjectScalarFieldEnum] + + +export const ProjectMemberScalarFieldEnum = { + id: 'id', + projectId: 'projectId', + userId: 'userId', + permission: 'permission', + createdAt: 'createdAt' +} as const + +export type ProjectMemberScalarFieldEnum = (typeof ProjectMemberScalarFieldEnum)[keyof typeof ProjectMemberScalarFieldEnum] + + +export const BoardColumnScalarFieldEnum = { + id: 'id', + projectId: 'projectId', + name: 'name', + sortOrder: 'sortOrder', + boundStatus: 'boundStatus', + retention: 'retention', + createdAt: 'createdAt', + updatedAt: 'updatedAt' +} as const + +export type BoardColumnScalarFieldEnum = (typeof BoardColumnScalarFieldEnum)[keyof typeof BoardColumnScalarFieldEnum] + + +export const TaskScalarFieldEnum = { + id: 'id', + projectId: 'projectId', + columnId: 'columnId', + parentId: 'parentId', + title: 'title', + description: 'description', + kind: 'kind', + markDate: 'markDate', + status: 'status', + doneAt: 'doneAt', + assigneeId: 'assigneeId', + creatorId: 'creatorId', + extras: 'extras', + sortOrder: 'sortOrder', + archived: 'archived', + archivedAt: 'archivedAt', + archiveSource: 'archiveSource', + createdAt: 'createdAt', + updatedAt: 'updatedAt' +} as const + +export type TaskScalarFieldEnum = (typeof TaskScalarFieldEnum)[keyof typeof TaskScalarFieldEnum] + + +export const TaskMemberScalarFieldEnum = { + id: 'id', + taskId: 'taskId', + userId: 'userId' +} as const + +export type TaskMemberScalarFieldEnum = (typeof TaskMemberScalarFieldEnum)[keyof typeof TaskMemberScalarFieldEnum] + + +export const TaskTagScalarFieldEnum = { + id: 'id', + taskId: 'taskId', + name: 'name' +} as const + +export type TaskTagScalarFieldEnum = (typeof TaskTagScalarFieldEnum)[keyof typeof TaskTagScalarFieldEnum] + + export const SortOrder = { asc: 'asc', desc: 'desc' @@ -2583,6 +3070,49 @@ export const CheckListTemplateOrderByRelevanceFieldEnum = { export type CheckListTemplateOrderByRelevanceFieldEnum = (typeof CheckListTemplateOrderByRelevanceFieldEnum)[keyof typeof CheckListTemplateOrderByRelevanceFieldEnum] +export const ProjectOrderByRelevanceFieldEnum = { + name: 'name', + icon: 'icon', + autoArchive: 'autoArchive' +} as const + +export type ProjectOrderByRelevanceFieldEnum = (typeof ProjectOrderByRelevanceFieldEnum)[keyof typeof ProjectOrderByRelevanceFieldEnum] + + +export const ProjectMemberOrderByRelevanceFieldEnum = { + permission: 'permission' +} as const + +export type ProjectMemberOrderByRelevanceFieldEnum = (typeof ProjectMemberOrderByRelevanceFieldEnum)[keyof typeof ProjectMemberOrderByRelevanceFieldEnum] + + +export const BoardColumnOrderByRelevanceFieldEnum = { + name: 'name', + boundStatus: 'boundStatus', + retention: 'retention' +} as const + +export type BoardColumnOrderByRelevanceFieldEnum = (typeof BoardColumnOrderByRelevanceFieldEnum)[keyof typeof BoardColumnOrderByRelevanceFieldEnum] + + +export const TaskOrderByRelevanceFieldEnum = { + title: 'title', + description: 'description', + kind: 'kind', + status: 'status', + archiveSource: 'archiveSource' +} as const + +export type TaskOrderByRelevanceFieldEnum = (typeof TaskOrderByRelevanceFieldEnum)[keyof typeof TaskOrderByRelevanceFieldEnum] + + +export const TaskTagOrderByRelevanceFieldEnum = { + name: 'name' +} as const + +export type TaskTagOrderByRelevanceFieldEnum = (typeof TaskTagOrderByRelevanceFieldEnum)[keyof typeof TaskTagOrderByRelevanceFieldEnum] + + /** * Field references @@ -2762,6 +3292,12 @@ export type GlobalOmitConfig = { checkList?: Prisma.CheckListOmit checkListItem?: Prisma.CheckListItemOmit checkListTemplate?: Prisma.CheckListTemplateOmit + project?: Prisma.ProjectOmit + projectMember?: Prisma.ProjectMemberOmit + boardColumn?: Prisma.BoardColumnOmit + task?: Prisma.TaskOmit + taskMember?: Prisma.TaskMemberOmit + taskTag?: Prisma.TaskTagOmit } /* Types for Logging */ diff --git a/generated/prisma/internal/prismaNamespaceBrowser.ts b/generated/prisma/internal/prismaNamespaceBrowser.ts index 64b061e..3cce066 100644 --- a/generated/prisma/internal/prismaNamespaceBrowser.ts +++ b/generated/prisma/internal/prismaNamespaceBrowser.ts @@ -73,7 +73,13 @@ export const ModelName = { CheckIn: 'CheckIn', CheckList: 'CheckList', CheckListItem: 'CheckListItem', - CheckListTemplate: 'CheckListTemplate' + CheckListTemplate: 'CheckListTemplate', + Project: 'Project', + ProjectMember: 'ProjectMember', + BoardColumn: 'BoardColumn', + Task: 'Task', + TaskMember: 'TaskMember', + TaskTag: 'TaskTag' } as const export type ModelName = (typeof ModelName)[keyof typeof ModelName] @@ -443,6 +449,91 @@ export const CheckListTemplateScalarFieldEnum = { export type CheckListTemplateScalarFieldEnum = (typeof CheckListTemplateScalarFieldEnum)[keyof typeof CheckListTemplateScalarFieldEnum] +export const ProjectScalarFieldEnum = { + id: 'id', + name: 'name', + ownerId: 'ownerId', + isPersonal: 'isPersonal', + archived: 'archived', + notes: 'notes', + taskKinds: 'taskKinds', + icon: 'icon', + autoArchive: 'autoArchive', + createdAt: 'createdAt', + updatedAt: 'updatedAt' +} as const + +export type ProjectScalarFieldEnum = (typeof ProjectScalarFieldEnum)[keyof typeof ProjectScalarFieldEnum] + + +export const ProjectMemberScalarFieldEnum = { + id: 'id', + projectId: 'projectId', + userId: 'userId', + permission: 'permission', + createdAt: 'createdAt' +} as const + +export type ProjectMemberScalarFieldEnum = (typeof ProjectMemberScalarFieldEnum)[keyof typeof ProjectMemberScalarFieldEnum] + + +export const BoardColumnScalarFieldEnum = { + id: 'id', + projectId: 'projectId', + name: 'name', + sortOrder: 'sortOrder', + boundStatus: 'boundStatus', + retention: 'retention', + createdAt: 'createdAt', + updatedAt: 'updatedAt' +} as const + +export type BoardColumnScalarFieldEnum = (typeof BoardColumnScalarFieldEnum)[keyof typeof BoardColumnScalarFieldEnum] + + +export const TaskScalarFieldEnum = { + id: 'id', + projectId: 'projectId', + columnId: 'columnId', + parentId: 'parentId', + title: 'title', + description: 'description', + kind: 'kind', + markDate: 'markDate', + status: 'status', + doneAt: 'doneAt', + assigneeId: 'assigneeId', + creatorId: 'creatorId', + extras: 'extras', + sortOrder: 'sortOrder', + archived: 'archived', + archivedAt: 'archivedAt', + archiveSource: 'archiveSource', + createdAt: 'createdAt', + updatedAt: 'updatedAt' +} as const + +export type TaskScalarFieldEnum = (typeof TaskScalarFieldEnum)[keyof typeof TaskScalarFieldEnum] + + +export const TaskMemberScalarFieldEnum = { + id: 'id', + taskId: 'taskId', + userId: 'userId' +} as const + +export type TaskMemberScalarFieldEnum = (typeof TaskMemberScalarFieldEnum)[keyof typeof TaskMemberScalarFieldEnum] + + +export const TaskTagScalarFieldEnum = { + id: 'id', + taskId: 'taskId', + name: 'name' +} as const + +export type TaskTagScalarFieldEnum = (typeof TaskTagScalarFieldEnum)[keyof typeof TaskTagScalarFieldEnum] + + export const SortOrder = { asc: 'asc', desc: 'desc' @@ -691,3 +782,46 @@ export const CheckListTemplateOrderByRelevanceFieldEnum = { export type CheckListTemplateOrderByRelevanceFieldEnum = (typeof CheckListTemplateOrderByRelevanceFieldEnum)[keyof typeof CheckListTemplateOrderByRelevanceFieldEnum] + +export const ProjectOrderByRelevanceFieldEnum = { + name: 'name', + icon: 'icon', + autoArchive: 'autoArchive' +} as const + +export type ProjectOrderByRelevanceFieldEnum = (typeof ProjectOrderByRelevanceFieldEnum)[keyof typeof ProjectOrderByRelevanceFieldEnum] + + +export const ProjectMemberOrderByRelevanceFieldEnum = { + permission: 'permission' +} as const + +export type ProjectMemberOrderByRelevanceFieldEnum = (typeof ProjectMemberOrderByRelevanceFieldEnum)[keyof typeof ProjectMemberOrderByRelevanceFieldEnum] + + +export const BoardColumnOrderByRelevanceFieldEnum = { + name: 'name', + boundStatus: 'boundStatus', + retention: 'retention' +} as const + +export type BoardColumnOrderByRelevanceFieldEnum = (typeof BoardColumnOrderByRelevanceFieldEnum)[keyof typeof BoardColumnOrderByRelevanceFieldEnum] + + +export const TaskOrderByRelevanceFieldEnum = { + title: 'title', + description: 'description', + kind: 'kind', + status: 'status', + archiveSource: 'archiveSource' +} as const + +export type TaskOrderByRelevanceFieldEnum = (typeof TaskOrderByRelevanceFieldEnum)[keyof typeof TaskOrderByRelevanceFieldEnum] + + +export const TaskTagOrderByRelevanceFieldEnum = { + name: 'name' +} as const + +export type TaskTagOrderByRelevanceFieldEnum = (typeof TaskTagOrderByRelevanceFieldEnum)[keyof typeof TaskTagOrderByRelevanceFieldEnum] + diff --git a/generated/prisma/models.ts b/generated/prisma/models.ts index 5cd3c70..cd74c6b 100644 --- a/generated/prisma/models.ts +++ b/generated/prisma/models.ts @@ -31,4 +31,10 @@ export type * from './models/CheckIn.ts' export type * from './models/CheckList.ts' export type * from './models/CheckListItem.ts' export type * from './models/CheckListTemplate.ts' +export type * from './models/Project.ts' +export type * from './models/ProjectMember.ts' +export type * from './models/BoardColumn.ts' +export type * from './models/Task.ts' +export type * from './models/TaskMember.ts' +export type * from './models/TaskTag.ts' export type * from './commonInputTypes.ts' \ No newline at end of file diff --git a/generated/prisma/models/BoardColumn.ts b/generated/prisma/models/BoardColumn.ts new file mode 100644 index 0000000..6f1dc1d --- /dev/null +++ b/generated/prisma/models/BoardColumn.ts @@ -0,0 +1,1526 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `BoardColumn` model and its related types. + * + * 🟢 You can import this file directly. + */ +import type * as runtime from "@prisma/client/runtime/client" +import type * as $Enums from "../enums.ts" +import type * as Prisma from "../internal/prismaNamespace.ts" + +/** + * Model BoardColumn + * + */ +export type BoardColumnModel = runtime.Types.Result.DefaultSelection + +export type AggregateBoardColumn = { + _count: BoardColumnCountAggregateOutputType | null + _avg: BoardColumnAvgAggregateOutputType | null + _sum: BoardColumnSumAggregateOutputType | null + _min: BoardColumnMinAggregateOutputType | null + _max: BoardColumnMaxAggregateOutputType | null +} + +export type BoardColumnAvgAggregateOutputType = { + id: number | null + projectId: number | null + sortOrder: number | null +} + +export type BoardColumnSumAggregateOutputType = { + id: number | null + projectId: number | null + sortOrder: number | null +} + +export type BoardColumnMinAggregateOutputType = { + id: number | null + projectId: number | null + name: string | null + sortOrder: number | null + boundStatus: string | null + retention: string | null + createdAt: Date | null + updatedAt: Date | null +} + +export type BoardColumnMaxAggregateOutputType = { + id: number | null + projectId: number | null + name: string | null + sortOrder: number | null + boundStatus: string | null + retention: string | null + createdAt: Date | null + updatedAt: Date | null +} + +export type BoardColumnCountAggregateOutputType = { + id: number + projectId: number + name: number + sortOrder: number + boundStatus: number + retention: number + createdAt: number + updatedAt: number + _all: number +} + + +export type BoardColumnAvgAggregateInputType = { + id?: true + projectId?: true + sortOrder?: true +} + +export type BoardColumnSumAggregateInputType = { + id?: true + projectId?: true + sortOrder?: true +} + +export type BoardColumnMinAggregateInputType = { + id?: true + projectId?: true + name?: true + sortOrder?: true + boundStatus?: true + retention?: true + createdAt?: true + updatedAt?: true +} + +export type BoardColumnMaxAggregateInputType = { + id?: true + projectId?: true + name?: true + sortOrder?: true + boundStatus?: true + retention?: true + createdAt?: true + updatedAt?: true +} + +export type BoardColumnCountAggregateInputType = { + id?: true + projectId?: true + name?: true + sortOrder?: true + boundStatus?: true + retention?: true + createdAt?: true + updatedAt?: true + _all?: true +} + +export type BoardColumnAggregateArgs = { + /** + * Filter which BoardColumn to aggregate. + */ + where?: Prisma.BoardColumnWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of BoardColumns to fetch. + */ + orderBy?: Prisma.BoardColumnOrderByWithRelationInput | Prisma.BoardColumnOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.BoardColumnWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` BoardColumns 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` BoardColumns. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned BoardColumns + **/ + _count?: true | BoardColumnCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: BoardColumnAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: BoardColumnSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: BoardColumnMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: BoardColumnMaxAggregateInputType +} + +export type GetBoardColumnAggregateType = { + [P in keyof T & keyof AggregateBoardColumn]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type BoardColumnGroupByArgs = { + where?: Prisma.BoardColumnWhereInput + orderBy?: Prisma.BoardColumnOrderByWithAggregationInput | Prisma.BoardColumnOrderByWithAggregationInput[] + by: Prisma.BoardColumnScalarFieldEnum[] | Prisma.BoardColumnScalarFieldEnum + having?: Prisma.BoardColumnScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: BoardColumnCountAggregateInputType | true + _avg?: BoardColumnAvgAggregateInputType + _sum?: BoardColumnSumAggregateInputType + _min?: BoardColumnMinAggregateInputType + _max?: BoardColumnMaxAggregateInputType +} + +export type BoardColumnGroupByOutputType = { + id: number + projectId: number + name: string + sortOrder: number + boundStatus: string | null + retention: string + createdAt: Date + updatedAt: Date + _count: BoardColumnCountAggregateOutputType | null + _avg: BoardColumnAvgAggregateOutputType | null + _sum: BoardColumnSumAggregateOutputType | null + _min: BoardColumnMinAggregateOutputType | null + _max: BoardColumnMaxAggregateOutputType | null +} + +export type GetBoardColumnGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof BoardColumnGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type BoardColumnWhereInput = { + AND?: Prisma.BoardColumnWhereInput | Prisma.BoardColumnWhereInput[] + OR?: Prisma.BoardColumnWhereInput[] + NOT?: Prisma.BoardColumnWhereInput | Prisma.BoardColumnWhereInput[] + id?: Prisma.IntFilter<"BoardColumn"> | number + projectId?: Prisma.IntFilter<"BoardColumn"> | number + name?: Prisma.StringFilter<"BoardColumn"> | string + sortOrder?: Prisma.IntFilter<"BoardColumn"> | number + boundStatus?: Prisma.StringNullableFilter<"BoardColumn"> | string | null + retention?: Prisma.StringFilter<"BoardColumn"> | string + createdAt?: Prisma.DateTimeFilter<"BoardColumn"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"BoardColumn"> | Date | string + project?: Prisma.XOR + tasks?: Prisma.TaskListRelationFilter +} + +export type BoardColumnOrderByWithRelationInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + name?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + boundStatus?: Prisma.SortOrderInput | Prisma.SortOrder + retention?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder + project?: Prisma.ProjectOrderByWithRelationInput + tasks?: Prisma.TaskOrderByRelationAggregateInput + _relevance?: Prisma.BoardColumnOrderByRelevanceInput +} + +export type BoardColumnWhereUniqueInput = Prisma.AtLeast<{ + id?: number + projectId_name?: Prisma.BoardColumnProjectIdNameCompoundUniqueInput + AND?: Prisma.BoardColumnWhereInput | Prisma.BoardColumnWhereInput[] + OR?: Prisma.BoardColumnWhereInput[] + NOT?: Prisma.BoardColumnWhereInput | Prisma.BoardColumnWhereInput[] + projectId?: Prisma.IntFilter<"BoardColumn"> | number + name?: Prisma.StringFilter<"BoardColumn"> | string + sortOrder?: Prisma.IntFilter<"BoardColumn"> | number + boundStatus?: Prisma.StringNullableFilter<"BoardColumn"> | string | null + retention?: Prisma.StringFilter<"BoardColumn"> | string + createdAt?: Prisma.DateTimeFilter<"BoardColumn"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"BoardColumn"> | Date | string + project?: Prisma.XOR + tasks?: Prisma.TaskListRelationFilter +}, "id" | "projectId_name"> + +export type BoardColumnOrderByWithAggregationInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + name?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + boundStatus?: Prisma.SortOrderInput | Prisma.SortOrder + retention?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder + _count?: Prisma.BoardColumnCountOrderByAggregateInput + _avg?: Prisma.BoardColumnAvgOrderByAggregateInput + _max?: Prisma.BoardColumnMaxOrderByAggregateInput + _min?: Prisma.BoardColumnMinOrderByAggregateInput + _sum?: Prisma.BoardColumnSumOrderByAggregateInput +} + +export type BoardColumnScalarWhereWithAggregatesInput = { + AND?: Prisma.BoardColumnScalarWhereWithAggregatesInput | Prisma.BoardColumnScalarWhereWithAggregatesInput[] + OR?: Prisma.BoardColumnScalarWhereWithAggregatesInput[] + NOT?: Prisma.BoardColumnScalarWhereWithAggregatesInput | Prisma.BoardColumnScalarWhereWithAggregatesInput[] + id?: Prisma.IntWithAggregatesFilter<"BoardColumn"> | number + projectId?: Prisma.IntWithAggregatesFilter<"BoardColumn"> | number + name?: Prisma.StringWithAggregatesFilter<"BoardColumn"> | string + sortOrder?: Prisma.IntWithAggregatesFilter<"BoardColumn"> | number + boundStatus?: Prisma.StringNullableWithAggregatesFilter<"BoardColumn"> | string | null + retention?: Prisma.StringWithAggregatesFilter<"BoardColumn"> | string + createdAt?: Prisma.DateTimeWithAggregatesFilter<"BoardColumn"> | Date | string + updatedAt?: Prisma.DateTimeWithAggregatesFilter<"BoardColumn"> | Date | string +} + +export type BoardColumnCreateInput = { + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutColumnsInput + tasks?: Prisma.TaskCreateNestedManyWithoutColumnInput +} + +export type BoardColumnUncheckedCreateInput = { + id?: number + projectId: number + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string + tasks?: Prisma.TaskUncheckedCreateNestedManyWithoutColumnInput +} + +export type BoardColumnUpdateInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutColumnsNestedInput + tasks?: Prisma.TaskUpdateManyWithoutColumnNestedInput +} + +export type BoardColumnUncheckedUpdateInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + tasks?: Prisma.TaskUncheckedUpdateManyWithoutColumnNestedInput +} + +export type BoardColumnCreateManyInput = { + id?: number + projectId: number + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string +} + +export type BoardColumnUpdateManyMutationInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type BoardColumnUncheckedUpdateManyInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type BoardColumnListRelationFilter = { + every?: Prisma.BoardColumnWhereInput + some?: Prisma.BoardColumnWhereInput + none?: Prisma.BoardColumnWhereInput +} + +export type BoardColumnOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type BoardColumnOrderByRelevanceInput = { + fields: Prisma.BoardColumnOrderByRelevanceFieldEnum | Prisma.BoardColumnOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type BoardColumnProjectIdNameCompoundUniqueInput = { + projectId: number + name: string +} + +export type BoardColumnCountOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + name?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + boundStatus?: Prisma.SortOrder + retention?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type BoardColumnAvgOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder +} + +export type BoardColumnMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + name?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + boundStatus?: Prisma.SortOrder + retention?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type BoardColumnMinOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + name?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + boundStatus?: Prisma.SortOrder + retention?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type BoardColumnSumOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder +} + +export type BoardColumnScalarRelationFilter = { + is?: Prisma.BoardColumnWhereInput + isNot?: Prisma.BoardColumnWhereInput +} + +export type BoardColumnCreateNestedManyWithoutProjectInput = { + create?: Prisma.XOR | Prisma.BoardColumnCreateWithoutProjectInput[] | Prisma.BoardColumnUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.BoardColumnCreateOrConnectWithoutProjectInput | Prisma.BoardColumnCreateOrConnectWithoutProjectInput[] + createMany?: Prisma.BoardColumnCreateManyProjectInputEnvelope + connect?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] +} + +export type BoardColumnUncheckedCreateNestedManyWithoutProjectInput = { + create?: Prisma.XOR | Prisma.BoardColumnCreateWithoutProjectInput[] | Prisma.BoardColumnUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.BoardColumnCreateOrConnectWithoutProjectInput | Prisma.BoardColumnCreateOrConnectWithoutProjectInput[] + createMany?: Prisma.BoardColumnCreateManyProjectInputEnvelope + connect?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] +} + +export type BoardColumnUpdateManyWithoutProjectNestedInput = { + create?: Prisma.XOR | Prisma.BoardColumnCreateWithoutProjectInput[] | Prisma.BoardColumnUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.BoardColumnCreateOrConnectWithoutProjectInput | Prisma.BoardColumnCreateOrConnectWithoutProjectInput[] + upsert?: Prisma.BoardColumnUpsertWithWhereUniqueWithoutProjectInput | Prisma.BoardColumnUpsertWithWhereUniqueWithoutProjectInput[] + createMany?: Prisma.BoardColumnCreateManyProjectInputEnvelope + set?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + disconnect?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + delete?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + connect?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + update?: Prisma.BoardColumnUpdateWithWhereUniqueWithoutProjectInput | Prisma.BoardColumnUpdateWithWhereUniqueWithoutProjectInput[] + updateMany?: Prisma.BoardColumnUpdateManyWithWhereWithoutProjectInput | Prisma.BoardColumnUpdateManyWithWhereWithoutProjectInput[] + deleteMany?: Prisma.BoardColumnScalarWhereInput | Prisma.BoardColumnScalarWhereInput[] +} + +export type BoardColumnUncheckedUpdateManyWithoutProjectNestedInput = { + create?: Prisma.XOR | Prisma.BoardColumnCreateWithoutProjectInput[] | Prisma.BoardColumnUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.BoardColumnCreateOrConnectWithoutProjectInput | Prisma.BoardColumnCreateOrConnectWithoutProjectInput[] + upsert?: Prisma.BoardColumnUpsertWithWhereUniqueWithoutProjectInput | Prisma.BoardColumnUpsertWithWhereUniqueWithoutProjectInput[] + createMany?: Prisma.BoardColumnCreateManyProjectInputEnvelope + set?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + disconnect?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + delete?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + connect?: Prisma.BoardColumnWhereUniqueInput | Prisma.BoardColumnWhereUniqueInput[] + update?: Prisma.BoardColumnUpdateWithWhereUniqueWithoutProjectInput | Prisma.BoardColumnUpdateWithWhereUniqueWithoutProjectInput[] + updateMany?: Prisma.BoardColumnUpdateManyWithWhereWithoutProjectInput | Prisma.BoardColumnUpdateManyWithWhereWithoutProjectInput[] + deleteMany?: Prisma.BoardColumnScalarWhereInput | Prisma.BoardColumnScalarWhereInput[] +} + +export type BoardColumnCreateNestedOneWithoutTasksInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BoardColumnCreateOrConnectWithoutTasksInput + connect?: Prisma.BoardColumnWhereUniqueInput +} + +export type BoardColumnUpdateOneRequiredWithoutTasksNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BoardColumnCreateOrConnectWithoutTasksInput + upsert?: Prisma.BoardColumnUpsertWithoutTasksInput + connect?: Prisma.BoardColumnWhereUniqueInput + update?: Prisma.XOR, Prisma.BoardColumnUncheckedUpdateWithoutTasksInput> +} + +export type BoardColumnCreateWithoutProjectInput = { + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string + tasks?: Prisma.TaskCreateNestedManyWithoutColumnInput +} + +export type BoardColumnUncheckedCreateWithoutProjectInput = { + id?: number + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string + tasks?: Prisma.TaskUncheckedCreateNestedManyWithoutColumnInput +} + +export type BoardColumnCreateOrConnectWithoutProjectInput = { + where: Prisma.BoardColumnWhereUniqueInput + create: Prisma.XOR +} + +export type BoardColumnCreateManyProjectInputEnvelope = { + data: Prisma.BoardColumnCreateManyProjectInput | Prisma.BoardColumnCreateManyProjectInput[] + skipDuplicates?: boolean +} + +export type BoardColumnUpsertWithWhereUniqueWithoutProjectInput = { + where: Prisma.BoardColumnWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type BoardColumnUpdateWithWhereUniqueWithoutProjectInput = { + where: Prisma.BoardColumnWhereUniqueInput + data: Prisma.XOR +} + +export type BoardColumnUpdateManyWithWhereWithoutProjectInput = { + where: Prisma.BoardColumnScalarWhereInput + data: Prisma.XOR +} + +export type BoardColumnScalarWhereInput = { + AND?: Prisma.BoardColumnScalarWhereInput | Prisma.BoardColumnScalarWhereInput[] + OR?: Prisma.BoardColumnScalarWhereInput[] + NOT?: Prisma.BoardColumnScalarWhereInput | Prisma.BoardColumnScalarWhereInput[] + id?: Prisma.IntFilter<"BoardColumn"> | number + projectId?: Prisma.IntFilter<"BoardColumn"> | number + name?: Prisma.StringFilter<"BoardColumn"> | string + sortOrder?: Prisma.IntFilter<"BoardColumn"> | number + boundStatus?: Prisma.StringNullableFilter<"BoardColumn"> | string | null + retention?: Prisma.StringFilter<"BoardColumn"> | string + createdAt?: Prisma.DateTimeFilter<"BoardColumn"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"BoardColumn"> | Date | string +} + +export type BoardColumnCreateWithoutTasksInput = { + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutColumnsInput +} + +export type BoardColumnUncheckedCreateWithoutTasksInput = { + id?: number + projectId: number + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string +} + +export type BoardColumnCreateOrConnectWithoutTasksInput = { + where: Prisma.BoardColumnWhereUniqueInput + create: Prisma.XOR +} + +export type BoardColumnUpsertWithoutTasksInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.BoardColumnWhereInput +} + +export type BoardColumnUpdateToOneWithWhereWithoutTasksInput = { + where?: Prisma.BoardColumnWhereInput + data: Prisma.XOR +} + +export type BoardColumnUpdateWithoutTasksInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutColumnsNestedInput +} + +export type BoardColumnUncheckedUpdateWithoutTasksInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type BoardColumnCreateManyProjectInput = { + id?: number + name: string + sortOrder?: number + boundStatus?: string | null + retention?: string + createdAt?: Date | string + updatedAt?: Date | string +} + +export type BoardColumnUpdateWithoutProjectInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + tasks?: Prisma.TaskUpdateManyWithoutColumnNestedInput +} + +export type BoardColumnUncheckedUpdateWithoutProjectInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + tasks?: Prisma.TaskUncheckedUpdateManyWithoutColumnNestedInput +} + +export type BoardColumnUncheckedUpdateManyWithoutProjectInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + boundStatus?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + retention?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + + +/** + * Count Type BoardColumnCountOutputType + */ + +export type BoardColumnCountOutputType = { + tasks: number +} + +export type BoardColumnCountOutputTypeSelect = { + tasks?: boolean | BoardColumnCountOutputTypeCountTasksArgs +} + +/** + * BoardColumnCountOutputType without action + */ +export type BoardColumnCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the BoardColumnCountOutputType + */ + select?: Prisma.BoardColumnCountOutputTypeSelect | null +} + +/** + * BoardColumnCountOutputType without action + */ +export type BoardColumnCountOutputTypeCountTasksArgs = { + where?: Prisma.TaskWhereInput +} + + +export type BoardColumnSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + projectId?: boolean + name?: boolean + sortOrder?: boolean + boundStatus?: boolean + retention?: boolean + createdAt?: boolean + updatedAt?: boolean + project?: boolean | Prisma.ProjectDefaultArgs + tasks?: boolean | Prisma.BoardColumn$tasksArgs + _count?: boolean | Prisma.BoardColumnCountOutputTypeDefaultArgs +}, ExtArgs["result"]["boardColumn"]> + + + +export type BoardColumnSelectScalar = { + id?: boolean + projectId?: boolean + name?: boolean + sortOrder?: boolean + boundStatus?: boolean + retention?: boolean + createdAt?: boolean + updatedAt?: boolean +} + +export type BoardColumnOmit = runtime.Types.Extensions.GetOmit<"id" | "projectId" | "name" | "sortOrder" | "boundStatus" | "retention" | "createdAt" | "updatedAt", ExtArgs["result"]["boardColumn"]> +export type BoardColumnInclude = { + project?: boolean | Prisma.ProjectDefaultArgs + tasks?: boolean | Prisma.BoardColumn$tasksArgs + _count?: boolean | Prisma.BoardColumnCountOutputTypeDefaultArgs +} + +export type $BoardColumnPayload = { + name: "BoardColumn" + objects: { + project: Prisma.$ProjectPayload + tasks: Prisma.$TaskPayload[] + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: number + projectId: number + name: string + sortOrder: number + boundStatus: string | null + retention: string + createdAt: Date + updatedAt: Date + }, ExtArgs["result"]["boardColumn"]> + composites: {} +} + +export type BoardColumnGetPayload = runtime.Types.Result.GetResult + +export type BoardColumnCountArgs = + Omit & { + select?: BoardColumnCountAggregateInputType | true + } + +export interface BoardColumnDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['BoardColumn'], meta: { name: 'BoardColumn' } } + /** + * Find zero or one BoardColumn that matches the filter. + * @param {BoardColumnFindUniqueArgs} args - Arguments to find a BoardColumn + * @example + * // Get one BoardColumn + * const boardColumn = await prisma.boardColumn.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one BoardColumn that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {BoardColumnFindUniqueOrThrowArgs} args - Arguments to find a BoardColumn + * @example + * // Get one BoardColumn + * const boardColumn = await prisma.boardColumn.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first BoardColumn 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 {BoardColumnFindFirstArgs} args - Arguments to find a BoardColumn + * @example + * // Get one BoardColumn + * const boardColumn = await prisma.boardColumn.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first BoardColumn 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 {BoardColumnFindFirstOrThrowArgs} args - Arguments to find a BoardColumn + * @example + * // Get one BoardColumn + * const boardColumn = await prisma.boardColumn.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more BoardColumns 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 {BoardColumnFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all BoardColumns + * const boardColumns = await prisma.boardColumn.findMany() + * + * // Get first 10 BoardColumns + * const boardColumns = await prisma.boardColumn.findMany({ take: 10 }) + * + * // Only select the `id` + * const boardColumnWithIdOnly = await prisma.boardColumn.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a BoardColumn. + * @param {BoardColumnCreateArgs} args - Arguments to create a BoardColumn. + * @example + * // Create one BoardColumn + * const BoardColumn = await prisma.boardColumn.create({ + * data: { + * // ... data to create a BoardColumn + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many BoardColumns. + * @param {BoardColumnCreateManyArgs} args - Arguments to create many BoardColumns. + * @example + * // Create many BoardColumns + * const boardColumn = await prisma.boardColumn.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a BoardColumn. + * @param {BoardColumnDeleteArgs} args - Arguments to delete one BoardColumn. + * @example + * // Delete one BoardColumn + * const BoardColumn = await prisma.boardColumn.delete({ + * where: { + * // ... filter to delete one BoardColumn + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one BoardColumn. + * @param {BoardColumnUpdateArgs} args - Arguments to update one BoardColumn. + * @example + * // Update one BoardColumn + * const boardColumn = await prisma.boardColumn.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more BoardColumns. + * @param {BoardColumnDeleteManyArgs} args - Arguments to filter BoardColumns to delete. + * @example + * // Delete a few BoardColumns + * const { count } = await prisma.boardColumn.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more BoardColumns. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {BoardColumnUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many BoardColumns + * const boardColumn = await prisma.boardColumn.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one BoardColumn. + * @param {BoardColumnUpsertArgs} args - Arguments to update or create a BoardColumn. + * @example + * // Update or create a BoardColumn + * const boardColumn = await prisma.boardColumn.upsert({ + * create: { + * // ... data to create a BoardColumn + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the BoardColumn we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__BoardColumnClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of BoardColumns. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {BoardColumnCountArgs} args - Arguments to filter BoardColumns to count. + * @example + * // Count the number of BoardColumns + * const count = await prisma.boardColumn.count({ + * where: { + * // ... the filter for the BoardColumns we want to count + * } + * }) + **/ + count( + args?: Prisma.Subset, + ): Prisma.PrismaPromise< + T extends runtime.Types.Utils.Record<'select', any> + ? T['select'] extends true + ? number + : Prisma.GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a BoardColumn. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {BoardColumnAggregateArgs} 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: Prisma.Subset): Prisma.PrismaPromise> + + /** + * Group by BoardColumn. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {BoardColumnGroupByArgs} 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 BoardColumnGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: BoardColumnGroupByArgs['orderBy'] } + : { orderBy?: BoardColumnGroupByArgs['orderBy'] }, + OrderFields extends Prisma.ExcludeUnderscoreKeys>>, + ByFields extends Prisma.MaybeTupleToUnion, + ByValid extends Prisma.Has, + HavingFields extends Prisma.GetHavingFields, + HavingValid extends Prisma.Has, + ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, + InputErrors extends ByEmpty extends Prisma.True + ? `Error: "by" must not be empty.` + : HavingValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetBoardColumnGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the BoardColumn model + */ +readonly fields: BoardColumnFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for BoardColumn. + * 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__BoardColumnClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + project = {}>(args?: Prisma.Subset>): Prisma.Prisma__ProjectClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + tasks = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, 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): runtime.Types.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): runtime.Types.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): runtime.Types.Utils.JsPromise +} + + + + +/** + * Fields of the BoardColumn model + */ +export interface BoardColumnFieldRefs { + readonly id: Prisma.FieldRef<"BoardColumn", 'Int'> + readonly projectId: Prisma.FieldRef<"BoardColumn", 'Int'> + readonly name: Prisma.FieldRef<"BoardColumn", 'String'> + readonly sortOrder: Prisma.FieldRef<"BoardColumn", 'Int'> + readonly boundStatus: Prisma.FieldRef<"BoardColumn", 'String'> + readonly retention: Prisma.FieldRef<"BoardColumn", 'String'> + readonly createdAt: Prisma.FieldRef<"BoardColumn", 'DateTime'> + readonly updatedAt: Prisma.FieldRef<"BoardColumn", 'DateTime'> +} + + +// Custom InputTypes +/** + * BoardColumn findUnique + */ +export type BoardColumnFindUniqueArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * Filter, which BoardColumn to fetch. + */ + where: Prisma.BoardColumnWhereUniqueInput +} + +/** + * BoardColumn findUniqueOrThrow + */ +export type BoardColumnFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * Filter, which BoardColumn to fetch. + */ + where: Prisma.BoardColumnWhereUniqueInput +} + +/** + * BoardColumn findFirst + */ +export type BoardColumnFindFirstArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * Filter, which BoardColumn to fetch. + */ + where?: Prisma.BoardColumnWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of BoardColumns to fetch. + */ + orderBy?: Prisma.BoardColumnOrderByWithRelationInput | Prisma.BoardColumnOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for BoardColumns. + */ + cursor?: Prisma.BoardColumnWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` BoardColumns 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` BoardColumns. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of BoardColumns. + */ + distinct?: Prisma.BoardColumnScalarFieldEnum | Prisma.BoardColumnScalarFieldEnum[] +} + +/** + * BoardColumn findFirstOrThrow + */ +export type BoardColumnFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * Filter, which BoardColumn to fetch. + */ + where?: Prisma.BoardColumnWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of BoardColumns to fetch. + */ + orderBy?: Prisma.BoardColumnOrderByWithRelationInput | Prisma.BoardColumnOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for BoardColumns. + */ + cursor?: Prisma.BoardColumnWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` BoardColumns 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` BoardColumns. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of BoardColumns. + */ + distinct?: Prisma.BoardColumnScalarFieldEnum | Prisma.BoardColumnScalarFieldEnum[] +} + +/** + * BoardColumn findMany + */ +export type BoardColumnFindManyArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * Filter, which BoardColumns to fetch. + */ + where?: Prisma.BoardColumnWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of BoardColumns to fetch. + */ + orderBy?: Prisma.BoardColumnOrderByWithRelationInput | Prisma.BoardColumnOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing BoardColumns. + */ + cursor?: Prisma.BoardColumnWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` BoardColumns 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` BoardColumns. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of BoardColumns. + */ + distinct?: Prisma.BoardColumnScalarFieldEnum | Prisma.BoardColumnScalarFieldEnum[] +} + +/** + * BoardColumn create + */ +export type BoardColumnCreateArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * The data needed to create a BoardColumn. + */ + data: Prisma.XOR +} + +/** + * BoardColumn createMany + */ +export type BoardColumnCreateManyArgs = { + /** + * The data used to create many BoardColumns. + */ + data: Prisma.BoardColumnCreateManyInput | Prisma.BoardColumnCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * BoardColumn update + */ +export type BoardColumnUpdateArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * The data needed to update a BoardColumn. + */ + data: Prisma.XOR + /** + * Choose, which BoardColumn to update. + */ + where: Prisma.BoardColumnWhereUniqueInput +} + +/** + * BoardColumn updateMany + */ +export type BoardColumnUpdateManyArgs = { + /** + * The data used to update BoardColumns. + */ + data: Prisma.XOR + /** + * Filter which BoardColumns to update + */ + where?: Prisma.BoardColumnWhereInput + /** + * Limit how many BoardColumns to update. + */ + limit?: number +} + +/** + * BoardColumn upsert + */ +export type BoardColumnUpsertArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * The filter to search for the BoardColumn to update in case it exists. + */ + where: Prisma.BoardColumnWhereUniqueInput + /** + * In case the BoardColumn found by the `where` argument doesn't exist, create a new BoardColumn with this data. + */ + create: Prisma.XOR + /** + * In case the BoardColumn was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * BoardColumn delete + */ +export type BoardColumnDeleteArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + /** + * Filter which BoardColumn to delete. + */ + where: Prisma.BoardColumnWhereUniqueInput +} + +/** + * BoardColumn deleteMany + */ +export type BoardColumnDeleteManyArgs = { + /** + * Filter which BoardColumns to delete + */ + where?: Prisma.BoardColumnWhereInput + /** + * Limit how many BoardColumns to delete. + */ + limit?: number +} + +/** + * BoardColumn.tasks + */ +export type BoardColumn$tasksArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + where?: Prisma.TaskWhereInput + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + cursor?: Prisma.TaskWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * BoardColumn without action + */ +export type BoardColumnDefaultArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null +} diff --git a/generated/prisma/models/Project.ts b/generated/prisma/models/Project.ts new file mode 100644 index 0000000..36eb086 --- /dev/null +++ b/generated/prisma/models/Project.ts @@ -0,0 +1,1901 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `Project` model and its related types. + * + * 🟢 You can import this file directly. + */ +import type * as runtime from "@prisma/client/runtime/client" +import type * as $Enums from "../enums.ts" +import type * as Prisma from "../internal/prismaNamespace.ts" + +/** + * Model Project + * + */ +export type ProjectModel = runtime.Types.Result.DefaultSelection + +export type AggregateProject = { + _count: ProjectCountAggregateOutputType | null + _avg: ProjectAvgAggregateOutputType | null + _sum: ProjectSumAggregateOutputType | null + _min: ProjectMinAggregateOutputType | null + _max: ProjectMaxAggregateOutputType | null +} + +export type ProjectAvgAggregateOutputType = { + id: number | null + ownerId: number | null +} + +export type ProjectSumAggregateOutputType = { + id: number | null + ownerId: number | null +} + +export type ProjectMinAggregateOutputType = { + id: number | null + name: string | null + ownerId: number | null + isPersonal: boolean | null + archived: boolean | null + icon: string | null + autoArchive: string | null + createdAt: Date | null + updatedAt: Date | null +} + +export type ProjectMaxAggregateOutputType = { + id: number | null + name: string | null + ownerId: number | null + isPersonal: boolean | null + archived: boolean | null + icon: string | null + autoArchive: string | null + createdAt: Date | null + updatedAt: Date | null +} + +export type ProjectCountAggregateOutputType = { + id: number + name: number + ownerId: number + isPersonal: number + archived: number + notes: number + taskKinds: number + icon: number + autoArchive: number + createdAt: number + updatedAt: number + _all: number +} + + +export type ProjectAvgAggregateInputType = { + id?: true + ownerId?: true +} + +export type ProjectSumAggregateInputType = { + id?: true + ownerId?: true +} + +export type ProjectMinAggregateInputType = { + id?: true + name?: true + ownerId?: true + isPersonal?: true + archived?: true + icon?: true + autoArchive?: true + createdAt?: true + updatedAt?: true +} + +export type ProjectMaxAggregateInputType = { + id?: true + name?: true + ownerId?: true + isPersonal?: true + archived?: true + icon?: true + autoArchive?: true + createdAt?: true + updatedAt?: true +} + +export type ProjectCountAggregateInputType = { + id?: true + name?: true + ownerId?: true + isPersonal?: true + archived?: true + notes?: true + taskKinds?: true + icon?: true + autoArchive?: true + createdAt?: true + updatedAt?: true + _all?: true +} + +export type ProjectAggregateArgs = { + /** + * Filter which Project to aggregate. + */ + where?: Prisma.ProjectWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Projects to fetch. + */ + orderBy?: Prisma.ProjectOrderByWithRelationInput | Prisma.ProjectOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.ProjectWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Projects from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Projects. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Projects + **/ + _count?: true | ProjectCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: ProjectAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: ProjectSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ProjectMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ProjectMaxAggregateInputType +} + +export type GetProjectAggregateType = { + [P in keyof T & keyof AggregateProject]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type ProjectGroupByArgs = { + where?: Prisma.ProjectWhereInput + orderBy?: Prisma.ProjectOrderByWithAggregationInput | Prisma.ProjectOrderByWithAggregationInput[] + by: Prisma.ProjectScalarFieldEnum[] | Prisma.ProjectScalarFieldEnum + having?: Prisma.ProjectScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ProjectCountAggregateInputType | true + _avg?: ProjectAvgAggregateInputType + _sum?: ProjectSumAggregateInputType + _min?: ProjectMinAggregateInputType + _max?: ProjectMaxAggregateInputType +} + +export type ProjectGroupByOutputType = { + id: number + name: string + ownerId: number + isPersonal: boolean + archived: boolean + notes: runtime.JsonValue + taskKinds: runtime.JsonValue | null + icon: string | null + autoArchive: string + createdAt: Date + updatedAt: Date + _count: ProjectCountAggregateOutputType | null + _avg: ProjectAvgAggregateOutputType | null + _sum: ProjectSumAggregateOutputType | null + _min: ProjectMinAggregateOutputType | null + _max: ProjectMaxAggregateOutputType | null +} + +export type GetProjectGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof ProjectGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type ProjectWhereInput = { + AND?: Prisma.ProjectWhereInput | Prisma.ProjectWhereInput[] + OR?: Prisma.ProjectWhereInput[] + NOT?: Prisma.ProjectWhereInput | Prisma.ProjectWhereInput[] + id?: Prisma.IntFilter<"Project"> | number + name?: Prisma.StringFilter<"Project"> | string + ownerId?: Prisma.IntFilter<"Project"> | number + isPersonal?: Prisma.BoolFilter<"Project"> | boolean + archived?: Prisma.BoolFilter<"Project"> | boolean + notes?: Prisma.JsonFilter<"Project"> + taskKinds?: Prisma.JsonNullableFilter<"Project"> + icon?: Prisma.StringNullableFilter<"Project"> | string | null + autoArchive?: Prisma.StringFilter<"Project"> | string + createdAt?: Prisma.DateTimeFilter<"Project"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"Project"> | Date | string + owner?: Prisma.XOR + members?: Prisma.ProjectMemberListRelationFilter + columns?: Prisma.BoardColumnListRelationFilter + tasks?: Prisma.TaskListRelationFilter +} + +export type ProjectOrderByWithRelationInput = { + id?: Prisma.SortOrder + name?: Prisma.SortOrder + ownerId?: Prisma.SortOrder + isPersonal?: Prisma.SortOrder + archived?: Prisma.SortOrder + notes?: Prisma.SortOrder + taskKinds?: Prisma.SortOrderInput | Prisma.SortOrder + icon?: Prisma.SortOrderInput | Prisma.SortOrder + autoArchive?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder + owner?: Prisma.UserOrderByWithRelationInput + members?: Prisma.ProjectMemberOrderByRelationAggregateInput + columns?: Prisma.BoardColumnOrderByRelationAggregateInput + tasks?: Prisma.TaskOrderByRelationAggregateInput + _relevance?: Prisma.ProjectOrderByRelevanceInput +} + +export type ProjectWhereUniqueInput = Prisma.AtLeast<{ + id?: number + AND?: Prisma.ProjectWhereInput | Prisma.ProjectWhereInput[] + OR?: Prisma.ProjectWhereInput[] + NOT?: Prisma.ProjectWhereInput | Prisma.ProjectWhereInput[] + name?: Prisma.StringFilter<"Project"> | string + ownerId?: Prisma.IntFilter<"Project"> | number + isPersonal?: Prisma.BoolFilter<"Project"> | boolean + archived?: Prisma.BoolFilter<"Project"> | boolean + notes?: Prisma.JsonFilter<"Project"> + taskKinds?: Prisma.JsonNullableFilter<"Project"> + icon?: Prisma.StringNullableFilter<"Project"> | string | null + autoArchive?: Prisma.StringFilter<"Project"> | string + createdAt?: Prisma.DateTimeFilter<"Project"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"Project"> | Date | string + owner?: Prisma.XOR + members?: Prisma.ProjectMemberListRelationFilter + columns?: Prisma.BoardColumnListRelationFilter + tasks?: Prisma.TaskListRelationFilter +}, "id"> + +export type ProjectOrderByWithAggregationInput = { + id?: Prisma.SortOrder + name?: Prisma.SortOrder + ownerId?: Prisma.SortOrder + isPersonal?: Prisma.SortOrder + archived?: Prisma.SortOrder + notes?: Prisma.SortOrder + taskKinds?: Prisma.SortOrderInput | Prisma.SortOrder + icon?: Prisma.SortOrderInput | Prisma.SortOrder + autoArchive?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder + _count?: Prisma.ProjectCountOrderByAggregateInput + _avg?: Prisma.ProjectAvgOrderByAggregateInput + _max?: Prisma.ProjectMaxOrderByAggregateInput + _min?: Prisma.ProjectMinOrderByAggregateInput + _sum?: Prisma.ProjectSumOrderByAggregateInput +} + +export type ProjectScalarWhereWithAggregatesInput = { + AND?: Prisma.ProjectScalarWhereWithAggregatesInput | Prisma.ProjectScalarWhereWithAggregatesInput[] + OR?: Prisma.ProjectScalarWhereWithAggregatesInput[] + NOT?: Prisma.ProjectScalarWhereWithAggregatesInput | Prisma.ProjectScalarWhereWithAggregatesInput[] + id?: Prisma.IntWithAggregatesFilter<"Project"> | number + name?: Prisma.StringWithAggregatesFilter<"Project"> | string + ownerId?: Prisma.IntWithAggregatesFilter<"Project"> | number + isPersonal?: Prisma.BoolWithAggregatesFilter<"Project"> | boolean + archived?: Prisma.BoolWithAggregatesFilter<"Project"> | boolean + notes?: Prisma.JsonWithAggregatesFilter<"Project"> + taskKinds?: Prisma.JsonNullableWithAggregatesFilter<"Project"> + icon?: Prisma.StringNullableWithAggregatesFilter<"Project"> | string | null + autoArchive?: Prisma.StringWithAggregatesFilter<"Project"> | string + createdAt?: Prisma.DateTimeWithAggregatesFilter<"Project"> | Date | string + updatedAt?: Prisma.DateTimeWithAggregatesFilter<"Project"> | Date | string +} + +export type ProjectCreateInput = { + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + owner: Prisma.UserCreateNestedOneWithoutOwnedProjectsInput + members?: Prisma.ProjectMemberCreateNestedManyWithoutProjectInput + columns?: Prisma.BoardColumnCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskCreateNestedManyWithoutProjectInput +} + +export type ProjectUncheckedCreateInput = { + id?: number + name: string + ownerId: number + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + members?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutProjectInput + columns?: Prisma.BoardColumnUncheckedCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskUncheckedCreateNestedManyWithoutProjectInput +} + +export type ProjectUpdateInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + owner?: Prisma.UserUpdateOneRequiredWithoutOwnedProjectsNestedInput + members?: Prisma.ProjectMemberUpdateManyWithoutProjectNestedInput + columns?: Prisma.BoardColumnUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUpdateManyWithoutProjectNestedInput +} + +export type ProjectUncheckedUpdateInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + ownerId?: Prisma.IntFieldUpdateOperationsInput | number + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + members?: Prisma.ProjectMemberUncheckedUpdateManyWithoutProjectNestedInput + columns?: Prisma.BoardColumnUncheckedUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUncheckedUpdateManyWithoutProjectNestedInput +} + +export type ProjectCreateManyInput = { + id?: number + name: string + ownerId: number + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string +} + +export type ProjectUpdateManyMutationInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectUncheckedUpdateManyInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + ownerId?: Prisma.IntFieldUpdateOperationsInput | number + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectListRelationFilter = { + every?: Prisma.ProjectWhereInput + some?: Prisma.ProjectWhereInput + none?: Prisma.ProjectWhereInput +} + +export type ProjectOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type ProjectOrderByRelevanceInput = { + fields: Prisma.ProjectOrderByRelevanceFieldEnum | Prisma.ProjectOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type ProjectCountOrderByAggregateInput = { + id?: Prisma.SortOrder + name?: Prisma.SortOrder + ownerId?: Prisma.SortOrder + isPersonal?: Prisma.SortOrder + archived?: Prisma.SortOrder + notes?: Prisma.SortOrder + taskKinds?: Prisma.SortOrder + icon?: Prisma.SortOrder + autoArchive?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type ProjectAvgOrderByAggregateInput = { + id?: Prisma.SortOrder + ownerId?: Prisma.SortOrder +} + +export type ProjectMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + name?: Prisma.SortOrder + ownerId?: Prisma.SortOrder + isPersonal?: Prisma.SortOrder + archived?: Prisma.SortOrder + icon?: Prisma.SortOrder + autoArchive?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type ProjectMinOrderByAggregateInput = { + id?: Prisma.SortOrder + name?: Prisma.SortOrder + ownerId?: Prisma.SortOrder + isPersonal?: Prisma.SortOrder + archived?: Prisma.SortOrder + icon?: Prisma.SortOrder + autoArchive?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type ProjectSumOrderByAggregateInput = { + id?: Prisma.SortOrder + ownerId?: Prisma.SortOrder +} + +export type ProjectScalarRelationFilter = { + is?: Prisma.ProjectWhereInput + isNot?: Prisma.ProjectWhereInput +} + +export type ProjectCreateNestedManyWithoutOwnerInput = { + create?: Prisma.XOR | Prisma.ProjectCreateWithoutOwnerInput[] | Prisma.ProjectUncheckedCreateWithoutOwnerInput[] + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutOwnerInput | Prisma.ProjectCreateOrConnectWithoutOwnerInput[] + createMany?: Prisma.ProjectCreateManyOwnerInputEnvelope + connect?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] +} + +export type ProjectUncheckedCreateNestedManyWithoutOwnerInput = { + create?: Prisma.XOR | Prisma.ProjectCreateWithoutOwnerInput[] | Prisma.ProjectUncheckedCreateWithoutOwnerInput[] + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutOwnerInput | Prisma.ProjectCreateOrConnectWithoutOwnerInput[] + createMany?: Prisma.ProjectCreateManyOwnerInputEnvelope + connect?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] +} + +export type ProjectUpdateManyWithoutOwnerNestedInput = { + create?: Prisma.XOR | Prisma.ProjectCreateWithoutOwnerInput[] | Prisma.ProjectUncheckedCreateWithoutOwnerInput[] + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutOwnerInput | Prisma.ProjectCreateOrConnectWithoutOwnerInput[] + upsert?: Prisma.ProjectUpsertWithWhereUniqueWithoutOwnerInput | Prisma.ProjectUpsertWithWhereUniqueWithoutOwnerInput[] + createMany?: Prisma.ProjectCreateManyOwnerInputEnvelope + set?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + disconnect?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + delete?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + connect?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + update?: Prisma.ProjectUpdateWithWhereUniqueWithoutOwnerInput | Prisma.ProjectUpdateWithWhereUniqueWithoutOwnerInput[] + updateMany?: Prisma.ProjectUpdateManyWithWhereWithoutOwnerInput | Prisma.ProjectUpdateManyWithWhereWithoutOwnerInput[] + deleteMany?: Prisma.ProjectScalarWhereInput | Prisma.ProjectScalarWhereInput[] +} + +export type ProjectUncheckedUpdateManyWithoutOwnerNestedInput = { + create?: Prisma.XOR | Prisma.ProjectCreateWithoutOwnerInput[] | Prisma.ProjectUncheckedCreateWithoutOwnerInput[] + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutOwnerInput | Prisma.ProjectCreateOrConnectWithoutOwnerInput[] + upsert?: Prisma.ProjectUpsertWithWhereUniqueWithoutOwnerInput | Prisma.ProjectUpsertWithWhereUniqueWithoutOwnerInput[] + createMany?: Prisma.ProjectCreateManyOwnerInputEnvelope + set?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + disconnect?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + delete?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + connect?: Prisma.ProjectWhereUniqueInput | Prisma.ProjectWhereUniqueInput[] + update?: Prisma.ProjectUpdateWithWhereUniqueWithoutOwnerInput | Prisma.ProjectUpdateWithWhereUniqueWithoutOwnerInput[] + updateMany?: Prisma.ProjectUpdateManyWithWhereWithoutOwnerInput | Prisma.ProjectUpdateManyWithWhereWithoutOwnerInput[] + deleteMany?: Prisma.ProjectScalarWhereInput | Prisma.ProjectScalarWhereInput[] +} + +export type ProjectCreateNestedOneWithoutMembersInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutMembersInput + connect?: Prisma.ProjectWhereUniqueInput +} + +export type ProjectUpdateOneRequiredWithoutMembersNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutMembersInput + upsert?: Prisma.ProjectUpsertWithoutMembersInput + connect?: Prisma.ProjectWhereUniqueInput + update?: Prisma.XOR, Prisma.ProjectUncheckedUpdateWithoutMembersInput> +} + +export type ProjectCreateNestedOneWithoutColumnsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutColumnsInput + connect?: Prisma.ProjectWhereUniqueInput +} + +export type ProjectUpdateOneRequiredWithoutColumnsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutColumnsInput + upsert?: Prisma.ProjectUpsertWithoutColumnsInput + connect?: Prisma.ProjectWhereUniqueInput + update?: Prisma.XOR, Prisma.ProjectUncheckedUpdateWithoutColumnsInput> +} + +export type ProjectCreateNestedOneWithoutTasksInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutTasksInput + connect?: Prisma.ProjectWhereUniqueInput +} + +export type ProjectUpdateOneRequiredWithoutTasksNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProjectCreateOrConnectWithoutTasksInput + upsert?: Prisma.ProjectUpsertWithoutTasksInput + connect?: Prisma.ProjectWhereUniqueInput + update?: Prisma.XOR, Prisma.ProjectUncheckedUpdateWithoutTasksInput> +} + +export type ProjectCreateWithoutOwnerInput = { + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + members?: Prisma.ProjectMemberCreateNestedManyWithoutProjectInput + columns?: Prisma.BoardColumnCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskCreateNestedManyWithoutProjectInput +} + +export type ProjectUncheckedCreateWithoutOwnerInput = { + id?: number + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + members?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutProjectInput + columns?: Prisma.BoardColumnUncheckedCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskUncheckedCreateNestedManyWithoutProjectInput +} + +export type ProjectCreateOrConnectWithoutOwnerInput = { + where: Prisma.ProjectWhereUniqueInput + create: Prisma.XOR +} + +export type ProjectCreateManyOwnerInputEnvelope = { + data: Prisma.ProjectCreateManyOwnerInput | Prisma.ProjectCreateManyOwnerInput[] + skipDuplicates?: boolean +} + +export type ProjectUpsertWithWhereUniqueWithoutOwnerInput = { + where: Prisma.ProjectWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type ProjectUpdateWithWhereUniqueWithoutOwnerInput = { + where: Prisma.ProjectWhereUniqueInput + data: Prisma.XOR +} + +export type ProjectUpdateManyWithWhereWithoutOwnerInput = { + where: Prisma.ProjectScalarWhereInput + data: Prisma.XOR +} + +export type ProjectScalarWhereInput = { + AND?: Prisma.ProjectScalarWhereInput | Prisma.ProjectScalarWhereInput[] + OR?: Prisma.ProjectScalarWhereInput[] + NOT?: Prisma.ProjectScalarWhereInput | Prisma.ProjectScalarWhereInput[] + id?: Prisma.IntFilter<"Project"> | number + name?: Prisma.StringFilter<"Project"> | string + ownerId?: Prisma.IntFilter<"Project"> | number + isPersonal?: Prisma.BoolFilter<"Project"> | boolean + archived?: Prisma.BoolFilter<"Project"> | boolean + notes?: Prisma.JsonFilter<"Project"> + taskKinds?: Prisma.JsonNullableFilter<"Project"> + icon?: Prisma.StringNullableFilter<"Project"> | string | null + autoArchive?: Prisma.StringFilter<"Project"> | string + createdAt?: Prisma.DateTimeFilter<"Project"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"Project"> | Date | string +} + +export type ProjectCreateWithoutMembersInput = { + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + owner: Prisma.UserCreateNestedOneWithoutOwnedProjectsInput + columns?: Prisma.BoardColumnCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskCreateNestedManyWithoutProjectInput +} + +export type ProjectUncheckedCreateWithoutMembersInput = { + id?: number + name: string + ownerId: number + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + columns?: Prisma.BoardColumnUncheckedCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskUncheckedCreateNestedManyWithoutProjectInput +} + +export type ProjectCreateOrConnectWithoutMembersInput = { + where: Prisma.ProjectWhereUniqueInput + create: Prisma.XOR +} + +export type ProjectUpsertWithoutMembersInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ProjectWhereInput +} + +export type ProjectUpdateToOneWithWhereWithoutMembersInput = { + where?: Prisma.ProjectWhereInput + data: Prisma.XOR +} + +export type ProjectUpdateWithoutMembersInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + owner?: Prisma.UserUpdateOneRequiredWithoutOwnedProjectsNestedInput + columns?: Prisma.BoardColumnUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUpdateManyWithoutProjectNestedInput +} + +export type ProjectUncheckedUpdateWithoutMembersInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + ownerId?: Prisma.IntFieldUpdateOperationsInput | number + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + columns?: Prisma.BoardColumnUncheckedUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUncheckedUpdateManyWithoutProjectNestedInput +} + +export type ProjectCreateWithoutColumnsInput = { + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + owner: Prisma.UserCreateNestedOneWithoutOwnedProjectsInput + members?: Prisma.ProjectMemberCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskCreateNestedManyWithoutProjectInput +} + +export type ProjectUncheckedCreateWithoutColumnsInput = { + id?: number + name: string + ownerId: number + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + members?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutProjectInput + tasks?: Prisma.TaskUncheckedCreateNestedManyWithoutProjectInput +} + +export type ProjectCreateOrConnectWithoutColumnsInput = { + where: Prisma.ProjectWhereUniqueInput + create: Prisma.XOR +} + +export type ProjectUpsertWithoutColumnsInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ProjectWhereInput +} + +export type ProjectUpdateToOneWithWhereWithoutColumnsInput = { + where?: Prisma.ProjectWhereInput + data: Prisma.XOR +} + +export type ProjectUpdateWithoutColumnsInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + owner?: Prisma.UserUpdateOneRequiredWithoutOwnedProjectsNestedInput + members?: Prisma.ProjectMemberUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUpdateManyWithoutProjectNestedInput +} + +export type ProjectUncheckedUpdateWithoutColumnsInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + ownerId?: Prisma.IntFieldUpdateOperationsInput | number + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + members?: Prisma.ProjectMemberUncheckedUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUncheckedUpdateManyWithoutProjectNestedInput +} + +export type ProjectCreateWithoutTasksInput = { + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + owner: Prisma.UserCreateNestedOneWithoutOwnedProjectsInput + members?: Prisma.ProjectMemberCreateNestedManyWithoutProjectInput + columns?: Prisma.BoardColumnCreateNestedManyWithoutProjectInput +} + +export type ProjectUncheckedCreateWithoutTasksInput = { + id?: number + name: string + ownerId: number + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string + members?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutProjectInput + columns?: Prisma.BoardColumnUncheckedCreateNestedManyWithoutProjectInput +} + +export type ProjectCreateOrConnectWithoutTasksInput = { + where: Prisma.ProjectWhereUniqueInput + create: Prisma.XOR +} + +export type ProjectUpsertWithoutTasksInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ProjectWhereInput +} + +export type ProjectUpdateToOneWithWhereWithoutTasksInput = { + where?: Prisma.ProjectWhereInput + data: Prisma.XOR +} + +export type ProjectUpdateWithoutTasksInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + owner?: Prisma.UserUpdateOneRequiredWithoutOwnedProjectsNestedInput + members?: Prisma.ProjectMemberUpdateManyWithoutProjectNestedInput + columns?: Prisma.BoardColumnUpdateManyWithoutProjectNestedInput +} + +export type ProjectUncheckedUpdateWithoutTasksInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + ownerId?: Prisma.IntFieldUpdateOperationsInput | number + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + members?: Prisma.ProjectMemberUncheckedUpdateManyWithoutProjectNestedInput + columns?: Prisma.BoardColumnUncheckedUpdateManyWithoutProjectNestedInput +} + +export type ProjectCreateManyOwnerInput = { + id?: number + name: string + isPersonal?: boolean + archived?: boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: string | null + autoArchive?: string + createdAt?: Date | string + updatedAt?: Date | string +} + +export type ProjectUpdateWithoutOwnerInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + members?: Prisma.ProjectMemberUpdateManyWithoutProjectNestedInput + columns?: Prisma.BoardColumnUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUpdateManyWithoutProjectNestedInput +} + +export type ProjectUncheckedUpdateWithoutOwnerInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + members?: Prisma.ProjectMemberUncheckedUpdateManyWithoutProjectNestedInput + columns?: Prisma.BoardColumnUncheckedUpdateManyWithoutProjectNestedInput + tasks?: Prisma.TaskUncheckedUpdateManyWithoutProjectNestedInput +} + +export type ProjectUncheckedUpdateManyWithoutOwnerInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + isPersonal?: Prisma.BoolFieldUpdateOperationsInput | boolean + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + notes?: Prisma.JsonNullValueInput | runtime.InputJsonValue + taskKinds?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + icon?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + autoArchive?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + + +/** + * Count Type ProjectCountOutputType + */ + +export type ProjectCountOutputType = { + members: number + columns: number + tasks: number +} + +export type ProjectCountOutputTypeSelect = { + members?: boolean | ProjectCountOutputTypeCountMembersArgs + columns?: boolean | ProjectCountOutputTypeCountColumnsArgs + tasks?: boolean | ProjectCountOutputTypeCountTasksArgs +} + +/** + * ProjectCountOutputType without action + */ +export type ProjectCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the ProjectCountOutputType + */ + select?: Prisma.ProjectCountOutputTypeSelect | null +} + +/** + * ProjectCountOutputType without action + */ +export type ProjectCountOutputTypeCountMembersArgs = { + where?: Prisma.ProjectMemberWhereInput +} + +/** + * ProjectCountOutputType without action + */ +export type ProjectCountOutputTypeCountColumnsArgs = { + where?: Prisma.BoardColumnWhereInput +} + +/** + * ProjectCountOutputType without action + */ +export type ProjectCountOutputTypeCountTasksArgs = { + where?: Prisma.TaskWhereInput +} + + +export type ProjectSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + name?: boolean + ownerId?: boolean + isPersonal?: boolean + archived?: boolean + notes?: boolean + taskKinds?: boolean + icon?: boolean + autoArchive?: boolean + createdAt?: boolean + updatedAt?: boolean + owner?: boolean | Prisma.UserDefaultArgs + members?: boolean | Prisma.Project$membersArgs + columns?: boolean | Prisma.Project$columnsArgs + tasks?: boolean | Prisma.Project$tasksArgs + _count?: boolean | Prisma.ProjectCountOutputTypeDefaultArgs +}, ExtArgs["result"]["project"]> + + + +export type ProjectSelectScalar = { + id?: boolean + name?: boolean + ownerId?: boolean + isPersonal?: boolean + archived?: boolean + notes?: boolean + taskKinds?: boolean + icon?: boolean + autoArchive?: boolean + createdAt?: boolean + updatedAt?: boolean +} + +export type ProjectOmit = runtime.Types.Extensions.GetOmit<"id" | "name" | "ownerId" | "isPersonal" | "archived" | "notes" | "taskKinds" | "icon" | "autoArchive" | "createdAt" | "updatedAt", ExtArgs["result"]["project"]> +export type ProjectInclude = { + owner?: boolean | Prisma.UserDefaultArgs + members?: boolean | Prisma.Project$membersArgs + columns?: boolean | Prisma.Project$columnsArgs + tasks?: boolean | Prisma.Project$tasksArgs + _count?: boolean | Prisma.ProjectCountOutputTypeDefaultArgs +} + +export type $ProjectPayload = { + name: "Project" + objects: { + owner: Prisma.$UserPayload + members: Prisma.$ProjectMemberPayload[] + columns: Prisma.$BoardColumnPayload[] + tasks: Prisma.$TaskPayload[] + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: number + name: string + ownerId: number + isPersonal: boolean + archived: boolean + notes: runtime.JsonValue + taskKinds: runtime.JsonValue | null + icon: string | null + autoArchive: string + createdAt: Date + updatedAt: Date + }, ExtArgs["result"]["project"]> + composites: {} +} + +export type ProjectGetPayload = runtime.Types.Result.GetResult + +export type ProjectCountArgs = + Omit & { + select?: ProjectCountAggregateInputType | true + } + +export interface ProjectDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Project'], meta: { name: 'Project' } } + /** + * Find zero or one Project that matches the filter. + * @param {ProjectFindUniqueArgs} args - Arguments to find a Project + * @example + * // Get one Project + * const project = await prisma.project.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Project that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ProjectFindUniqueOrThrowArgs} args - Arguments to find a Project + * @example + * // Get one Project + * const project = await prisma.project.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Project that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectFindFirstArgs} args - Arguments to find a Project + * @example + * // Get one Project + * const project = await prisma.project.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Project that matches the filter or + * throw `PrismaKnownClientError` with `P2025` code if no matches were found. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectFindFirstOrThrowArgs} args - Arguments to find a Project + * @example + * // Get one Project + * const project = await prisma.project.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Projects that matches the filter. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Projects + * const projects = await prisma.project.findMany() + * + * // Get first 10 Projects + * const projects = await prisma.project.findMany({ take: 10 }) + * + * // Only select the `id` + * const projectWithIdOnly = await prisma.project.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Project. + * @param {ProjectCreateArgs} args - Arguments to create a Project. + * @example + * // Create one Project + * const Project = await prisma.project.create({ + * data: { + * // ... data to create a Project + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Projects. + * @param {ProjectCreateManyArgs} args - Arguments to create many Projects. + * @example + * // Create many Projects + * const project = await prisma.project.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Project. + * @param {ProjectDeleteArgs} args - Arguments to delete one Project. + * @example + * // Delete one Project + * const Project = await prisma.project.delete({ + * where: { + * // ... filter to delete one Project + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Project. + * @param {ProjectUpdateArgs} args - Arguments to update one Project. + * @example + * // Update one Project + * const project = await prisma.project.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Projects. + * @param {ProjectDeleteManyArgs} args - Arguments to filter Projects to delete. + * @example + * // Delete a few Projects + * const { count } = await prisma.project.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Projects. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Projects + * const project = await prisma.project.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Project. + * @param {ProjectUpsertArgs} args - Arguments to update or create a Project. + * @example + * // Update or create a Project + * const project = await prisma.project.upsert({ + * create: { + * // ... data to create a Project + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Project we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Projects. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectCountArgs} args - Arguments to filter Projects to count. + * @example + * // Count the number of Projects + * const count = await prisma.project.count({ + * where: { + * // ... the filter for the Projects we want to count + * } + * }) + **/ + count( + args?: Prisma.Subset, + ): Prisma.PrismaPromise< + T extends runtime.Types.Utils.Record<'select', any> + ? T['select'] extends true + ? number + : Prisma.GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Project. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectAggregateArgs} args - Select which aggregations you would like to apply and on what fields. + * @example + * // Ordered by age ascending + * // Where email contains prisma.io + * // Limited to the 10 users + * const aggregations = await prisma.user.aggregate({ + * _avg: { + * age: true, + * }, + * where: { + * email: { + * contains: "prisma.io", + * }, + * }, + * orderBy: { + * age: "asc", + * }, + * take: 10, + * }) + **/ + aggregate(args: Prisma.Subset): Prisma.PrismaPromise> + + /** + * Group by Project. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectGroupByArgs} args - Group by arguments. + * @example + * // Group by city, order by createdAt, get count + * const result = await prisma.user.groupBy({ + * by: ['city', 'createdAt'], + * orderBy: { + * createdAt: true + * }, + * _count: { + * _all: true + * }, + * }) + * + **/ + groupBy< + T extends ProjectGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: ProjectGroupByArgs['orderBy'] } + : { orderBy?: ProjectGroupByArgs['orderBy'] }, + OrderFields extends Prisma.ExcludeUnderscoreKeys>>, + ByFields extends Prisma.MaybeTupleToUnion, + ByValid extends Prisma.Has, + HavingFields extends Prisma.GetHavingFields, + HavingValid extends Prisma.Has, + ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, + InputErrors extends ByEmpty extends Prisma.True + ? `Error: "by" must not be empty.` + : HavingValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetProjectGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the Project model + */ +readonly fields: ProjectFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for Project. + * Why is this prefixed with `Prisma__`? + * Because we want to prevent naming conflicts as mentioned in + * https://github.com/prisma/prisma-client-js/issues/707 + */ +export interface Prisma__ProjectClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + owner = {}>(args?: Prisma.Subset>): Prisma.Prisma__UserClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + members = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + columns = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + tasks = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, 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): runtime.Types.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): runtime.Types.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): runtime.Types.Utils.JsPromise +} + + + + +/** + * Fields of the Project model + */ +export interface ProjectFieldRefs { + readonly id: Prisma.FieldRef<"Project", 'Int'> + readonly name: Prisma.FieldRef<"Project", 'String'> + readonly ownerId: Prisma.FieldRef<"Project", 'Int'> + readonly isPersonal: Prisma.FieldRef<"Project", 'Boolean'> + readonly archived: Prisma.FieldRef<"Project", 'Boolean'> + readonly notes: Prisma.FieldRef<"Project", 'Json'> + readonly taskKinds: Prisma.FieldRef<"Project", 'Json'> + readonly icon: Prisma.FieldRef<"Project", 'String'> + readonly autoArchive: Prisma.FieldRef<"Project", 'String'> + readonly createdAt: Prisma.FieldRef<"Project", 'DateTime'> + readonly updatedAt: Prisma.FieldRef<"Project", 'DateTime'> +} + + +// Custom InputTypes +/** + * Project findUnique + */ +export type ProjectFindUniqueArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * Filter, which Project to fetch. + */ + where: Prisma.ProjectWhereUniqueInput +} + +/** + * Project findUniqueOrThrow + */ +export type ProjectFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * Filter, which Project to fetch. + */ + where: Prisma.ProjectWhereUniqueInput +} + +/** + * Project findFirst + */ +export type ProjectFindFirstArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * Filter, which Project to fetch. + */ + where?: Prisma.ProjectWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Projects to fetch. + */ + orderBy?: Prisma.ProjectOrderByWithRelationInput | Prisma.ProjectOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Projects. + */ + cursor?: Prisma.ProjectWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Projects from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Projects. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Projects. + */ + distinct?: Prisma.ProjectScalarFieldEnum | Prisma.ProjectScalarFieldEnum[] +} + +/** + * Project findFirstOrThrow + */ +export type ProjectFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * Filter, which Project to fetch. + */ + where?: Prisma.ProjectWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Projects to fetch. + */ + orderBy?: Prisma.ProjectOrderByWithRelationInput | Prisma.ProjectOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Projects. + */ + cursor?: Prisma.ProjectWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Projects from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Projects. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Projects. + */ + distinct?: Prisma.ProjectScalarFieldEnum | Prisma.ProjectScalarFieldEnum[] +} + +/** + * Project findMany + */ +export type ProjectFindManyArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * Filter, which Projects to fetch. + */ + where?: Prisma.ProjectWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Projects to fetch. + */ + orderBy?: Prisma.ProjectOrderByWithRelationInput | Prisma.ProjectOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Projects. + */ + cursor?: Prisma.ProjectWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Projects from the position of the cursor. + */ + take?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Skip the first `n` Projects. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Projects. + */ + distinct?: Prisma.ProjectScalarFieldEnum | Prisma.ProjectScalarFieldEnum[] +} + +/** + * Project create + */ +export type ProjectCreateArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * The data needed to create a Project. + */ + data: Prisma.XOR +} + +/** + * Project createMany + */ +export type ProjectCreateManyArgs = { + /** + * The data used to create many Projects. + */ + data: Prisma.ProjectCreateManyInput | Prisma.ProjectCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * Project update + */ +export type ProjectUpdateArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * The data needed to update a Project. + */ + data: Prisma.XOR + /** + * Choose, which Project to update. + */ + where: Prisma.ProjectWhereUniqueInput +} + +/** + * Project updateMany + */ +export type ProjectUpdateManyArgs = { + /** + * The data used to update Projects. + */ + data: Prisma.XOR + /** + * Filter which Projects to update + */ + where?: Prisma.ProjectWhereInput + /** + * Limit how many Projects to update. + */ + limit?: number +} + +/** + * Project upsert + */ +export type ProjectUpsertArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * The filter to search for the Project to update in case it exists. + */ + where: Prisma.ProjectWhereUniqueInput + /** + * In case the Project found by the `where` argument doesn't exist, create a new Project with this data. + */ + create: Prisma.XOR + /** + * In case the Project was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * Project delete + */ +export type ProjectDeleteArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + /** + * Filter which Project to delete. + */ + where: Prisma.ProjectWhereUniqueInput +} + +/** + * Project deleteMany + */ +export type ProjectDeleteManyArgs = { + /** + * Filter which Projects to delete + */ + where?: Prisma.ProjectWhereInput + /** + * Limit how many Projects to delete. + */ + limit?: number +} + +/** + * Project.members + */ +export type Project$membersArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + where?: Prisma.ProjectMemberWhereInput + orderBy?: Prisma.ProjectMemberOrderByWithRelationInput | Prisma.ProjectMemberOrderByWithRelationInput[] + cursor?: Prisma.ProjectMemberWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.ProjectMemberScalarFieldEnum | Prisma.ProjectMemberScalarFieldEnum[] +} + +/** + * Project.columns + */ +export type Project$columnsArgs = { + /** + * Select specific fields to fetch from the BoardColumn + */ + select?: Prisma.BoardColumnSelect | null + /** + * Omit specific fields from the BoardColumn + */ + omit?: Prisma.BoardColumnOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.BoardColumnInclude | null + where?: Prisma.BoardColumnWhereInput + orderBy?: Prisma.BoardColumnOrderByWithRelationInput | Prisma.BoardColumnOrderByWithRelationInput[] + cursor?: Prisma.BoardColumnWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.BoardColumnScalarFieldEnum | Prisma.BoardColumnScalarFieldEnum[] +} + +/** + * Project.tasks + */ +export type Project$tasksArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + where?: Prisma.TaskWhereInput + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + cursor?: Prisma.TaskWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * Project without action + */ +export type ProjectDefaultArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null +} diff --git a/generated/prisma/models/ProjectMember.ts b/generated/prisma/models/ProjectMember.ts new file mode 100644 index 0000000..948e55b --- /dev/null +++ b/generated/prisma/models/ProjectMember.ts @@ -0,0 +1,1394 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `ProjectMember` model and its related types. + * + * 🟢 You can import this file directly. + */ +import type * as runtime from "@prisma/client/runtime/client" +import type * as $Enums from "../enums.ts" +import type * as Prisma from "../internal/prismaNamespace.ts" + +/** + * Model ProjectMember + * + */ +export type ProjectMemberModel = runtime.Types.Result.DefaultSelection + +export type AggregateProjectMember = { + _count: ProjectMemberCountAggregateOutputType | null + _avg: ProjectMemberAvgAggregateOutputType | null + _sum: ProjectMemberSumAggregateOutputType | null + _min: ProjectMemberMinAggregateOutputType | null + _max: ProjectMemberMaxAggregateOutputType | null +} + +export type ProjectMemberAvgAggregateOutputType = { + id: number | null + projectId: number | null + userId: number | null +} + +export type ProjectMemberSumAggregateOutputType = { + id: number | null + projectId: number | null + userId: number | null +} + +export type ProjectMemberMinAggregateOutputType = { + id: number | null + projectId: number | null + userId: number | null + permission: string | null + createdAt: Date | null +} + +export type ProjectMemberMaxAggregateOutputType = { + id: number | null + projectId: number | null + userId: number | null + permission: string | null + createdAt: Date | null +} + +export type ProjectMemberCountAggregateOutputType = { + id: number + projectId: number + userId: number + permission: number + createdAt: number + _all: number +} + + +export type ProjectMemberAvgAggregateInputType = { + id?: true + projectId?: true + userId?: true +} + +export type ProjectMemberSumAggregateInputType = { + id?: true + projectId?: true + userId?: true +} + +export type ProjectMemberMinAggregateInputType = { + id?: true + projectId?: true + userId?: true + permission?: true + createdAt?: true +} + +export type ProjectMemberMaxAggregateInputType = { + id?: true + projectId?: true + userId?: true + permission?: true + createdAt?: true +} + +export type ProjectMemberCountAggregateInputType = { + id?: true + projectId?: true + userId?: true + permission?: true + createdAt?: true + _all?: true +} + +export type ProjectMemberAggregateArgs = { + /** + * Filter which ProjectMember to aggregate. + */ + where?: Prisma.ProjectMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ProjectMembers to fetch. + */ + orderBy?: Prisma.ProjectMemberOrderByWithRelationInput | Prisma.ProjectMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.ProjectMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ProjectMembers 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` ProjectMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned ProjectMembers + **/ + _count?: true | ProjectMemberCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: ProjectMemberAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: ProjectMemberSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ProjectMemberMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ProjectMemberMaxAggregateInputType +} + +export type GetProjectMemberAggregateType = { + [P in keyof T & keyof AggregateProjectMember]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type ProjectMemberGroupByArgs = { + where?: Prisma.ProjectMemberWhereInput + orderBy?: Prisma.ProjectMemberOrderByWithAggregationInput | Prisma.ProjectMemberOrderByWithAggregationInput[] + by: Prisma.ProjectMemberScalarFieldEnum[] | Prisma.ProjectMemberScalarFieldEnum + having?: Prisma.ProjectMemberScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ProjectMemberCountAggregateInputType | true + _avg?: ProjectMemberAvgAggregateInputType + _sum?: ProjectMemberSumAggregateInputType + _min?: ProjectMemberMinAggregateInputType + _max?: ProjectMemberMaxAggregateInputType +} + +export type ProjectMemberGroupByOutputType = { + id: number + projectId: number + userId: number + permission: string + createdAt: Date + _count: ProjectMemberCountAggregateOutputType | null + _avg: ProjectMemberAvgAggregateOutputType | null + _sum: ProjectMemberSumAggregateOutputType | null + _min: ProjectMemberMinAggregateOutputType | null + _max: ProjectMemberMaxAggregateOutputType | null +} + +export type GetProjectMemberGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof ProjectMemberGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type ProjectMemberWhereInput = { + AND?: Prisma.ProjectMemberWhereInput | Prisma.ProjectMemberWhereInput[] + OR?: Prisma.ProjectMemberWhereInput[] + NOT?: Prisma.ProjectMemberWhereInput | Prisma.ProjectMemberWhereInput[] + id?: Prisma.IntFilter<"ProjectMember"> | number + projectId?: Prisma.IntFilter<"ProjectMember"> | number + userId?: Prisma.IntFilter<"ProjectMember"> | number + permission?: Prisma.StringFilter<"ProjectMember"> | string + createdAt?: Prisma.DateTimeFilter<"ProjectMember"> | Date | string + project?: Prisma.XOR + user?: Prisma.XOR +} + +export type ProjectMemberOrderByWithRelationInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder + permission?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + project?: Prisma.ProjectOrderByWithRelationInput + user?: Prisma.UserOrderByWithRelationInput + _relevance?: Prisma.ProjectMemberOrderByRelevanceInput +} + +export type ProjectMemberWhereUniqueInput = Prisma.AtLeast<{ + id?: number + projectId_userId?: Prisma.ProjectMemberProjectIdUserIdCompoundUniqueInput + AND?: Prisma.ProjectMemberWhereInput | Prisma.ProjectMemberWhereInput[] + OR?: Prisma.ProjectMemberWhereInput[] + NOT?: Prisma.ProjectMemberWhereInput | Prisma.ProjectMemberWhereInput[] + projectId?: Prisma.IntFilter<"ProjectMember"> | number + userId?: Prisma.IntFilter<"ProjectMember"> | number + permission?: Prisma.StringFilter<"ProjectMember"> | string + createdAt?: Prisma.DateTimeFilter<"ProjectMember"> | Date | string + project?: Prisma.XOR + user?: Prisma.XOR +}, "id" | "projectId_userId"> + +export type ProjectMemberOrderByWithAggregationInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder + permission?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + _count?: Prisma.ProjectMemberCountOrderByAggregateInput + _avg?: Prisma.ProjectMemberAvgOrderByAggregateInput + _max?: Prisma.ProjectMemberMaxOrderByAggregateInput + _min?: Prisma.ProjectMemberMinOrderByAggregateInput + _sum?: Prisma.ProjectMemberSumOrderByAggregateInput +} + +export type ProjectMemberScalarWhereWithAggregatesInput = { + AND?: Prisma.ProjectMemberScalarWhereWithAggregatesInput | Prisma.ProjectMemberScalarWhereWithAggregatesInput[] + OR?: Prisma.ProjectMemberScalarWhereWithAggregatesInput[] + NOT?: Prisma.ProjectMemberScalarWhereWithAggregatesInput | Prisma.ProjectMemberScalarWhereWithAggregatesInput[] + id?: Prisma.IntWithAggregatesFilter<"ProjectMember"> | number + projectId?: Prisma.IntWithAggregatesFilter<"ProjectMember"> | number + userId?: Prisma.IntWithAggregatesFilter<"ProjectMember"> | number + permission?: Prisma.StringWithAggregatesFilter<"ProjectMember"> | string + createdAt?: Prisma.DateTimeWithAggregatesFilter<"ProjectMember"> | Date | string +} + +export type ProjectMemberCreateInput = { + permission?: string + createdAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutMembersInput + user: Prisma.UserCreateNestedOneWithoutProjectMembersInput +} + +export type ProjectMemberUncheckedCreateInput = { + id?: number + projectId: number + userId: number + permission?: string + createdAt?: Date | string +} + +export type ProjectMemberUpdateInput = { + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutMembersNestedInput + user?: Prisma.UserUpdateOneRequiredWithoutProjectMembersNestedInput +} + +export type ProjectMemberUncheckedUpdateInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectMemberCreateManyInput = { + id?: number + projectId: number + userId: number + permission?: string + createdAt?: Date | string +} + +export type ProjectMemberUpdateManyMutationInput = { + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectMemberUncheckedUpdateManyInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectMemberListRelationFilter = { + every?: Prisma.ProjectMemberWhereInput + some?: Prisma.ProjectMemberWhereInput + none?: Prisma.ProjectMemberWhereInput +} + +export type ProjectMemberOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type ProjectMemberOrderByRelevanceInput = { + fields: Prisma.ProjectMemberOrderByRelevanceFieldEnum | Prisma.ProjectMemberOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type ProjectMemberProjectIdUserIdCompoundUniqueInput = { + projectId: number + userId: number +} + +export type ProjectMemberCountOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder + permission?: Prisma.SortOrder + createdAt?: Prisma.SortOrder +} + +export type ProjectMemberAvgOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type ProjectMemberMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder + permission?: Prisma.SortOrder + createdAt?: Prisma.SortOrder +} + +export type ProjectMemberMinOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder + permission?: Prisma.SortOrder + createdAt?: Prisma.SortOrder +} + +export type ProjectMemberSumOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type ProjectMemberCreateNestedManyWithoutUserInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutUserInput[] | Prisma.ProjectMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutUserInput | Prisma.ProjectMemberCreateOrConnectWithoutUserInput[] + createMany?: Prisma.ProjectMemberCreateManyUserInputEnvelope + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] +} + +export type ProjectMemberUncheckedCreateNestedManyWithoutUserInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutUserInput[] | Prisma.ProjectMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutUserInput | Prisma.ProjectMemberCreateOrConnectWithoutUserInput[] + createMany?: Prisma.ProjectMemberCreateManyUserInputEnvelope + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] +} + +export type ProjectMemberUpdateManyWithoutUserNestedInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutUserInput[] | Prisma.ProjectMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutUserInput | Prisma.ProjectMemberCreateOrConnectWithoutUserInput[] + upsert?: Prisma.ProjectMemberUpsertWithWhereUniqueWithoutUserInput | Prisma.ProjectMemberUpsertWithWhereUniqueWithoutUserInput[] + createMany?: Prisma.ProjectMemberCreateManyUserInputEnvelope + set?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + disconnect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + delete?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + update?: Prisma.ProjectMemberUpdateWithWhereUniqueWithoutUserInput | Prisma.ProjectMemberUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: Prisma.ProjectMemberUpdateManyWithWhereWithoutUserInput | Prisma.ProjectMemberUpdateManyWithWhereWithoutUserInput[] + deleteMany?: Prisma.ProjectMemberScalarWhereInput | Prisma.ProjectMemberScalarWhereInput[] +} + +export type ProjectMemberUncheckedUpdateManyWithoutUserNestedInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutUserInput[] | Prisma.ProjectMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutUserInput | Prisma.ProjectMemberCreateOrConnectWithoutUserInput[] + upsert?: Prisma.ProjectMemberUpsertWithWhereUniqueWithoutUserInput | Prisma.ProjectMemberUpsertWithWhereUniqueWithoutUserInput[] + createMany?: Prisma.ProjectMemberCreateManyUserInputEnvelope + set?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + disconnect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + delete?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + update?: Prisma.ProjectMemberUpdateWithWhereUniqueWithoutUserInput | Prisma.ProjectMemberUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: Prisma.ProjectMemberUpdateManyWithWhereWithoutUserInput | Prisma.ProjectMemberUpdateManyWithWhereWithoutUserInput[] + deleteMany?: Prisma.ProjectMemberScalarWhereInput | Prisma.ProjectMemberScalarWhereInput[] +} + +export type ProjectMemberCreateNestedManyWithoutProjectInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutProjectInput[] | Prisma.ProjectMemberUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutProjectInput | Prisma.ProjectMemberCreateOrConnectWithoutProjectInput[] + createMany?: Prisma.ProjectMemberCreateManyProjectInputEnvelope + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] +} + +export type ProjectMemberUncheckedCreateNestedManyWithoutProjectInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutProjectInput[] | Prisma.ProjectMemberUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutProjectInput | Prisma.ProjectMemberCreateOrConnectWithoutProjectInput[] + createMany?: Prisma.ProjectMemberCreateManyProjectInputEnvelope + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] +} + +export type ProjectMemberUpdateManyWithoutProjectNestedInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutProjectInput[] | Prisma.ProjectMemberUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutProjectInput | Prisma.ProjectMemberCreateOrConnectWithoutProjectInput[] + upsert?: Prisma.ProjectMemberUpsertWithWhereUniqueWithoutProjectInput | Prisma.ProjectMemberUpsertWithWhereUniqueWithoutProjectInput[] + createMany?: Prisma.ProjectMemberCreateManyProjectInputEnvelope + set?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + disconnect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + delete?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + update?: Prisma.ProjectMemberUpdateWithWhereUniqueWithoutProjectInput | Prisma.ProjectMemberUpdateWithWhereUniqueWithoutProjectInput[] + updateMany?: Prisma.ProjectMemberUpdateManyWithWhereWithoutProjectInput | Prisma.ProjectMemberUpdateManyWithWhereWithoutProjectInput[] + deleteMany?: Prisma.ProjectMemberScalarWhereInput | Prisma.ProjectMemberScalarWhereInput[] +} + +export type ProjectMemberUncheckedUpdateManyWithoutProjectNestedInput = { + create?: Prisma.XOR | Prisma.ProjectMemberCreateWithoutProjectInput[] | Prisma.ProjectMemberUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.ProjectMemberCreateOrConnectWithoutProjectInput | Prisma.ProjectMemberCreateOrConnectWithoutProjectInput[] + upsert?: Prisma.ProjectMemberUpsertWithWhereUniqueWithoutProjectInput | Prisma.ProjectMemberUpsertWithWhereUniqueWithoutProjectInput[] + createMany?: Prisma.ProjectMemberCreateManyProjectInputEnvelope + set?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + disconnect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + delete?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + connect?: Prisma.ProjectMemberWhereUniqueInput | Prisma.ProjectMemberWhereUniqueInput[] + update?: Prisma.ProjectMemberUpdateWithWhereUniqueWithoutProjectInput | Prisma.ProjectMemberUpdateWithWhereUniqueWithoutProjectInput[] + updateMany?: Prisma.ProjectMemberUpdateManyWithWhereWithoutProjectInput | Prisma.ProjectMemberUpdateManyWithWhereWithoutProjectInput[] + deleteMany?: Prisma.ProjectMemberScalarWhereInput | Prisma.ProjectMemberScalarWhereInput[] +} + +export type ProjectMemberCreateWithoutUserInput = { + permission?: string + createdAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutMembersInput +} + +export type ProjectMemberUncheckedCreateWithoutUserInput = { + id?: number + projectId: number + permission?: string + createdAt?: Date | string +} + +export type ProjectMemberCreateOrConnectWithoutUserInput = { + where: Prisma.ProjectMemberWhereUniqueInput + create: Prisma.XOR +} + +export type ProjectMemberCreateManyUserInputEnvelope = { + data: Prisma.ProjectMemberCreateManyUserInput | Prisma.ProjectMemberCreateManyUserInput[] + skipDuplicates?: boolean +} + +export type ProjectMemberUpsertWithWhereUniqueWithoutUserInput = { + where: Prisma.ProjectMemberWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type ProjectMemberUpdateWithWhereUniqueWithoutUserInput = { + where: Prisma.ProjectMemberWhereUniqueInput + data: Prisma.XOR +} + +export type ProjectMemberUpdateManyWithWhereWithoutUserInput = { + where: Prisma.ProjectMemberScalarWhereInput + data: Prisma.XOR +} + +export type ProjectMemberScalarWhereInput = { + AND?: Prisma.ProjectMemberScalarWhereInput | Prisma.ProjectMemberScalarWhereInput[] + OR?: Prisma.ProjectMemberScalarWhereInput[] + NOT?: Prisma.ProjectMemberScalarWhereInput | Prisma.ProjectMemberScalarWhereInput[] + id?: Prisma.IntFilter<"ProjectMember"> | number + projectId?: Prisma.IntFilter<"ProjectMember"> | number + userId?: Prisma.IntFilter<"ProjectMember"> | number + permission?: Prisma.StringFilter<"ProjectMember"> | string + createdAt?: Prisma.DateTimeFilter<"ProjectMember"> | Date | string +} + +export type ProjectMemberCreateWithoutProjectInput = { + permission?: string + createdAt?: Date | string + user: Prisma.UserCreateNestedOneWithoutProjectMembersInput +} + +export type ProjectMemberUncheckedCreateWithoutProjectInput = { + id?: number + userId: number + permission?: string + createdAt?: Date | string +} + +export type ProjectMemberCreateOrConnectWithoutProjectInput = { + where: Prisma.ProjectMemberWhereUniqueInput + create: Prisma.XOR +} + +export type ProjectMemberCreateManyProjectInputEnvelope = { + data: Prisma.ProjectMemberCreateManyProjectInput | Prisma.ProjectMemberCreateManyProjectInput[] + skipDuplicates?: boolean +} + +export type ProjectMemberUpsertWithWhereUniqueWithoutProjectInput = { + where: Prisma.ProjectMemberWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type ProjectMemberUpdateWithWhereUniqueWithoutProjectInput = { + where: Prisma.ProjectMemberWhereUniqueInput + data: Prisma.XOR +} + +export type ProjectMemberUpdateManyWithWhereWithoutProjectInput = { + where: Prisma.ProjectMemberScalarWhereInput + data: Prisma.XOR +} + +export type ProjectMemberCreateManyUserInput = { + id?: number + projectId: number + permission?: string + createdAt?: Date | string +} + +export type ProjectMemberUpdateWithoutUserInput = { + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutMembersNestedInput +} + +export type ProjectMemberUncheckedUpdateWithoutUserInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectMemberUncheckedUpdateManyWithoutUserInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectMemberCreateManyProjectInput = { + id?: number + userId: number + permission?: string + createdAt?: Date | string +} + +export type ProjectMemberUpdateWithoutProjectInput = { + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + user?: Prisma.UserUpdateOneRequiredWithoutProjectMembersNestedInput +} + +export type ProjectMemberUncheckedUpdateWithoutProjectInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ProjectMemberUncheckedUpdateManyWithoutProjectInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number + permission?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + + + +export type ProjectMemberSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + projectId?: boolean + userId?: boolean + permission?: boolean + createdAt?: boolean + project?: boolean | Prisma.ProjectDefaultArgs + user?: boolean | Prisma.UserDefaultArgs +}, ExtArgs["result"]["projectMember"]> + + + +export type ProjectMemberSelectScalar = { + id?: boolean + projectId?: boolean + userId?: boolean + permission?: boolean + createdAt?: boolean +} + +export type ProjectMemberOmit = runtime.Types.Extensions.GetOmit<"id" | "projectId" | "userId" | "permission" | "createdAt", ExtArgs["result"]["projectMember"]> +export type ProjectMemberInclude = { + project?: boolean | Prisma.ProjectDefaultArgs + user?: boolean | Prisma.UserDefaultArgs +} + +export type $ProjectMemberPayload = { + name: "ProjectMember" + objects: { + project: Prisma.$ProjectPayload + user: Prisma.$UserPayload + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: number + projectId: number + userId: number + permission: string + createdAt: Date + }, ExtArgs["result"]["projectMember"]> + composites: {} +} + +export type ProjectMemberGetPayload = runtime.Types.Result.GetResult + +export type ProjectMemberCountArgs = + Omit & { + select?: ProjectMemberCountAggregateInputType | true + } + +export interface ProjectMemberDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['ProjectMember'], meta: { name: 'ProjectMember' } } + /** + * Find zero or one ProjectMember that matches the filter. + * @param {ProjectMemberFindUniqueArgs} args - Arguments to find a ProjectMember + * @example + * // Get one ProjectMember + * const projectMember = await prisma.projectMember.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one ProjectMember that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ProjectMemberFindUniqueOrThrowArgs} args - Arguments to find a ProjectMember + * @example + * // Get one ProjectMember + * const projectMember = await prisma.projectMember.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first ProjectMember 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 {ProjectMemberFindFirstArgs} args - Arguments to find a ProjectMember + * @example + * // Get one ProjectMember + * const projectMember = await prisma.projectMember.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first ProjectMember 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 {ProjectMemberFindFirstOrThrowArgs} args - Arguments to find a ProjectMember + * @example + * // Get one ProjectMember + * const projectMember = await prisma.projectMember.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more ProjectMembers 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 {ProjectMemberFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all ProjectMembers + * const projectMembers = await prisma.projectMember.findMany() + * + * // Get first 10 ProjectMembers + * const projectMembers = await prisma.projectMember.findMany({ take: 10 }) + * + * // Only select the `id` + * const projectMemberWithIdOnly = await prisma.projectMember.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a ProjectMember. + * @param {ProjectMemberCreateArgs} args - Arguments to create a ProjectMember. + * @example + * // Create one ProjectMember + * const ProjectMember = await prisma.projectMember.create({ + * data: { + * // ... data to create a ProjectMember + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many ProjectMembers. + * @param {ProjectMemberCreateManyArgs} args - Arguments to create many ProjectMembers. + * @example + * // Create many ProjectMembers + * const projectMember = await prisma.projectMember.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a ProjectMember. + * @param {ProjectMemberDeleteArgs} args - Arguments to delete one ProjectMember. + * @example + * // Delete one ProjectMember + * const ProjectMember = await prisma.projectMember.delete({ + * where: { + * // ... filter to delete one ProjectMember + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one ProjectMember. + * @param {ProjectMemberUpdateArgs} args - Arguments to update one ProjectMember. + * @example + * // Update one ProjectMember + * const projectMember = await prisma.projectMember.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more ProjectMembers. + * @param {ProjectMemberDeleteManyArgs} args - Arguments to filter ProjectMembers to delete. + * @example + * // Delete a few ProjectMembers + * const { count } = await prisma.projectMember.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more ProjectMembers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectMemberUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many ProjectMembers + * const projectMember = await prisma.projectMember.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one ProjectMember. + * @param {ProjectMemberUpsertArgs} args - Arguments to update or create a ProjectMember. + * @example + * // Update or create a ProjectMember + * const projectMember = await prisma.projectMember.upsert({ + * create: { + * // ... data to create a ProjectMember + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the ProjectMember we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__ProjectMemberClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of ProjectMembers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectMemberCountArgs} args - Arguments to filter ProjectMembers to count. + * @example + * // Count the number of ProjectMembers + * const count = await prisma.projectMember.count({ + * where: { + * // ... the filter for the ProjectMembers we want to count + * } + * }) + **/ + count( + args?: Prisma.Subset, + ): Prisma.PrismaPromise< + T extends runtime.Types.Utils.Record<'select', any> + ? T['select'] extends true + ? number + : Prisma.GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a ProjectMember. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectMemberAggregateArgs} 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: Prisma.Subset): Prisma.PrismaPromise> + + /** + * Group by ProjectMember. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ProjectMemberGroupByArgs} 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 ProjectMemberGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: ProjectMemberGroupByArgs['orderBy'] } + : { orderBy?: ProjectMemberGroupByArgs['orderBy'] }, + OrderFields extends Prisma.ExcludeUnderscoreKeys>>, + ByFields extends Prisma.MaybeTupleToUnion, + ByValid extends Prisma.Has, + HavingFields extends Prisma.GetHavingFields, + HavingValid extends Prisma.Has, + ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, + InputErrors extends ByEmpty extends Prisma.True + ? `Error: "by" must not be empty.` + : HavingValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetProjectMemberGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the ProjectMember model + */ +readonly fields: ProjectMemberFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for ProjectMember. + * 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__ProjectMemberClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + project = {}>(args?: Prisma.Subset>): Prisma.Prisma__ProjectClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + user = {}>(args?: Prisma.Subset>): Prisma.Prisma__UserClient, 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): runtime.Types.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): runtime.Types.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): runtime.Types.Utils.JsPromise +} + + + + +/** + * Fields of the ProjectMember model + */ +export interface ProjectMemberFieldRefs { + readonly id: Prisma.FieldRef<"ProjectMember", 'Int'> + readonly projectId: Prisma.FieldRef<"ProjectMember", 'Int'> + readonly userId: Prisma.FieldRef<"ProjectMember", 'Int'> + readonly permission: Prisma.FieldRef<"ProjectMember", 'String'> + readonly createdAt: Prisma.FieldRef<"ProjectMember", 'DateTime'> +} + + +// Custom InputTypes +/** + * ProjectMember findUnique + */ +export type ProjectMemberFindUniqueArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * Filter, which ProjectMember to fetch. + */ + where: Prisma.ProjectMemberWhereUniqueInput +} + +/** + * ProjectMember findUniqueOrThrow + */ +export type ProjectMemberFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * Filter, which ProjectMember to fetch. + */ + where: Prisma.ProjectMemberWhereUniqueInput +} + +/** + * ProjectMember findFirst + */ +export type ProjectMemberFindFirstArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * Filter, which ProjectMember to fetch. + */ + where?: Prisma.ProjectMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ProjectMembers to fetch. + */ + orderBy?: Prisma.ProjectMemberOrderByWithRelationInput | Prisma.ProjectMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for ProjectMembers. + */ + cursor?: Prisma.ProjectMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ProjectMembers 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` ProjectMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ProjectMembers. + */ + distinct?: Prisma.ProjectMemberScalarFieldEnum | Prisma.ProjectMemberScalarFieldEnum[] +} + +/** + * ProjectMember findFirstOrThrow + */ +export type ProjectMemberFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * Filter, which ProjectMember to fetch. + */ + where?: Prisma.ProjectMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ProjectMembers to fetch. + */ + orderBy?: Prisma.ProjectMemberOrderByWithRelationInput | Prisma.ProjectMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for ProjectMembers. + */ + cursor?: Prisma.ProjectMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ProjectMembers 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` ProjectMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ProjectMembers. + */ + distinct?: Prisma.ProjectMemberScalarFieldEnum | Prisma.ProjectMemberScalarFieldEnum[] +} + +/** + * ProjectMember findMany + */ +export type ProjectMemberFindManyArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * Filter, which ProjectMembers to fetch. + */ + where?: Prisma.ProjectMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ProjectMembers to fetch. + */ + orderBy?: Prisma.ProjectMemberOrderByWithRelationInput | Prisma.ProjectMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing ProjectMembers. + */ + cursor?: Prisma.ProjectMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ProjectMembers 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` ProjectMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ProjectMembers. + */ + distinct?: Prisma.ProjectMemberScalarFieldEnum | Prisma.ProjectMemberScalarFieldEnum[] +} + +/** + * ProjectMember create + */ +export type ProjectMemberCreateArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * The data needed to create a ProjectMember. + */ + data: Prisma.XOR +} + +/** + * ProjectMember createMany + */ +export type ProjectMemberCreateManyArgs = { + /** + * The data used to create many ProjectMembers. + */ + data: Prisma.ProjectMemberCreateManyInput | Prisma.ProjectMemberCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * ProjectMember update + */ +export type ProjectMemberUpdateArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * The data needed to update a ProjectMember. + */ + data: Prisma.XOR + /** + * Choose, which ProjectMember to update. + */ + where: Prisma.ProjectMemberWhereUniqueInput +} + +/** + * ProjectMember updateMany + */ +export type ProjectMemberUpdateManyArgs = { + /** + * The data used to update ProjectMembers. + */ + data: Prisma.XOR + /** + * Filter which ProjectMembers to update + */ + where?: Prisma.ProjectMemberWhereInput + /** + * Limit how many ProjectMembers to update. + */ + limit?: number +} + +/** + * ProjectMember upsert + */ +export type ProjectMemberUpsertArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * The filter to search for the ProjectMember to update in case it exists. + */ + where: Prisma.ProjectMemberWhereUniqueInput + /** + * In case the ProjectMember found by the `where` argument doesn't exist, create a new ProjectMember with this data. + */ + create: Prisma.XOR + /** + * In case the ProjectMember was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * ProjectMember delete + */ +export type ProjectMemberDeleteArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + /** + * Filter which ProjectMember to delete. + */ + where: Prisma.ProjectMemberWhereUniqueInput +} + +/** + * ProjectMember deleteMany + */ +export type ProjectMemberDeleteManyArgs = { + /** + * Filter which ProjectMembers to delete + */ + where?: Prisma.ProjectMemberWhereInput + /** + * Limit how many ProjectMembers to delete. + */ + limit?: number +} + +/** + * ProjectMember without action + */ +export type ProjectMemberDefaultArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null +} diff --git a/generated/prisma/models/Task.ts b/generated/prisma/models/Task.ts new file mode 100644 index 0000000..c36c48f --- /dev/null +++ b/generated/prisma/models/Task.ts @@ -0,0 +1,3182 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `Task` model and its related types. + * + * 🟢 You can import this file directly. + */ +import type * as runtime from "@prisma/client/runtime/client" +import type * as $Enums from "../enums.ts" +import type * as Prisma from "../internal/prismaNamespace.ts" + +/** + * Model Task + * + */ +export type TaskModel = runtime.Types.Result.DefaultSelection + +export type AggregateTask = { + _count: TaskCountAggregateOutputType | null + _avg: TaskAvgAggregateOutputType | null + _sum: TaskSumAggregateOutputType | null + _min: TaskMinAggregateOutputType | null + _max: TaskMaxAggregateOutputType | null +} + +export type TaskAvgAggregateOutputType = { + id: number | null + projectId: number | null + columnId: number | null + parentId: number | null + assigneeId: number | null + creatorId: number | null + sortOrder: number | null +} + +export type TaskSumAggregateOutputType = { + id: number | null + projectId: number | null + columnId: number | null + parentId: number | null + assigneeId: number | null + creatorId: number | null + sortOrder: number | null +} + +export type TaskMinAggregateOutputType = { + id: number | null + projectId: number | null + columnId: number | null + parentId: number | null + title: string | null + description: string | null + kind: string | null + markDate: Date | null + status: string | null + doneAt: Date | null + assigneeId: number | null + creatorId: number | null + sortOrder: number | null + archived: boolean | null + archivedAt: Date | null + archiveSource: string | null + createdAt: Date | null + updatedAt: Date | null +} + +export type TaskMaxAggregateOutputType = { + id: number | null + projectId: number | null + columnId: number | null + parentId: number | null + title: string | null + description: string | null + kind: string | null + markDate: Date | null + status: string | null + doneAt: Date | null + assigneeId: number | null + creatorId: number | null + sortOrder: number | null + archived: boolean | null + archivedAt: Date | null + archiveSource: string | null + createdAt: Date | null + updatedAt: Date | null +} + +export type TaskCountAggregateOutputType = { + id: number + projectId: number + columnId: number + parentId: number + title: number + description: number + kind: number + markDate: number + status: number + doneAt: number + assigneeId: number + creatorId: number + extras: number + sortOrder: number + archived: number + archivedAt: number + archiveSource: number + createdAt: number + updatedAt: number + _all: number +} + + +export type TaskAvgAggregateInputType = { + id?: true + projectId?: true + columnId?: true + parentId?: true + assigneeId?: true + creatorId?: true + sortOrder?: true +} + +export type TaskSumAggregateInputType = { + id?: true + projectId?: true + columnId?: true + parentId?: true + assigneeId?: true + creatorId?: true + sortOrder?: true +} + +export type TaskMinAggregateInputType = { + id?: true + projectId?: true + columnId?: true + parentId?: true + title?: true + description?: true + kind?: true + markDate?: true + status?: true + doneAt?: true + assigneeId?: true + creatorId?: true + sortOrder?: true + archived?: true + archivedAt?: true + archiveSource?: true + createdAt?: true + updatedAt?: true +} + +export type TaskMaxAggregateInputType = { + id?: true + projectId?: true + columnId?: true + parentId?: true + title?: true + description?: true + kind?: true + markDate?: true + status?: true + doneAt?: true + assigneeId?: true + creatorId?: true + sortOrder?: true + archived?: true + archivedAt?: true + archiveSource?: true + createdAt?: true + updatedAt?: true +} + +export type TaskCountAggregateInputType = { + id?: true + projectId?: true + columnId?: true + parentId?: true + title?: true + description?: true + kind?: true + markDate?: true + status?: true + doneAt?: true + assigneeId?: true + creatorId?: true + extras?: true + sortOrder?: true + archived?: true + archivedAt?: true + archiveSource?: true + createdAt?: true + updatedAt?: true + _all?: true +} + +export type TaskAggregateArgs = { + /** + * Filter which Task to aggregate. + */ + where?: Prisma.TaskWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Tasks to fetch. + */ + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.TaskWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Tasks 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` Tasks. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned Tasks + **/ + _count?: true | TaskCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: TaskAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: TaskSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: TaskMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: TaskMaxAggregateInputType +} + +export type GetTaskAggregateType = { + [P in keyof T & keyof AggregateTask]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type TaskGroupByArgs = { + where?: Prisma.TaskWhereInput + orderBy?: Prisma.TaskOrderByWithAggregationInput | Prisma.TaskOrderByWithAggregationInput[] + by: Prisma.TaskScalarFieldEnum[] | Prisma.TaskScalarFieldEnum + having?: Prisma.TaskScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: TaskCountAggregateInputType | true + _avg?: TaskAvgAggregateInputType + _sum?: TaskSumAggregateInputType + _min?: TaskMinAggregateInputType + _max?: TaskMaxAggregateInputType +} + +export type TaskGroupByOutputType = { + id: number + projectId: number + columnId: number + parentId: number | null + title: string + description: string + kind: string | null + markDate: Date | null + status: string + doneAt: Date | null + assigneeId: number | null + creatorId: number + extras: runtime.JsonValue + sortOrder: number + archived: boolean + archivedAt: Date | null + archiveSource: string | null + createdAt: Date + updatedAt: Date + _count: TaskCountAggregateOutputType | null + _avg: TaskAvgAggregateOutputType | null + _sum: TaskSumAggregateOutputType | null + _min: TaskMinAggregateOutputType | null + _max: TaskMaxAggregateOutputType | null +} + +export type GetTaskGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof TaskGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type TaskWhereInput = { + AND?: Prisma.TaskWhereInput | Prisma.TaskWhereInput[] + OR?: Prisma.TaskWhereInput[] + NOT?: Prisma.TaskWhereInput | Prisma.TaskWhereInput[] + id?: Prisma.IntFilter<"Task"> | number + projectId?: Prisma.IntFilter<"Task"> | number + columnId?: Prisma.IntFilter<"Task"> | number + parentId?: Prisma.IntNullableFilter<"Task"> | number | null + title?: Prisma.StringFilter<"Task"> | string + description?: Prisma.StringFilter<"Task"> | string + kind?: Prisma.StringNullableFilter<"Task"> | string | null + markDate?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + status?: Prisma.StringFilter<"Task"> | string + doneAt?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + assigneeId?: Prisma.IntNullableFilter<"Task"> | number | null + creatorId?: Prisma.IntFilter<"Task"> | number + extras?: Prisma.JsonFilter<"Task"> + sortOrder?: Prisma.IntFilter<"Task"> | number + archived?: Prisma.BoolFilter<"Task"> | boolean + archivedAt?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + archiveSource?: Prisma.StringNullableFilter<"Task"> | string | null + createdAt?: Prisma.DateTimeFilter<"Task"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"Task"> | Date | string + project?: Prisma.XOR + column?: Prisma.XOR + parent?: Prisma.XOR | null + children?: Prisma.TaskListRelationFilter + assignee?: Prisma.XOR | null + creator?: Prisma.XOR + members?: Prisma.TaskMemberListRelationFilter + tags?: Prisma.TaskTagListRelationFilter +} + +export type TaskOrderByWithRelationInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrderInput | Prisma.SortOrder + title?: Prisma.SortOrder + description?: Prisma.SortOrder + kind?: Prisma.SortOrderInput | Prisma.SortOrder + markDate?: Prisma.SortOrderInput | Prisma.SortOrder + status?: Prisma.SortOrder + doneAt?: Prisma.SortOrderInput | Prisma.SortOrder + assigneeId?: Prisma.SortOrderInput | Prisma.SortOrder + creatorId?: Prisma.SortOrder + extras?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + archived?: Prisma.SortOrder + archivedAt?: Prisma.SortOrderInput | Prisma.SortOrder + archiveSource?: Prisma.SortOrderInput | Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder + project?: Prisma.ProjectOrderByWithRelationInput + column?: Prisma.BoardColumnOrderByWithRelationInput + parent?: Prisma.TaskOrderByWithRelationInput + children?: Prisma.TaskOrderByRelationAggregateInput + assignee?: Prisma.UserOrderByWithRelationInput + creator?: Prisma.UserOrderByWithRelationInput + members?: Prisma.TaskMemberOrderByRelationAggregateInput + tags?: Prisma.TaskTagOrderByRelationAggregateInput + _relevance?: Prisma.TaskOrderByRelevanceInput +} + +export type TaskWhereUniqueInput = Prisma.AtLeast<{ + id?: number + AND?: Prisma.TaskWhereInput | Prisma.TaskWhereInput[] + OR?: Prisma.TaskWhereInput[] + NOT?: Prisma.TaskWhereInput | Prisma.TaskWhereInput[] + projectId?: Prisma.IntFilter<"Task"> | number + columnId?: Prisma.IntFilter<"Task"> | number + parentId?: Prisma.IntNullableFilter<"Task"> | number | null + title?: Prisma.StringFilter<"Task"> | string + description?: Prisma.StringFilter<"Task"> | string + kind?: Prisma.StringNullableFilter<"Task"> | string | null + markDate?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + status?: Prisma.StringFilter<"Task"> | string + doneAt?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + assigneeId?: Prisma.IntNullableFilter<"Task"> | number | null + creatorId?: Prisma.IntFilter<"Task"> | number + extras?: Prisma.JsonFilter<"Task"> + sortOrder?: Prisma.IntFilter<"Task"> | number + archived?: Prisma.BoolFilter<"Task"> | boolean + archivedAt?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + archiveSource?: Prisma.StringNullableFilter<"Task"> | string | null + createdAt?: Prisma.DateTimeFilter<"Task"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"Task"> | Date | string + project?: Prisma.XOR + column?: Prisma.XOR + parent?: Prisma.XOR | null + children?: Prisma.TaskListRelationFilter + assignee?: Prisma.XOR | null + creator?: Prisma.XOR + members?: Prisma.TaskMemberListRelationFilter + tags?: Prisma.TaskTagListRelationFilter +}, "id"> + +export type TaskOrderByWithAggregationInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrderInput | Prisma.SortOrder + title?: Prisma.SortOrder + description?: Prisma.SortOrder + kind?: Prisma.SortOrderInput | Prisma.SortOrder + markDate?: Prisma.SortOrderInput | Prisma.SortOrder + status?: Prisma.SortOrder + doneAt?: Prisma.SortOrderInput | Prisma.SortOrder + assigneeId?: Prisma.SortOrderInput | Prisma.SortOrder + creatorId?: Prisma.SortOrder + extras?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + archived?: Prisma.SortOrder + archivedAt?: Prisma.SortOrderInput | Prisma.SortOrder + archiveSource?: Prisma.SortOrderInput | Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder + _count?: Prisma.TaskCountOrderByAggregateInput + _avg?: Prisma.TaskAvgOrderByAggregateInput + _max?: Prisma.TaskMaxOrderByAggregateInput + _min?: Prisma.TaskMinOrderByAggregateInput + _sum?: Prisma.TaskSumOrderByAggregateInput +} + +export type TaskScalarWhereWithAggregatesInput = { + AND?: Prisma.TaskScalarWhereWithAggregatesInput | Prisma.TaskScalarWhereWithAggregatesInput[] + OR?: Prisma.TaskScalarWhereWithAggregatesInput[] + NOT?: Prisma.TaskScalarWhereWithAggregatesInput | Prisma.TaskScalarWhereWithAggregatesInput[] + id?: Prisma.IntWithAggregatesFilter<"Task"> | number + projectId?: Prisma.IntWithAggregatesFilter<"Task"> | number + columnId?: Prisma.IntWithAggregatesFilter<"Task"> | number + parentId?: Prisma.IntNullableWithAggregatesFilter<"Task"> | number | null + title?: Prisma.StringWithAggregatesFilter<"Task"> | string + description?: Prisma.StringWithAggregatesFilter<"Task"> | string + kind?: Prisma.StringNullableWithAggregatesFilter<"Task"> | string | null + markDate?: Prisma.DateTimeNullableWithAggregatesFilter<"Task"> | Date | string | null + status?: Prisma.StringWithAggregatesFilter<"Task"> | string + doneAt?: Prisma.DateTimeNullableWithAggregatesFilter<"Task"> | Date | string | null + assigneeId?: Prisma.IntNullableWithAggregatesFilter<"Task"> | number | null + creatorId?: Prisma.IntWithAggregatesFilter<"Task"> | number + extras?: Prisma.JsonWithAggregatesFilter<"Task"> + sortOrder?: Prisma.IntWithAggregatesFilter<"Task"> | number + archived?: Prisma.BoolWithAggregatesFilter<"Task"> | boolean + archivedAt?: Prisma.DateTimeNullableWithAggregatesFilter<"Task"> | Date | string | null + archiveSource?: Prisma.StringNullableWithAggregatesFilter<"Task"> | string | null + createdAt?: Prisma.DateTimeWithAggregatesFilter<"Task"> | Date | string + updatedAt?: Prisma.DateTimeWithAggregatesFilter<"Task"> | Date | string +} + +export type TaskCreateInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskUpdateInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskCreateManyInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string +} + +export type TaskUpdateManyMutationInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type TaskUncheckedUpdateManyInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type TaskListRelationFilter = { + every?: Prisma.TaskWhereInput + some?: Prisma.TaskWhereInput + none?: Prisma.TaskWhereInput +} + +export type TaskOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type TaskNullableScalarRelationFilter = { + is?: Prisma.TaskWhereInput | null + isNot?: Prisma.TaskWhereInput | null +} + +export type TaskOrderByRelevanceInput = { + fields: Prisma.TaskOrderByRelevanceFieldEnum | Prisma.TaskOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type TaskCountOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrder + title?: Prisma.SortOrder + description?: Prisma.SortOrder + kind?: Prisma.SortOrder + markDate?: Prisma.SortOrder + status?: Prisma.SortOrder + doneAt?: Prisma.SortOrder + assigneeId?: Prisma.SortOrder + creatorId?: Prisma.SortOrder + extras?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + archived?: Prisma.SortOrder + archivedAt?: Prisma.SortOrder + archiveSource?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type TaskAvgOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrder + assigneeId?: Prisma.SortOrder + creatorId?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder +} + +export type TaskMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrder + title?: Prisma.SortOrder + description?: Prisma.SortOrder + kind?: Prisma.SortOrder + markDate?: Prisma.SortOrder + status?: Prisma.SortOrder + doneAt?: Prisma.SortOrder + assigneeId?: Prisma.SortOrder + creatorId?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + archived?: Prisma.SortOrder + archivedAt?: Prisma.SortOrder + archiveSource?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type TaskMinOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrder + title?: Prisma.SortOrder + description?: Prisma.SortOrder + kind?: Prisma.SortOrder + markDate?: Prisma.SortOrder + status?: Prisma.SortOrder + doneAt?: Prisma.SortOrder + assigneeId?: Prisma.SortOrder + creatorId?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder + archived?: Prisma.SortOrder + archivedAt?: Prisma.SortOrder + archiveSource?: Prisma.SortOrder + createdAt?: Prisma.SortOrder + updatedAt?: Prisma.SortOrder +} + +export type TaskSumOrderByAggregateInput = { + id?: Prisma.SortOrder + projectId?: Prisma.SortOrder + columnId?: Prisma.SortOrder + parentId?: Prisma.SortOrder + assigneeId?: Prisma.SortOrder + creatorId?: Prisma.SortOrder + sortOrder?: Prisma.SortOrder +} + +export type TaskScalarRelationFilter = { + is?: Prisma.TaskWhereInput + isNot?: Prisma.TaskWhereInput +} + +export type TaskCreateNestedManyWithoutAssigneeInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutAssigneeInput[] | Prisma.TaskUncheckedCreateWithoutAssigneeInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutAssigneeInput | Prisma.TaskCreateOrConnectWithoutAssigneeInput[] + createMany?: Prisma.TaskCreateManyAssigneeInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskCreateNestedManyWithoutCreatorInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutCreatorInput[] | Prisma.TaskUncheckedCreateWithoutCreatorInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutCreatorInput | Prisma.TaskCreateOrConnectWithoutCreatorInput[] + createMany?: Prisma.TaskCreateManyCreatorInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUncheckedCreateNestedManyWithoutAssigneeInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutAssigneeInput[] | Prisma.TaskUncheckedCreateWithoutAssigneeInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutAssigneeInput | Prisma.TaskCreateOrConnectWithoutAssigneeInput[] + createMany?: Prisma.TaskCreateManyAssigneeInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUncheckedCreateNestedManyWithoutCreatorInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutCreatorInput[] | Prisma.TaskUncheckedCreateWithoutCreatorInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutCreatorInput | Prisma.TaskCreateOrConnectWithoutCreatorInput[] + createMany?: Prisma.TaskCreateManyCreatorInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUpdateManyWithoutAssigneeNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutAssigneeInput[] | Prisma.TaskUncheckedCreateWithoutAssigneeInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutAssigneeInput | Prisma.TaskCreateOrConnectWithoutAssigneeInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutAssigneeInput | Prisma.TaskUpsertWithWhereUniqueWithoutAssigneeInput[] + createMany?: Prisma.TaskCreateManyAssigneeInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutAssigneeInput | Prisma.TaskUpdateWithWhereUniqueWithoutAssigneeInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutAssigneeInput | Prisma.TaskUpdateManyWithWhereWithoutAssigneeInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskUpdateManyWithoutCreatorNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutCreatorInput[] | Prisma.TaskUncheckedCreateWithoutCreatorInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutCreatorInput | Prisma.TaskCreateOrConnectWithoutCreatorInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutCreatorInput | Prisma.TaskUpsertWithWhereUniqueWithoutCreatorInput[] + createMany?: Prisma.TaskCreateManyCreatorInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutCreatorInput | Prisma.TaskUpdateWithWhereUniqueWithoutCreatorInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutCreatorInput | Prisma.TaskUpdateManyWithWhereWithoutCreatorInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskUncheckedUpdateManyWithoutAssigneeNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutAssigneeInput[] | Prisma.TaskUncheckedCreateWithoutAssigneeInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutAssigneeInput | Prisma.TaskCreateOrConnectWithoutAssigneeInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutAssigneeInput | Prisma.TaskUpsertWithWhereUniqueWithoutAssigneeInput[] + createMany?: Prisma.TaskCreateManyAssigneeInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutAssigneeInput | Prisma.TaskUpdateWithWhereUniqueWithoutAssigneeInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutAssigneeInput | Prisma.TaskUpdateManyWithWhereWithoutAssigneeInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskUncheckedUpdateManyWithoutCreatorNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutCreatorInput[] | Prisma.TaskUncheckedCreateWithoutCreatorInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutCreatorInput | Prisma.TaskCreateOrConnectWithoutCreatorInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutCreatorInput | Prisma.TaskUpsertWithWhereUniqueWithoutCreatorInput[] + createMany?: Prisma.TaskCreateManyCreatorInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutCreatorInput | Prisma.TaskUpdateWithWhereUniqueWithoutCreatorInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutCreatorInput | Prisma.TaskUpdateManyWithWhereWithoutCreatorInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskCreateNestedManyWithoutProjectInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutProjectInput[] | Prisma.TaskUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutProjectInput | Prisma.TaskCreateOrConnectWithoutProjectInput[] + createMany?: Prisma.TaskCreateManyProjectInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUncheckedCreateNestedManyWithoutProjectInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutProjectInput[] | Prisma.TaskUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutProjectInput | Prisma.TaskCreateOrConnectWithoutProjectInput[] + createMany?: Prisma.TaskCreateManyProjectInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUpdateManyWithoutProjectNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutProjectInput[] | Prisma.TaskUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutProjectInput | Prisma.TaskCreateOrConnectWithoutProjectInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutProjectInput | Prisma.TaskUpsertWithWhereUniqueWithoutProjectInput[] + createMany?: Prisma.TaskCreateManyProjectInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutProjectInput | Prisma.TaskUpdateWithWhereUniqueWithoutProjectInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutProjectInput | Prisma.TaskUpdateManyWithWhereWithoutProjectInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskUncheckedUpdateManyWithoutProjectNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutProjectInput[] | Prisma.TaskUncheckedCreateWithoutProjectInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutProjectInput | Prisma.TaskCreateOrConnectWithoutProjectInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutProjectInput | Prisma.TaskUpsertWithWhereUniqueWithoutProjectInput[] + createMany?: Prisma.TaskCreateManyProjectInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutProjectInput | Prisma.TaskUpdateWithWhereUniqueWithoutProjectInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutProjectInput | Prisma.TaskUpdateManyWithWhereWithoutProjectInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskCreateNestedManyWithoutColumnInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutColumnInput[] | Prisma.TaskUncheckedCreateWithoutColumnInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutColumnInput | Prisma.TaskCreateOrConnectWithoutColumnInput[] + createMany?: Prisma.TaskCreateManyColumnInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUncheckedCreateNestedManyWithoutColumnInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutColumnInput[] | Prisma.TaskUncheckedCreateWithoutColumnInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutColumnInput | Prisma.TaskCreateOrConnectWithoutColumnInput[] + createMany?: Prisma.TaskCreateManyColumnInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUpdateManyWithoutColumnNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutColumnInput[] | Prisma.TaskUncheckedCreateWithoutColumnInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutColumnInput | Prisma.TaskCreateOrConnectWithoutColumnInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutColumnInput | Prisma.TaskUpsertWithWhereUniqueWithoutColumnInput[] + createMany?: Prisma.TaskCreateManyColumnInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutColumnInput | Prisma.TaskUpdateWithWhereUniqueWithoutColumnInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutColumnInput | Prisma.TaskUpdateManyWithWhereWithoutColumnInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskUncheckedUpdateManyWithoutColumnNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutColumnInput[] | Prisma.TaskUncheckedCreateWithoutColumnInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutColumnInput | Prisma.TaskCreateOrConnectWithoutColumnInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutColumnInput | Prisma.TaskUpsertWithWhereUniqueWithoutColumnInput[] + createMany?: Prisma.TaskCreateManyColumnInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutColumnInput | Prisma.TaskUpdateWithWhereUniqueWithoutColumnInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutColumnInput | Prisma.TaskUpdateManyWithWhereWithoutColumnInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskCreateNestedOneWithoutChildrenInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutChildrenInput + connect?: Prisma.TaskWhereUniqueInput +} + +export type TaskCreateNestedManyWithoutParentInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutParentInput[] | Prisma.TaskUncheckedCreateWithoutParentInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutParentInput | Prisma.TaskCreateOrConnectWithoutParentInput[] + createMany?: Prisma.TaskCreateManyParentInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUncheckedCreateNestedManyWithoutParentInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutParentInput[] | Prisma.TaskUncheckedCreateWithoutParentInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutParentInput | Prisma.TaskCreateOrConnectWithoutParentInput[] + createMany?: Prisma.TaskCreateManyParentInputEnvelope + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] +} + +export type TaskUpdateOneWithoutChildrenNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutChildrenInput + upsert?: Prisma.TaskUpsertWithoutChildrenInput + disconnect?: Prisma.TaskWhereInput | boolean + delete?: Prisma.TaskWhereInput | boolean + connect?: Prisma.TaskWhereUniqueInput + update?: Prisma.XOR, Prisma.TaskUncheckedUpdateWithoutChildrenInput> +} + +export type TaskUpdateManyWithoutParentNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutParentInput[] | Prisma.TaskUncheckedCreateWithoutParentInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutParentInput | Prisma.TaskCreateOrConnectWithoutParentInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutParentInput | Prisma.TaskUpsertWithWhereUniqueWithoutParentInput[] + createMany?: Prisma.TaskCreateManyParentInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutParentInput | Prisma.TaskUpdateWithWhereUniqueWithoutParentInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutParentInput | Prisma.TaskUpdateManyWithWhereWithoutParentInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskUncheckedUpdateManyWithoutParentNestedInput = { + create?: Prisma.XOR | Prisma.TaskCreateWithoutParentInput[] | Prisma.TaskUncheckedCreateWithoutParentInput[] + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutParentInput | Prisma.TaskCreateOrConnectWithoutParentInput[] + upsert?: Prisma.TaskUpsertWithWhereUniqueWithoutParentInput | Prisma.TaskUpsertWithWhereUniqueWithoutParentInput[] + createMany?: Prisma.TaskCreateManyParentInputEnvelope + set?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + disconnect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + delete?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + connect?: Prisma.TaskWhereUniqueInput | Prisma.TaskWhereUniqueInput[] + update?: Prisma.TaskUpdateWithWhereUniqueWithoutParentInput | Prisma.TaskUpdateWithWhereUniqueWithoutParentInput[] + updateMany?: Prisma.TaskUpdateManyWithWhereWithoutParentInput | Prisma.TaskUpdateManyWithWhereWithoutParentInput[] + deleteMany?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] +} + +export type TaskCreateNestedOneWithoutMembersInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutMembersInput + connect?: Prisma.TaskWhereUniqueInput +} + +export type TaskUpdateOneRequiredWithoutMembersNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutMembersInput + upsert?: Prisma.TaskUpsertWithoutMembersInput + connect?: Prisma.TaskWhereUniqueInput + update?: Prisma.XOR, Prisma.TaskUncheckedUpdateWithoutMembersInput> +} + +export type TaskCreateNestedOneWithoutTagsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutTagsInput + connect?: Prisma.TaskWhereUniqueInput +} + +export type TaskUpdateOneRequiredWithoutTagsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.TaskCreateOrConnectWithoutTagsInput + upsert?: Prisma.TaskUpsertWithoutTagsInput + connect?: Prisma.TaskWhereUniqueInput + update?: Prisma.XOR, Prisma.TaskUncheckedUpdateWithoutTagsInput> +} + +export type TaskCreateWithoutAssigneeInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutAssigneeInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutAssigneeInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskCreateManyAssigneeInputEnvelope = { + data: Prisma.TaskCreateManyAssigneeInput | Prisma.TaskCreateManyAssigneeInput[] + skipDuplicates?: boolean +} + +export type TaskCreateWithoutCreatorInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutCreatorInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutCreatorInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskCreateManyCreatorInputEnvelope = { + data: Prisma.TaskCreateManyCreatorInput | Prisma.TaskCreateManyCreatorInput[] + skipDuplicates?: boolean +} + +export type TaskUpsertWithWhereUniqueWithoutAssigneeInput = { + where: Prisma.TaskWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskUpdateWithWhereUniqueWithoutAssigneeInput = { + where: Prisma.TaskWhereUniqueInput + data: Prisma.XOR +} + +export type TaskUpdateManyWithWhereWithoutAssigneeInput = { + where: Prisma.TaskScalarWhereInput + data: Prisma.XOR +} + +export type TaskScalarWhereInput = { + AND?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] + OR?: Prisma.TaskScalarWhereInput[] + NOT?: Prisma.TaskScalarWhereInput | Prisma.TaskScalarWhereInput[] + id?: Prisma.IntFilter<"Task"> | number + projectId?: Prisma.IntFilter<"Task"> | number + columnId?: Prisma.IntFilter<"Task"> | number + parentId?: Prisma.IntNullableFilter<"Task"> | number | null + title?: Prisma.StringFilter<"Task"> | string + description?: Prisma.StringFilter<"Task"> | string + kind?: Prisma.StringNullableFilter<"Task"> | string | null + markDate?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + status?: Prisma.StringFilter<"Task"> | string + doneAt?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + assigneeId?: Prisma.IntNullableFilter<"Task"> | number | null + creatorId?: Prisma.IntFilter<"Task"> | number + extras?: Prisma.JsonFilter<"Task"> + sortOrder?: Prisma.IntFilter<"Task"> | number + archived?: Prisma.BoolFilter<"Task"> | boolean + archivedAt?: Prisma.DateTimeNullableFilter<"Task"> | Date | string | null + archiveSource?: Prisma.StringNullableFilter<"Task"> | string | null + createdAt?: Prisma.DateTimeFilter<"Task"> | Date | string + updatedAt?: Prisma.DateTimeFilter<"Task"> | Date | string +} + +export type TaskUpsertWithWhereUniqueWithoutCreatorInput = { + where: Prisma.TaskWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskUpdateWithWhereUniqueWithoutCreatorInput = { + where: Prisma.TaskWhereUniqueInput + data: Prisma.XOR +} + +export type TaskUpdateManyWithWhereWithoutCreatorInput = { + where: Prisma.TaskScalarWhereInput + data: Prisma.XOR +} + +export type TaskCreateWithoutProjectInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutProjectInput = { + id?: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutProjectInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskCreateManyProjectInputEnvelope = { + data: Prisma.TaskCreateManyProjectInput | Prisma.TaskCreateManyProjectInput[] + skipDuplicates?: boolean +} + +export type TaskUpsertWithWhereUniqueWithoutProjectInput = { + where: Prisma.TaskWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskUpdateWithWhereUniqueWithoutProjectInput = { + where: Prisma.TaskWhereUniqueInput + data: Prisma.XOR +} + +export type TaskUpdateManyWithWhereWithoutProjectInput = { + where: Prisma.TaskScalarWhereInput + data: Prisma.XOR +} + +export type TaskCreateWithoutColumnInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutColumnInput = { + id?: number + projectId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutColumnInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskCreateManyColumnInputEnvelope = { + data: Prisma.TaskCreateManyColumnInput | Prisma.TaskCreateManyColumnInput[] + skipDuplicates?: boolean +} + +export type TaskUpsertWithWhereUniqueWithoutColumnInput = { + where: Prisma.TaskWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskUpdateWithWhereUniqueWithoutColumnInput = { + where: Prisma.TaskWhereUniqueInput + data: Prisma.XOR +} + +export type TaskUpdateManyWithWhereWithoutColumnInput = { + where: Prisma.TaskScalarWhereInput + data: Prisma.XOR +} + +export type TaskCreateWithoutChildrenInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutChildrenInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutChildrenInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskCreateWithoutParentInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutParentInput = { + id?: number + projectId: number + columnId: number + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutParentInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskCreateManyParentInputEnvelope = { + data: Prisma.TaskCreateManyParentInput | Prisma.TaskCreateManyParentInput[] + skipDuplicates?: boolean +} + +export type TaskUpsertWithoutChildrenInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.TaskWhereInput +} + +export type TaskUpdateToOneWithWhereWithoutChildrenInput = { + where?: Prisma.TaskWhereInput + data: Prisma.XOR +} + +export type TaskUpdateWithoutChildrenInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutChildrenInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskUpsertWithWhereUniqueWithoutParentInput = { + where: Prisma.TaskWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskUpdateWithWhereUniqueWithoutParentInput = { + where: Prisma.TaskWhereUniqueInput + data: Prisma.XOR +} + +export type TaskUpdateManyWithWhereWithoutParentInput = { + where: Prisma.TaskScalarWhereInput + data: Prisma.XOR +} + +export type TaskCreateWithoutMembersInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + tags?: Prisma.TaskTagCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutMembersInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + tags?: Prisma.TaskTagUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutMembersInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskUpsertWithoutMembersInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.TaskWhereInput +} + +export type TaskUpdateToOneWithWhereWithoutMembersInput = { + where?: Prisma.TaskWhereInput + data: Prisma.XOR +} + +export type TaskUpdateWithoutMembersInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutMembersInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskCreateWithoutTagsInput = { + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + project: Prisma.ProjectCreateNestedOneWithoutTasksInput + column: Prisma.BoardColumnCreateNestedOneWithoutTasksInput + parent?: Prisma.TaskCreateNestedOneWithoutChildrenInput + children?: Prisma.TaskCreateNestedManyWithoutParentInput + assignee?: Prisma.UserCreateNestedOneWithoutAssignedTasksInput + creator: Prisma.UserCreateNestedOneWithoutCreatedTasksInput + members?: Prisma.TaskMemberCreateNestedManyWithoutTaskInput +} + +export type TaskUncheckedCreateWithoutTagsInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string + children?: Prisma.TaskUncheckedCreateNestedManyWithoutParentInput + members?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutTaskInput +} + +export type TaskCreateOrConnectWithoutTagsInput = { + where: Prisma.TaskWhereUniqueInput + create: Prisma.XOR +} + +export type TaskUpsertWithoutTagsInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.TaskWhereInput +} + +export type TaskUpdateToOneWithWhereWithoutTagsInput = { + where?: Prisma.TaskWhereInput + data: Prisma.XOR +} + +export type TaskUpdateWithoutTagsInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutTagsInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskCreateManyAssigneeInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string +} + +export type TaskCreateManyCreatorInput = { + id?: number + projectId: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string +} + +export type TaskUpdateWithoutAssigneeInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutAssigneeInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateManyWithoutAssigneeInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type TaskUpdateWithoutCreatorInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutCreatorInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateManyWithoutCreatorInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type TaskCreateManyProjectInput = { + id?: number + columnId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string +} + +export type TaskUpdateWithoutProjectInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutProjectInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateManyWithoutProjectInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type TaskCreateManyColumnInput = { + id?: number + projectId: number + parentId?: number | null + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string +} + +export type TaskUpdateWithoutColumnInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + parent?: Prisma.TaskUpdateOneWithoutChildrenNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutColumnInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateManyWithoutColumnInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + parentId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type TaskCreateManyParentInput = { + id?: number + projectId: number + columnId: number + title: string + description?: string + kind?: string | null + markDate?: Date | string | null + status?: string + doneAt?: Date | string | null + assigneeId?: number | null + creatorId: number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: number + archived?: boolean + archivedAt?: Date | string | null + archiveSource?: string | null + createdAt?: Date | string + updatedAt?: Date | string +} + +export type TaskUpdateWithoutParentInput = { + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + project?: Prisma.ProjectUpdateOneRequiredWithoutTasksNestedInput + column?: Prisma.BoardColumnUpdateOneRequiredWithoutTasksNestedInput + children?: Prisma.TaskUpdateManyWithoutParentNestedInput + assignee?: Prisma.UserUpdateOneWithoutAssignedTasksNestedInput + creator?: Prisma.UserUpdateOneRequiredWithoutCreatedTasksNestedInput + members?: Prisma.TaskMemberUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateWithoutParentInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + children?: Prisma.TaskUncheckedUpdateManyWithoutParentNestedInput + members?: Prisma.TaskMemberUncheckedUpdateManyWithoutTaskNestedInput + tags?: Prisma.TaskTagUncheckedUpdateManyWithoutTaskNestedInput +} + +export type TaskUncheckedUpdateManyWithoutParentInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + projectId?: Prisma.IntFieldUpdateOperationsInput | number + columnId?: Prisma.IntFieldUpdateOperationsInput | number + title?: Prisma.StringFieldUpdateOperationsInput | string + description?: Prisma.StringFieldUpdateOperationsInput | string + kind?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + markDate?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + status?: Prisma.StringFieldUpdateOperationsInput | string + doneAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + assigneeId?: Prisma.NullableIntFieldUpdateOperationsInput | number | null + creatorId?: Prisma.IntFieldUpdateOperationsInput | number + extras?: Prisma.JsonNullValueInput | runtime.InputJsonValue + sortOrder?: Prisma.IntFieldUpdateOperationsInput | number + archived?: Prisma.BoolFieldUpdateOperationsInput | boolean + archivedAt?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + archiveSource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + + +/** + * Count Type TaskCountOutputType + */ + +export type TaskCountOutputType = { + children: number + members: number + tags: number +} + +export type TaskCountOutputTypeSelect = { + children?: boolean | TaskCountOutputTypeCountChildrenArgs + members?: boolean | TaskCountOutputTypeCountMembersArgs + tags?: boolean | TaskCountOutputTypeCountTagsArgs +} + +/** + * TaskCountOutputType without action + */ +export type TaskCountOutputTypeDefaultArgs = { + /** + * Select specific fields to fetch from the TaskCountOutputType + */ + select?: Prisma.TaskCountOutputTypeSelect | null +} + +/** + * TaskCountOutputType without action + */ +export type TaskCountOutputTypeCountChildrenArgs = { + where?: Prisma.TaskWhereInput +} + +/** + * TaskCountOutputType without action + */ +export type TaskCountOutputTypeCountMembersArgs = { + where?: Prisma.TaskMemberWhereInput +} + +/** + * TaskCountOutputType without action + */ +export type TaskCountOutputTypeCountTagsArgs = { + where?: Prisma.TaskTagWhereInput +} + + +export type TaskSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + projectId?: boolean + columnId?: boolean + parentId?: boolean + title?: boolean + description?: boolean + kind?: boolean + markDate?: boolean + status?: boolean + doneAt?: boolean + assigneeId?: boolean + creatorId?: boolean + extras?: boolean + sortOrder?: boolean + archived?: boolean + archivedAt?: boolean + archiveSource?: boolean + createdAt?: boolean + updatedAt?: boolean + project?: boolean | Prisma.ProjectDefaultArgs + column?: boolean | Prisma.BoardColumnDefaultArgs + parent?: boolean | Prisma.Task$parentArgs + children?: boolean | Prisma.Task$childrenArgs + assignee?: boolean | Prisma.Task$assigneeArgs + creator?: boolean | Prisma.UserDefaultArgs + members?: boolean | Prisma.Task$membersArgs + tags?: boolean | Prisma.Task$tagsArgs + _count?: boolean | Prisma.TaskCountOutputTypeDefaultArgs +}, ExtArgs["result"]["task"]> + + + +export type TaskSelectScalar = { + id?: boolean + projectId?: boolean + columnId?: boolean + parentId?: boolean + title?: boolean + description?: boolean + kind?: boolean + markDate?: boolean + status?: boolean + doneAt?: boolean + assigneeId?: boolean + creatorId?: boolean + extras?: boolean + sortOrder?: boolean + archived?: boolean + archivedAt?: boolean + archiveSource?: boolean + createdAt?: boolean + updatedAt?: boolean +} + +export type TaskOmit = runtime.Types.Extensions.GetOmit<"id" | "projectId" | "columnId" | "parentId" | "title" | "description" | "kind" | "markDate" | "status" | "doneAt" | "assigneeId" | "creatorId" | "extras" | "sortOrder" | "archived" | "archivedAt" | "archiveSource" | "createdAt" | "updatedAt", ExtArgs["result"]["task"]> +export type TaskInclude = { + project?: boolean | Prisma.ProjectDefaultArgs + column?: boolean | Prisma.BoardColumnDefaultArgs + parent?: boolean | Prisma.Task$parentArgs + children?: boolean | Prisma.Task$childrenArgs + assignee?: boolean | Prisma.Task$assigneeArgs + creator?: boolean | Prisma.UserDefaultArgs + members?: boolean | Prisma.Task$membersArgs + tags?: boolean | Prisma.Task$tagsArgs + _count?: boolean | Prisma.TaskCountOutputTypeDefaultArgs +} + +export type $TaskPayload = { + name: "Task" + objects: { + project: Prisma.$ProjectPayload + column: Prisma.$BoardColumnPayload + parent: Prisma.$TaskPayload | null + children: Prisma.$TaskPayload[] + assignee: Prisma.$UserPayload | null + creator: Prisma.$UserPayload + members: Prisma.$TaskMemberPayload[] + tags: Prisma.$TaskTagPayload[] + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: number + projectId: number + columnId: number + parentId: number | null + title: string + description: string + kind: string | null + markDate: Date | null + status: string + doneAt: Date | null + assigneeId: number | null + creatorId: number + extras: runtime.JsonValue + sortOrder: number + archived: boolean + archivedAt: Date | null + archiveSource: string | null + createdAt: Date + updatedAt: Date + }, ExtArgs["result"]["task"]> + composites: {} +} + +export type TaskGetPayload = runtime.Types.Result.GetResult + +export type TaskCountArgs = + Omit & { + select?: TaskCountAggregateInputType | true + } + +export interface TaskDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['Task'], meta: { name: 'Task' } } + /** + * Find zero or one Task that matches the filter. + * @param {TaskFindUniqueArgs} args - Arguments to find a Task + * @example + * // Get one Task + * const task = await prisma.task.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one Task that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {TaskFindUniqueOrThrowArgs} args - Arguments to find a Task + * @example + * // Get one Task + * const task = await prisma.task.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Task 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 {TaskFindFirstArgs} args - Arguments to find a Task + * @example + * // Get one Task + * const task = await prisma.task.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first Task 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 {TaskFindFirstOrThrowArgs} args - Arguments to find a Task + * @example + * // Get one Task + * const task = await prisma.task.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more Tasks 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 {TaskFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all Tasks + * const tasks = await prisma.task.findMany() + * + * // Get first 10 Tasks + * const tasks = await prisma.task.findMany({ take: 10 }) + * + * // Only select the `id` + * const taskWithIdOnly = await prisma.task.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a Task. + * @param {TaskCreateArgs} args - Arguments to create a Task. + * @example + * // Create one Task + * const Task = await prisma.task.create({ + * data: { + * // ... data to create a Task + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many Tasks. + * @param {TaskCreateManyArgs} args - Arguments to create many Tasks. + * @example + * // Create many Tasks + * const task = await prisma.task.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a Task. + * @param {TaskDeleteArgs} args - Arguments to delete one Task. + * @example + * // Delete one Task + * const Task = await prisma.task.delete({ + * where: { + * // ... filter to delete one Task + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one Task. + * @param {TaskUpdateArgs} args - Arguments to update one Task. + * @example + * // Update one Task + * const task = await prisma.task.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more Tasks. + * @param {TaskDeleteManyArgs} args - Arguments to filter Tasks to delete. + * @example + * // Delete a few Tasks + * const { count } = await prisma.task.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more Tasks. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many Tasks + * const task = await prisma.task.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one Task. + * @param {TaskUpsertArgs} args - Arguments to update or create a Task. + * @example + * // Update or create a Task + * const task = await prisma.task.upsert({ + * create: { + * // ... data to create a Task + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the Task we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__TaskClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of Tasks. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskCountArgs} args - Arguments to filter Tasks to count. + * @example + * // Count the number of Tasks + * const count = await prisma.task.count({ + * where: { + * // ... the filter for the Tasks we want to count + * } + * }) + **/ + count( + args?: Prisma.Subset, + ): Prisma.PrismaPromise< + T extends runtime.Types.Utils.Record<'select', any> + ? T['select'] extends true + ? number + : Prisma.GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a Task. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskAggregateArgs} 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: Prisma.Subset): Prisma.PrismaPromise> + + /** + * Group by Task. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskGroupByArgs} 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 TaskGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: TaskGroupByArgs['orderBy'] } + : { orderBy?: TaskGroupByArgs['orderBy'] }, + OrderFields extends Prisma.ExcludeUnderscoreKeys>>, + ByFields extends Prisma.MaybeTupleToUnion, + ByValid extends Prisma.Has, + HavingFields extends Prisma.GetHavingFields, + HavingValid extends Prisma.Has, + ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, + InputErrors extends ByEmpty extends Prisma.True + ? `Error: "by" must not be empty.` + : HavingValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetTaskGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the Task model + */ +readonly fields: TaskFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for Task. + * 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__TaskClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + project = {}>(args?: Prisma.Subset>): Prisma.Prisma__ProjectClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + column = {}>(args?: Prisma.Subset>): Prisma.Prisma__BoardColumnClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + parent = {}>(args?: Prisma.Subset>): Prisma.Prisma__TaskClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + children = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + assignee = {}>(args?: Prisma.Subset>): Prisma.Prisma__UserClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + creator = {}>(args?: Prisma.Subset>): Prisma.Prisma__UserClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + members = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + tags = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, 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): runtime.Types.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): runtime.Types.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): runtime.Types.Utils.JsPromise +} + + + + +/** + * Fields of the Task model + */ +export interface TaskFieldRefs { + readonly id: Prisma.FieldRef<"Task", 'Int'> + readonly projectId: Prisma.FieldRef<"Task", 'Int'> + readonly columnId: Prisma.FieldRef<"Task", 'Int'> + readonly parentId: Prisma.FieldRef<"Task", 'Int'> + readonly title: Prisma.FieldRef<"Task", 'String'> + readonly description: Prisma.FieldRef<"Task", 'String'> + readonly kind: Prisma.FieldRef<"Task", 'String'> + readonly markDate: Prisma.FieldRef<"Task", 'DateTime'> + readonly status: Prisma.FieldRef<"Task", 'String'> + readonly doneAt: Prisma.FieldRef<"Task", 'DateTime'> + readonly assigneeId: Prisma.FieldRef<"Task", 'Int'> + readonly creatorId: Prisma.FieldRef<"Task", 'Int'> + readonly extras: Prisma.FieldRef<"Task", 'Json'> + readonly sortOrder: Prisma.FieldRef<"Task", 'Int'> + readonly archived: Prisma.FieldRef<"Task", 'Boolean'> + readonly archivedAt: Prisma.FieldRef<"Task", 'DateTime'> + readonly archiveSource: Prisma.FieldRef<"Task", 'String'> + readonly createdAt: Prisma.FieldRef<"Task", 'DateTime'> + readonly updatedAt: Prisma.FieldRef<"Task", 'DateTime'> +} + + +// Custom InputTypes +/** + * Task findUnique + */ +export type TaskFindUniqueArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * Filter, which Task to fetch. + */ + where: Prisma.TaskWhereUniqueInput +} + +/** + * Task findUniqueOrThrow + */ +export type TaskFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * Filter, which Task to fetch. + */ + where: Prisma.TaskWhereUniqueInput +} + +/** + * Task findFirst + */ +export type TaskFindFirstArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * Filter, which Task to fetch. + */ + where?: Prisma.TaskWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Tasks to fetch. + */ + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Tasks. + */ + cursor?: Prisma.TaskWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Tasks 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` Tasks. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Tasks. + */ + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * Task findFirstOrThrow + */ +export type TaskFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * Filter, which Task to fetch. + */ + where?: Prisma.TaskWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Tasks to fetch. + */ + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for Tasks. + */ + cursor?: Prisma.TaskWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Tasks 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` Tasks. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Tasks. + */ + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * Task findMany + */ +export type TaskFindManyArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * Filter, which Tasks to fetch. + */ + where?: Prisma.TaskWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of Tasks to fetch. + */ + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing Tasks. + */ + cursor?: Prisma.TaskWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` Tasks 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` Tasks. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of Tasks. + */ + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * Task create + */ +export type TaskCreateArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * The data needed to create a Task. + */ + data: Prisma.XOR +} + +/** + * Task createMany + */ +export type TaskCreateManyArgs = { + /** + * The data used to create many Tasks. + */ + data: Prisma.TaskCreateManyInput | Prisma.TaskCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * Task update + */ +export type TaskUpdateArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * The data needed to update a Task. + */ + data: Prisma.XOR + /** + * Choose, which Task to update. + */ + where: Prisma.TaskWhereUniqueInput +} + +/** + * Task updateMany + */ +export type TaskUpdateManyArgs = { + /** + * The data used to update Tasks. + */ + data: Prisma.XOR + /** + * Filter which Tasks to update + */ + where?: Prisma.TaskWhereInput + /** + * Limit how many Tasks to update. + */ + limit?: number +} + +/** + * Task upsert + */ +export type TaskUpsertArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * The filter to search for the Task to update in case it exists. + */ + where: Prisma.TaskWhereUniqueInput + /** + * In case the Task found by the `where` argument doesn't exist, create a new Task with this data. + */ + create: Prisma.XOR + /** + * In case the Task was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * Task delete + */ +export type TaskDeleteArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + /** + * Filter which Task to delete. + */ + where: Prisma.TaskWhereUniqueInput +} + +/** + * Task deleteMany + */ +export type TaskDeleteManyArgs = { + /** + * Filter which Tasks to delete + */ + where?: Prisma.TaskWhereInput + /** + * Limit how many Tasks to delete. + */ + limit?: number +} + +/** + * Task.parent + */ +export type Task$parentArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + where?: Prisma.TaskWhereInput +} + +/** + * Task.children + */ +export type Task$childrenArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + where?: Prisma.TaskWhereInput + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + cursor?: Prisma.TaskWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * Task.assignee + */ +export type Task$assigneeArgs = { + /** + * Select specific fields to fetch from the User + */ + select?: Prisma.UserSelect | null + /** + * Omit specific fields from the User + */ + omit?: Prisma.UserOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.UserInclude | null + where?: Prisma.UserWhereInput +} + +/** + * Task.members + */ +export type Task$membersArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + where?: Prisma.TaskMemberWhereInput + orderBy?: Prisma.TaskMemberOrderByWithRelationInput | Prisma.TaskMemberOrderByWithRelationInput[] + cursor?: Prisma.TaskMemberWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskMemberScalarFieldEnum | Prisma.TaskMemberScalarFieldEnum[] +} + +/** + * Task.tags + */ +export type Task$tagsArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + where?: Prisma.TaskTagWhereInput + orderBy?: Prisma.TaskTagOrderByWithRelationInput | Prisma.TaskTagOrderByWithRelationInput[] + cursor?: Prisma.TaskTagWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskTagScalarFieldEnum | Prisma.TaskTagScalarFieldEnum[] +} + +/** + * Task without action + */ +export type TaskDefaultArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null +} diff --git a/generated/prisma/models/TaskMember.ts b/generated/prisma/models/TaskMember.ts new file mode 100644 index 0000000..59cd8da --- /dev/null +++ b/generated/prisma/models/TaskMember.ts @@ -0,0 +1,1310 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `TaskMember` model and its related types. + * + * 🟢 You can import this file directly. + */ +import type * as runtime from "@prisma/client/runtime/client" +import type * as $Enums from "../enums.ts" +import type * as Prisma from "../internal/prismaNamespace.ts" + +/** + * Model TaskMember + * + */ +export type TaskMemberModel = runtime.Types.Result.DefaultSelection + +export type AggregateTaskMember = { + _count: TaskMemberCountAggregateOutputType | null + _avg: TaskMemberAvgAggregateOutputType | null + _sum: TaskMemberSumAggregateOutputType | null + _min: TaskMemberMinAggregateOutputType | null + _max: TaskMemberMaxAggregateOutputType | null +} + +export type TaskMemberAvgAggregateOutputType = { + id: number | null + taskId: number | null + userId: number | null +} + +export type TaskMemberSumAggregateOutputType = { + id: number | null + taskId: number | null + userId: number | null +} + +export type TaskMemberMinAggregateOutputType = { + id: number | null + taskId: number | null + userId: number | null +} + +export type TaskMemberMaxAggregateOutputType = { + id: number | null + taskId: number | null + userId: number | null +} + +export type TaskMemberCountAggregateOutputType = { + id: number + taskId: number + userId: number + _all: number +} + + +export type TaskMemberAvgAggregateInputType = { + id?: true + taskId?: true + userId?: true +} + +export type TaskMemberSumAggregateInputType = { + id?: true + taskId?: true + userId?: true +} + +export type TaskMemberMinAggregateInputType = { + id?: true + taskId?: true + userId?: true +} + +export type TaskMemberMaxAggregateInputType = { + id?: true + taskId?: true + userId?: true +} + +export type TaskMemberCountAggregateInputType = { + id?: true + taskId?: true + userId?: true + _all?: true +} + +export type TaskMemberAggregateArgs = { + /** + * Filter which TaskMember to aggregate. + */ + where?: Prisma.TaskMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskMembers to fetch. + */ + orderBy?: Prisma.TaskMemberOrderByWithRelationInput | Prisma.TaskMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.TaskMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskMembers 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` TaskMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned TaskMembers + **/ + _count?: true | TaskMemberCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: TaskMemberAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: TaskMemberSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: TaskMemberMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: TaskMemberMaxAggregateInputType +} + +export type GetTaskMemberAggregateType = { + [P in keyof T & keyof AggregateTaskMember]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type TaskMemberGroupByArgs = { + where?: Prisma.TaskMemberWhereInput + orderBy?: Prisma.TaskMemberOrderByWithAggregationInput | Prisma.TaskMemberOrderByWithAggregationInput[] + by: Prisma.TaskMemberScalarFieldEnum[] | Prisma.TaskMemberScalarFieldEnum + having?: Prisma.TaskMemberScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: TaskMemberCountAggregateInputType | true + _avg?: TaskMemberAvgAggregateInputType + _sum?: TaskMemberSumAggregateInputType + _min?: TaskMemberMinAggregateInputType + _max?: TaskMemberMaxAggregateInputType +} + +export type TaskMemberGroupByOutputType = { + id: number + taskId: number + userId: number + _count: TaskMemberCountAggregateOutputType | null + _avg: TaskMemberAvgAggregateOutputType | null + _sum: TaskMemberSumAggregateOutputType | null + _min: TaskMemberMinAggregateOutputType | null + _max: TaskMemberMaxAggregateOutputType | null +} + +export type GetTaskMemberGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof TaskMemberGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type TaskMemberWhereInput = { + AND?: Prisma.TaskMemberWhereInput | Prisma.TaskMemberWhereInput[] + OR?: Prisma.TaskMemberWhereInput[] + NOT?: Prisma.TaskMemberWhereInput | Prisma.TaskMemberWhereInput[] + id?: Prisma.IntFilter<"TaskMember"> | number + taskId?: Prisma.IntFilter<"TaskMember"> | number + userId?: Prisma.IntFilter<"TaskMember"> | number + task?: Prisma.XOR + user?: Prisma.XOR +} + +export type TaskMemberOrderByWithRelationInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder + task?: Prisma.TaskOrderByWithRelationInput + user?: Prisma.UserOrderByWithRelationInput +} + +export type TaskMemberWhereUniqueInput = Prisma.AtLeast<{ + id?: number + taskId_userId?: Prisma.TaskMemberTaskIdUserIdCompoundUniqueInput + AND?: Prisma.TaskMemberWhereInput | Prisma.TaskMemberWhereInput[] + OR?: Prisma.TaskMemberWhereInput[] + NOT?: Prisma.TaskMemberWhereInput | Prisma.TaskMemberWhereInput[] + taskId?: Prisma.IntFilter<"TaskMember"> | number + userId?: Prisma.IntFilter<"TaskMember"> | number + task?: Prisma.XOR + user?: Prisma.XOR +}, "id" | "taskId_userId"> + +export type TaskMemberOrderByWithAggregationInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder + _count?: Prisma.TaskMemberCountOrderByAggregateInput + _avg?: Prisma.TaskMemberAvgOrderByAggregateInput + _max?: Prisma.TaskMemberMaxOrderByAggregateInput + _min?: Prisma.TaskMemberMinOrderByAggregateInput + _sum?: Prisma.TaskMemberSumOrderByAggregateInput +} + +export type TaskMemberScalarWhereWithAggregatesInput = { + AND?: Prisma.TaskMemberScalarWhereWithAggregatesInput | Prisma.TaskMemberScalarWhereWithAggregatesInput[] + OR?: Prisma.TaskMemberScalarWhereWithAggregatesInput[] + NOT?: Prisma.TaskMemberScalarWhereWithAggregatesInput | Prisma.TaskMemberScalarWhereWithAggregatesInput[] + id?: Prisma.IntWithAggregatesFilter<"TaskMember"> | number + taskId?: Prisma.IntWithAggregatesFilter<"TaskMember"> | number + userId?: Prisma.IntWithAggregatesFilter<"TaskMember"> | number +} + +export type TaskMemberCreateInput = { + task: Prisma.TaskCreateNestedOneWithoutMembersInput + user: Prisma.UserCreateNestedOneWithoutTaskMembersInput +} + +export type TaskMemberUncheckedCreateInput = { + id?: number + taskId: number + userId: number +} + +export type TaskMemberUpdateInput = { + task?: Prisma.TaskUpdateOneRequiredWithoutMembersNestedInput + user?: Prisma.UserUpdateOneRequiredWithoutTaskMembersNestedInput +} + +export type TaskMemberUncheckedUpdateInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + taskId?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number +} + +export type TaskMemberCreateManyInput = { + id?: number + taskId: number + userId: number +} + +export type TaskMemberUpdateManyMutationInput = { + +} + +export type TaskMemberUncheckedUpdateManyInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + taskId?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number +} + +export type TaskMemberListRelationFilter = { + every?: Prisma.TaskMemberWhereInput + some?: Prisma.TaskMemberWhereInput + none?: Prisma.TaskMemberWhereInput +} + +export type TaskMemberOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type TaskMemberTaskIdUserIdCompoundUniqueInput = { + taskId: number + userId: number +} + +export type TaskMemberCountOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type TaskMemberAvgOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type TaskMemberMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type TaskMemberMinOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type TaskMemberSumOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + userId?: Prisma.SortOrder +} + +export type TaskMemberCreateNestedManyWithoutUserInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutUserInput[] | Prisma.TaskMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutUserInput | Prisma.TaskMemberCreateOrConnectWithoutUserInput[] + createMany?: Prisma.TaskMemberCreateManyUserInputEnvelope + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] +} + +export type TaskMemberUncheckedCreateNestedManyWithoutUserInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutUserInput[] | Prisma.TaskMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutUserInput | Prisma.TaskMemberCreateOrConnectWithoutUserInput[] + createMany?: Prisma.TaskMemberCreateManyUserInputEnvelope + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] +} + +export type TaskMemberUpdateManyWithoutUserNestedInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutUserInput[] | Prisma.TaskMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutUserInput | Prisma.TaskMemberCreateOrConnectWithoutUserInput[] + upsert?: Prisma.TaskMemberUpsertWithWhereUniqueWithoutUserInput | Prisma.TaskMemberUpsertWithWhereUniqueWithoutUserInput[] + createMany?: Prisma.TaskMemberCreateManyUserInputEnvelope + set?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + disconnect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + delete?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + update?: Prisma.TaskMemberUpdateWithWhereUniqueWithoutUserInput | Prisma.TaskMemberUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: Prisma.TaskMemberUpdateManyWithWhereWithoutUserInput | Prisma.TaskMemberUpdateManyWithWhereWithoutUserInput[] + deleteMany?: Prisma.TaskMemberScalarWhereInput | Prisma.TaskMemberScalarWhereInput[] +} + +export type TaskMemberUncheckedUpdateManyWithoutUserNestedInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutUserInput[] | Prisma.TaskMemberUncheckedCreateWithoutUserInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutUserInput | Prisma.TaskMemberCreateOrConnectWithoutUserInput[] + upsert?: Prisma.TaskMemberUpsertWithWhereUniqueWithoutUserInput | Prisma.TaskMemberUpsertWithWhereUniqueWithoutUserInput[] + createMany?: Prisma.TaskMemberCreateManyUserInputEnvelope + set?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + disconnect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + delete?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + update?: Prisma.TaskMemberUpdateWithWhereUniqueWithoutUserInput | Prisma.TaskMemberUpdateWithWhereUniqueWithoutUserInput[] + updateMany?: Prisma.TaskMemberUpdateManyWithWhereWithoutUserInput | Prisma.TaskMemberUpdateManyWithWhereWithoutUserInput[] + deleteMany?: Prisma.TaskMemberScalarWhereInput | Prisma.TaskMemberScalarWhereInput[] +} + +export type TaskMemberCreateNestedManyWithoutTaskInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutTaskInput[] | Prisma.TaskMemberUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutTaskInput | Prisma.TaskMemberCreateOrConnectWithoutTaskInput[] + createMany?: Prisma.TaskMemberCreateManyTaskInputEnvelope + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] +} + +export type TaskMemberUncheckedCreateNestedManyWithoutTaskInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutTaskInput[] | Prisma.TaskMemberUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutTaskInput | Prisma.TaskMemberCreateOrConnectWithoutTaskInput[] + createMany?: Prisma.TaskMemberCreateManyTaskInputEnvelope + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] +} + +export type TaskMemberUpdateManyWithoutTaskNestedInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutTaskInput[] | Prisma.TaskMemberUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutTaskInput | Prisma.TaskMemberCreateOrConnectWithoutTaskInput[] + upsert?: Prisma.TaskMemberUpsertWithWhereUniqueWithoutTaskInput | Prisma.TaskMemberUpsertWithWhereUniqueWithoutTaskInput[] + createMany?: Prisma.TaskMemberCreateManyTaskInputEnvelope + set?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + disconnect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + delete?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + update?: Prisma.TaskMemberUpdateWithWhereUniqueWithoutTaskInput | Prisma.TaskMemberUpdateWithWhereUniqueWithoutTaskInput[] + updateMany?: Prisma.TaskMemberUpdateManyWithWhereWithoutTaskInput | Prisma.TaskMemberUpdateManyWithWhereWithoutTaskInput[] + deleteMany?: Prisma.TaskMemberScalarWhereInput | Prisma.TaskMemberScalarWhereInput[] +} + +export type TaskMemberUncheckedUpdateManyWithoutTaskNestedInput = { + create?: Prisma.XOR | Prisma.TaskMemberCreateWithoutTaskInput[] | Prisma.TaskMemberUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskMemberCreateOrConnectWithoutTaskInput | Prisma.TaskMemberCreateOrConnectWithoutTaskInput[] + upsert?: Prisma.TaskMemberUpsertWithWhereUniqueWithoutTaskInput | Prisma.TaskMemberUpsertWithWhereUniqueWithoutTaskInput[] + createMany?: Prisma.TaskMemberCreateManyTaskInputEnvelope + set?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + disconnect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + delete?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + connect?: Prisma.TaskMemberWhereUniqueInput | Prisma.TaskMemberWhereUniqueInput[] + update?: Prisma.TaskMemberUpdateWithWhereUniqueWithoutTaskInput | Prisma.TaskMemberUpdateWithWhereUniqueWithoutTaskInput[] + updateMany?: Prisma.TaskMemberUpdateManyWithWhereWithoutTaskInput | Prisma.TaskMemberUpdateManyWithWhereWithoutTaskInput[] + deleteMany?: Prisma.TaskMemberScalarWhereInput | Prisma.TaskMemberScalarWhereInput[] +} + +export type TaskMemberCreateWithoutUserInput = { + task: Prisma.TaskCreateNestedOneWithoutMembersInput +} + +export type TaskMemberUncheckedCreateWithoutUserInput = { + id?: number + taskId: number +} + +export type TaskMemberCreateOrConnectWithoutUserInput = { + where: Prisma.TaskMemberWhereUniqueInput + create: Prisma.XOR +} + +export type TaskMemberCreateManyUserInputEnvelope = { + data: Prisma.TaskMemberCreateManyUserInput | Prisma.TaskMemberCreateManyUserInput[] + skipDuplicates?: boolean +} + +export type TaskMemberUpsertWithWhereUniqueWithoutUserInput = { + where: Prisma.TaskMemberWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskMemberUpdateWithWhereUniqueWithoutUserInput = { + where: Prisma.TaskMemberWhereUniqueInput + data: Prisma.XOR +} + +export type TaskMemberUpdateManyWithWhereWithoutUserInput = { + where: Prisma.TaskMemberScalarWhereInput + data: Prisma.XOR +} + +export type TaskMemberScalarWhereInput = { + AND?: Prisma.TaskMemberScalarWhereInput | Prisma.TaskMemberScalarWhereInput[] + OR?: Prisma.TaskMemberScalarWhereInput[] + NOT?: Prisma.TaskMemberScalarWhereInput | Prisma.TaskMemberScalarWhereInput[] + id?: Prisma.IntFilter<"TaskMember"> | number + taskId?: Prisma.IntFilter<"TaskMember"> | number + userId?: Prisma.IntFilter<"TaskMember"> | number +} + +export type TaskMemberCreateWithoutTaskInput = { + user: Prisma.UserCreateNestedOneWithoutTaskMembersInput +} + +export type TaskMemberUncheckedCreateWithoutTaskInput = { + id?: number + userId: number +} + +export type TaskMemberCreateOrConnectWithoutTaskInput = { + where: Prisma.TaskMemberWhereUniqueInput + create: Prisma.XOR +} + +export type TaskMemberCreateManyTaskInputEnvelope = { + data: Prisma.TaskMemberCreateManyTaskInput | Prisma.TaskMemberCreateManyTaskInput[] + skipDuplicates?: boolean +} + +export type TaskMemberUpsertWithWhereUniqueWithoutTaskInput = { + where: Prisma.TaskMemberWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskMemberUpdateWithWhereUniqueWithoutTaskInput = { + where: Prisma.TaskMemberWhereUniqueInput + data: Prisma.XOR +} + +export type TaskMemberUpdateManyWithWhereWithoutTaskInput = { + where: Prisma.TaskMemberScalarWhereInput + data: Prisma.XOR +} + +export type TaskMemberCreateManyUserInput = { + id?: number + taskId: number +} + +export type TaskMemberUpdateWithoutUserInput = { + task?: Prisma.TaskUpdateOneRequiredWithoutMembersNestedInput +} + +export type TaskMemberUncheckedUpdateWithoutUserInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + taskId?: Prisma.IntFieldUpdateOperationsInput | number +} + +export type TaskMemberUncheckedUpdateManyWithoutUserInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + taskId?: Prisma.IntFieldUpdateOperationsInput | number +} + +export type TaskMemberCreateManyTaskInput = { + id?: number + userId: number +} + +export type TaskMemberUpdateWithoutTaskInput = { + user?: Prisma.UserUpdateOneRequiredWithoutTaskMembersNestedInput +} + +export type TaskMemberUncheckedUpdateWithoutTaskInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number +} + +export type TaskMemberUncheckedUpdateManyWithoutTaskInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + userId?: Prisma.IntFieldUpdateOperationsInput | number +} + + + +export type TaskMemberSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + taskId?: boolean + userId?: boolean + task?: boolean | Prisma.TaskDefaultArgs + user?: boolean | Prisma.UserDefaultArgs +}, ExtArgs["result"]["taskMember"]> + + + +export type TaskMemberSelectScalar = { + id?: boolean + taskId?: boolean + userId?: boolean +} + +export type TaskMemberOmit = runtime.Types.Extensions.GetOmit<"id" | "taskId" | "userId", ExtArgs["result"]["taskMember"]> +export type TaskMemberInclude = { + task?: boolean | Prisma.TaskDefaultArgs + user?: boolean | Prisma.UserDefaultArgs +} + +export type $TaskMemberPayload = { + name: "TaskMember" + objects: { + task: Prisma.$TaskPayload + user: Prisma.$UserPayload + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: number + taskId: number + userId: number + }, ExtArgs["result"]["taskMember"]> + composites: {} +} + +export type TaskMemberGetPayload = runtime.Types.Result.GetResult + +export type TaskMemberCountArgs = + Omit & { + select?: TaskMemberCountAggregateInputType | true + } + +export interface TaskMemberDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['TaskMember'], meta: { name: 'TaskMember' } } + /** + * Find zero or one TaskMember that matches the filter. + * @param {TaskMemberFindUniqueArgs} args - Arguments to find a TaskMember + * @example + * // Get one TaskMember + * const taskMember = await prisma.taskMember.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one TaskMember that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {TaskMemberFindUniqueOrThrowArgs} args - Arguments to find a TaskMember + * @example + * // Get one TaskMember + * const taskMember = await prisma.taskMember.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first TaskMember 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 {TaskMemberFindFirstArgs} args - Arguments to find a TaskMember + * @example + * // Get one TaskMember + * const taskMember = await prisma.taskMember.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first TaskMember 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 {TaskMemberFindFirstOrThrowArgs} args - Arguments to find a TaskMember + * @example + * // Get one TaskMember + * const taskMember = await prisma.taskMember.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more TaskMembers 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 {TaskMemberFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all TaskMembers + * const taskMembers = await prisma.taskMember.findMany() + * + * // Get first 10 TaskMembers + * const taskMembers = await prisma.taskMember.findMany({ take: 10 }) + * + * // Only select the `id` + * const taskMemberWithIdOnly = await prisma.taskMember.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a TaskMember. + * @param {TaskMemberCreateArgs} args - Arguments to create a TaskMember. + * @example + * // Create one TaskMember + * const TaskMember = await prisma.taskMember.create({ + * data: { + * // ... data to create a TaskMember + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many TaskMembers. + * @param {TaskMemberCreateManyArgs} args - Arguments to create many TaskMembers. + * @example + * // Create many TaskMembers + * const taskMember = await prisma.taskMember.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a TaskMember. + * @param {TaskMemberDeleteArgs} args - Arguments to delete one TaskMember. + * @example + * // Delete one TaskMember + * const TaskMember = await prisma.taskMember.delete({ + * where: { + * // ... filter to delete one TaskMember + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one TaskMember. + * @param {TaskMemberUpdateArgs} args - Arguments to update one TaskMember. + * @example + * // Update one TaskMember + * const taskMember = await prisma.taskMember.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more TaskMembers. + * @param {TaskMemberDeleteManyArgs} args - Arguments to filter TaskMembers to delete. + * @example + * // Delete a few TaskMembers + * const { count } = await prisma.taskMember.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more TaskMembers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskMemberUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many TaskMembers + * const taskMember = await prisma.taskMember.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one TaskMember. + * @param {TaskMemberUpsertArgs} args - Arguments to update or create a TaskMember. + * @example + * // Update or create a TaskMember + * const taskMember = await prisma.taskMember.upsert({ + * create: { + * // ... data to create a TaskMember + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the TaskMember we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__TaskMemberClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of TaskMembers. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskMemberCountArgs} args - Arguments to filter TaskMembers to count. + * @example + * // Count the number of TaskMembers + * const count = await prisma.taskMember.count({ + * where: { + * // ... the filter for the TaskMembers we want to count + * } + * }) + **/ + count( + args?: Prisma.Subset, + ): Prisma.PrismaPromise< + T extends runtime.Types.Utils.Record<'select', any> + ? T['select'] extends true + ? number + : Prisma.GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a TaskMember. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskMemberAggregateArgs} 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: Prisma.Subset): Prisma.PrismaPromise> + + /** + * Group by TaskMember. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskMemberGroupByArgs} 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 TaskMemberGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: TaskMemberGroupByArgs['orderBy'] } + : { orderBy?: TaskMemberGroupByArgs['orderBy'] }, + OrderFields extends Prisma.ExcludeUnderscoreKeys>>, + ByFields extends Prisma.MaybeTupleToUnion, + ByValid extends Prisma.Has, + HavingFields extends Prisma.GetHavingFields, + HavingValid extends Prisma.Has, + ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, + InputErrors extends ByEmpty extends Prisma.True + ? `Error: "by" must not be empty.` + : HavingValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetTaskMemberGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the TaskMember model + */ +readonly fields: TaskMemberFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for TaskMember. + * 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__TaskMemberClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + task = {}>(args?: Prisma.Subset>): Prisma.Prisma__TaskClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + user = {}>(args?: Prisma.Subset>): Prisma.Prisma__UserClient, 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): runtime.Types.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): runtime.Types.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): runtime.Types.Utils.JsPromise +} + + + + +/** + * Fields of the TaskMember model + */ +export interface TaskMemberFieldRefs { + readonly id: Prisma.FieldRef<"TaskMember", 'Int'> + readonly taskId: Prisma.FieldRef<"TaskMember", 'Int'> + readonly userId: Prisma.FieldRef<"TaskMember", 'Int'> +} + + +// Custom InputTypes +/** + * TaskMember findUnique + */ +export type TaskMemberFindUniqueArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * Filter, which TaskMember to fetch. + */ + where: Prisma.TaskMemberWhereUniqueInput +} + +/** + * TaskMember findUniqueOrThrow + */ +export type TaskMemberFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * Filter, which TaskMember to fetch. + */ + where: Prisma.TaskMemberWhereUniqueInput +} + +/** + * TaskMember findFirst + */ +export type TaskMemberFindFirstArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * Filter, which TaskMember to fetch. + */ + where?: Prisma.TaskMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskMembers to fetch. + */ + orderBy?: Prisma.TaskMemberOrderByWithRelationInput | Prisma.TaskMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for TaskMembers. + */ + cursor?: Prisma.TaskMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskMembers 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` TaskMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of TaskMembers. + */ + distinct?: Prisma.TaskMemberScalarFieldEnum | Prisma.TaskMemberScalarFieldEnum[] +} + +/** + * TaskMember findFirstOrThrow + */ +export type TaskMemberFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * Filter, which TaskMember to fetch. + */ + where?: Prisma.TaskMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskMembers to fetch. + */ + orderBy?: Prisma.TaskMemberOrderByWithRelationInput | Prisma.TaskMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for TaskMembers. + */ + cursor?: Prisma.TaskMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskMembers 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` TaskMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of TaskMembers. + */ + distinct?: Prisma.TaskMemberScalarFieldEnum | Prisma.TaskMemberScalarFieldEnum[] +} + +/** + * TaskMember findMany + */ +export type TaskMemberFindManyArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * Filter, which TaskMembers to fetch. + */ + where?: Prisma.TaskMemberWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskMembers to fetch. + */ + orderBy?: Prisma.TaskMemberOrderByWithRelationInput | Prisma.TaskMemberOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing TaskMembers. + */ + cursor?: Prisma.TaskMemberWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskMembers 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` TaskMembers. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of TaskMembers. + */ + distinct?: Prisma.TaskMemberScalarFieldEnum | Prisma.TaskMemberScalarFieldEnum[] +} + +/** + * TaskMember create + */ +export type TaskMemberCreateArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * The data needed to create a TaskMember. + */ + data: Prisma.XOR +} + +/** + * TaskMember createMany + */ +export type TaskMemberCreateManyArgs = { + /** + * The data used to create many TaskMembers. + */ + data: Prisma.TaskMemberCreateManyInput | Prisma.TaskMemberCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * TaskMember update + */ +export type TaskMemberUpdateArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * The data needed to update a TaskMember. + */ + data: Prisma.XOR + /** + * Choose, which TaskMember to update. + */ + where: Prisma.TaskMemberWhereUniqueInput +} + +/** + * TaskMember updateMany + */ +export type TaskMemberUpdateManyArgs = { + /** + * The data used to update TaskMembers. + */ + data: Prisma.XOR + /** + * Filter which TaskMembers to update + */ + where?: Prisma.TaskMemberWhereInput + /** + * Limit how many TaskMembers to update. + */ + limit?: number +} + +/** + * TaskMember upsert + */ +export type TaskMemberUpsertArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * The filter to search for the TaskMember to update in case it exists. + */ + where: Prisma.TaskMemberWhereUniqueInput + /** + * In case the TaskMember found by the `where` argument doesn't exist, create a new TaskMember with this data. + */ + create: Prisma.XOR + /** + * In case the TaskMember was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * TaskMember delete + */ +export type TaskMemberDeleteArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + /** + * Filter which TaskMember to delete. + */ + where: Prisma.TaskMemberWhereUniqueInput +} + +/** + * TaskMember deleteMany + */ +export type TaskMemberDeleteManyArgs = { + /** + * Filter which TaskMembers to delete + */ + where?: Prisma.TaskMemberWhereInput + /** + * Limit how many TaskMembers to delete. + */ + limit?: number +} + +/** + * TaskMember without action + */ +export type TaskMemberDefaultArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null +} diff --git a/generated/prisma/models/TaskTag.ts b/generated/prisma/models/TaskTag.ts new file mode 100644 index 0000000..29b7d6b --- /dev/null +++ b/generated/prisma/models/TaskTag.ts @@ -0,0 +1,1202 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `TaskTag` model and its related types. + * + * 🟢 You can import this file directly. + */ +import type * as runtime from "@prisma/client/runtime/client" +import type * as $Enums from "../enums.ts" +import type * as Prisma from "../internal/prismaNamespace.ts" + +/** + * Model TaskTag + * + */ +export type TaskTagModel = runtime.Types.Result.DefaultSelection + +export type AggregateTaskTag = { + _count: TaskTagCountAggregateOutputType | null + _avg: TaskTagAvgAggregateOutputType | null + _sum: TaskTagSumAggregateOutputType | null + _min: TaskTagMinAggregateOutputType | null + _max: TaskTagMaxAggregateOutputType | null +} + +export type TaskTagAvgAggregateOutputType = { + id: number | null + taskId: number | null +} + +export type TaskTagSumAggregateOutputType = { + id: number | null + taskId: number | null +} + +export type TaskTagMinAggregateOutputType = { + id: number | null + taskId: number | null + name: string | null +} + +export type TaskTagMaxAggregateOutputType = { + id: number | null + taskId: number | null + name: string | null +} + +export type TaskTagCountAggregateOutputType = { + id: number + taskId: number + name: number + _all: number +} + + +export type TaskTagAvgAggregateInputType = { + id?: true + taskId?: true +} + +export type TaskTagSumAggregateInputType = { + id?: true + taskId?: true +} + +export type TaskTagMinAggregateInputType = { + id?: true + taskId?: true + name?: true +} + +export type TaskTagMaxAggregateInputType = { + id?: true + taskId?: true + name?: true +} + +export type TaskTagCountAggregateInputType = { + id?: true + taskId?: true + name?: true + _all?: true +} + +export type TaskTagAggregateArgs = { + /** + * Filter which TaskTag to aggregate. + */ + where?: Prisma.TaskTagWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskTags to fetch. + */ + orderBy?: Prisma.TaskTagOrderByWithRelationInput | Prisma.TaskTagOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.TaskTagWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskTags 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` TaskTags. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned TaskTags + **/ + _count?: true | TaskTagCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: TaskTagAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: TaskTagSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: TaskTagMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: TaskTagMaxAggregateInputType +} + +export type GetTaskTagAggregateType = { + [P in keyof T & keyof AggregateTaskTag]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type TaskTagGroupByArgs = { + where?: Prisma.TaskTagWhereInput + orderBy?: Prisma.TaskTagOrderByWithAggregationInput | Prisma.TaskTagOrderByWithAggregationInput[] + by: Prisma.TaskTagScalarFieldEnum[] | Prisma.TaskTagScalarFieldEnum + having?: Prisma.TaskTagScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: TaskTagCountAggregateInputType | true + _avg?: TaskTagAvgAggregateInputType + _sum?: TaskTagSumAggregateInputType + _min?: TaskTagMinAggregateInputType + _max?: TaskTagMaxAggregateInputType +} + +export type TaskTagGroupByOutputType = { + id: number + taskId: number + name: string + _count: TaskTagCountAggregateOutputType | null + _avg: TaskTagAvgAggregateOutputType | null + _sum: TaskTagSumAggregateOutputType | null + _min: TaskTagMinAggregateOutputType | null + _max: TaskTagMaxAggregateOutputType | null +} + +export type GetTaskTagGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof TaskTagGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type TaskTagWhereInput = { + AND?: Prisma.TaskTagWhereInput | Prisma.TaskTagWhereInput[] + OR?: Prisma.TaskTagWhereInput[] + NOT?: Prisma.TaskTagWhereInput | Prisma.TaskTagWhereInput[] + id?: Prisma.IntFilter<"TaskTag"> | number + taskId?: Prisma.IntFilter<"TaskTag"> | number + name?: Prisma.StringFilter<"TaskTag"> | string + task?: Prisma.XOR +} + +export type TaskTagOrderByWithRelationInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + name?: Prisma.SortOrder + task?: Prisma.TaskOrderByWithRelationInput + _relevance?: Prisma.TaskTagOrderByRelevanceInput +} + +export type TaskTagWhereUniqueInput = Prisma.AtLeast<{ + id?: number + AND?: Prisma.TaskTagWhereInput | Prisma.TaskTagWhereInput[] + OR?: Prisma.TaskTagWhereInput[] + NOT?: Prisma.TaskTagWhereInput | Prisma.TaskTagWhereInput[] + taskId?: Prisma.IntFilter<"TaskTag"> | number + name?: Prisma.StringFilter<"TaskTag"> | string + task?: Prisma.XOR +}, "id"> + +export type TaskTagOrderByWithAggregationInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + name?: Prisma.SortOrder + _count?: Prisma.TaskTagCountOrderByAggregateInput + _avg?: Prisma.TaskTagAvgOrderByAggregateInput + _max?: Prisma.TaskTagMaxOrderByAggregateInput + _min?: Prisma.TaskTagMinOrderByAggregateInput + _sum?: Prisma.TaskTagSumOrderByAggregateInput +} + +export type TaskTagScalarWhereWithAggregatesInput = { + AND?: Prisma.TaskTagScalarWhereWithAggregatesInput | Prisma.TaskTagScalarWhereWithAggregatesInput[] + OR?: Prisma.TaskTagScalarWhereWithAggregatesInput[] + NOT?: Prisma.TaskTagScalarWhereWithAggregatesInput | Prisma.TaskTagScalarWhereWithAggregatesInput[] + id?: Prisma.IntWithAggregatesFilter<"TaskTag"> | number + taskId?: Prisma.IntWithAggregatesFilter<"TaskTag"> | number + name?: Prisma.StringWithAggregatesFilter<"TaskTag"> | string +} + +export type TaskTagCreateInput = { + name: string + task: Prisma.TaskCreateNestedOneWithoutTagsInput +} + +export type TaskTagUncheckedCreateInput = { + id?: number + taskId: number + name: string +} + +export type TaskTagUpdateInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + task?: Prisma.TaskUpdateOneRequiredWithoutTagsNestedInput +} + +export type TaskTagUncheckedUpdateInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + taskId?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type TaskTagCreateManyInput = { + id?: number + taskId: number + name: string +} + +export type TaskTagUpdateManyMutationInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type TaskTagUncheckedUpdateManyInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + taskId?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type TaskTagListRelationFilter = { + every?: Prisma.TaskTagWhereInput + some?: Prisma.TaskTagWhereInput + none?: Prisma.TaskTagWhereInput +} + +export type TaskTagOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type TaskTagOrderByRelevanceInput = { + fields: Prisma.TaskTagOrderByRelevanceFieldEnum | Prisma.TaskTagOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type TaskTagCountOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + name?: Prisma.SortOrder +} + +export type TaskTagAvgOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder +} + +export type TaskTagMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + name?: Prisma.SortOrder +} + +export type TaskTagMinOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder + name?: Prisma.SortOrder +} + +export type TaskTagSumOrderByAggregateInput = { + id?: Prisma.SortOrder + taskId?: Prisma.SortOrder +} + +export type TaskTagCreateNestedManyWithoutTaskInput = { + create?: Prisma.XOR | Prisma.TaskTagCreateWithoutTaskInput[] | Prisma.TaskTagUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskTagCreateOrConnectWithoutTaskInput | Prisma.TaskTagCreateOrConnectWithoutTaskInput[] + createMany?: Prisma.TaskTagCreateManyTaskInputEnvelope + connect?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] +} + +export type TaskTagUncheckedCreateNestedManyWithoutTaskInput = { + create?: Prisma.XOR | Prisma.TaskTagCreateWithoutTaskInput[] | Prisma.TaskTagUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskTagCreateOrConnectWithoutTaskInput | Prisma.TaskTagCreateOrConnectWithoutTaskInput[] + createMany?: Prisma.TaskTagCreateManyTaskInputEnvelope + connect?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] +} + +export type TaskTagUpdateManyWithoutTaskNestedInput = { + create?: Prisma.XOR | Prisma.TaskTagCreateWithoutTaskInput[] | Prisma.TaskTagUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskTagCreateOrConnectWithoutTaskInput | Prisma.TaskTagCreateOrConnectWithoutTaskInput[] + upsert?: Prisma.TaskTagUpsertWithWhereUniqueWithoutTaskInput | Prisma.TaskTagUpsertWithWhereUniqueWithoutTaskInput[] + createMany?: Prisma.TaskTagCreateManyTaskInputEnvelope + set?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + disconnect?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + delete?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + connect?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + update?: Prisma.TaskTagUpdateWithWhereUniqueWithoutTaskInput | Prisma.TaskTagUpdateWithWhereUniqueWithoutTaskInput[] + updateMany?: Prisma.TaskTagUpdateManyWithWhereWithoutTaskInput | Prisma.TaskTagUpdateManyWithWhereWithoutTaskInput[] + deleteMany?: Prisma.TaskTagScalarWhereInput | Prisma.TaskTagScalarWhereInput[] +} + +export type TaskTagUncheckedUpdateManyWithoutTaskNestedInput = { + create?: Prisma.XOR | Prisma.TaskTagCreateWithoutTaskInput[] | Prisma.TaskTagUncheckedCreateWithoutTaskInput[] + connectOrCreate?: Prisma.TaskTagCreateOrConnectWithoutTaskInput | Prisma.TaskTagCreateOrConnectWithoutTaskInput[] + upsert?: Prisma.TaskTagUpsertWithWhereUniqueWithoutTaskInput | Prisma.TaskTagUpsertWithWhereUniqueWithoutTaskInput[] + createMany?: Prisma.TaskTagCreateManyTaskInputEnvelope + set?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + disconnect?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + delete?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + connect?: Prisma.TaskTagWhereUniqueInput | Prisma.TaskTagWhereUniqueInput[] + update?: Prisma.TaskTagUpdateWithWhereUniqueWithoutTaskInput | Prisma.TaskTagUpdateWithWhereUniqueWithoutTaskInput[] + updateMany?: Prisma.TaskTagUpdateManyWithWhereWithoutTaskInput | Prisma.TaskTagUpdateManyWithWhereWithoutTaskInput[] + deleteMany?: Prisma.TaskTagScalarWhereInput | Prisma.TaskTagScalarWhereInput[] +} + +export type TaskTagCreateWithoutTaskInput = { + name: string +} + +export type TaskTagUncheckedCreateWithoutTaskInput = { + id?: number + name: string +} + +export type TaskTagCreateOrConnectWithoutTaskInput = { + where: Prisma.TaskTagWhereUniqueInput + create: Prisma.XOR +} + +export type TaskTagCreateManyTaskInputEnvelope = { + data: Prisma.TaskTagCreateManyTaskInput | Prisma.TaskTagCreateManyTaskInput[] + skipDuplicates?: boolean +} + +export type TaskTagUpsertWithWhereUniqueWithoutTaskInput = { + where: Prisma.TaskTagWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type TaskTagUpdateWithWhereUniqueWithoutTaskInput = { + where: Prisma.TaskTagWhereUniqueInput + data: Prisma.XOR +} + +export type TaskTagUpdateManyWithWhereWithoutTaskInput = { + where: Prisma.TaskTagScalarWhereInput + data: Prisma.XOR +} + +export type TaskTagScalarWhereInput = { + AND?: Prisma.TaskTagScalarWhereInput | Prisma.TaskTagScalarWhereInput[] + OR?: Prisma.TaskTagScalarWhereInput[] + NOT?: Prisma.TaskTagScalarWhereInput | Prisma.TaskTagScalarWhereInput[] + id?: Prisma.IntFilter<"TaskTag"> | number + taskId?: Prisma.IntFilter<"TaskTag"> | number + name?: Prisma.StringFilter<"TaskTag"> | string +} + +export type TaskTagCreateManyTaskInput = { + id?: number + name: string +} + +export type TaskTagUpdateWithoutTaskInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type TaskTagUncheckedUpdateWithoutTaskInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type TaskTagUncheckedUpdateManyWithoutTaskInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string +} + + + +export type TaskTagSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + taskId?: boolean + name?: boolean + task?: boolean | Prisma.TaskDefaultArgs +}, ExtArgs["result"]["taskTag"]> + + + +export type TaskTagSelectScalar = { + id?: boolean + taskId?: boolean + name?: boolean +} + +export type TaskTagOmit = runtime.Types.Extensions.GetOmit<"id" | "taskId" | "name", ExtArgs["result"]["taskTag"]> +export type TaskTagInclude = { + task?: boolean | Prisma.TaskDefaultArgs +} + +export type $TaskTagPayload = { + name: "TaskTag" + objects: { + task: Prisma.$TaskPayload + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: number + taskId: number + name: string + }, ExtArgs["result"]["taskTag"]> + composites: {} +} + +export type TaskTagGetPayload = runtime.Types.Result.GetResult + +export type TaskTagCountArgs = + Omit & { + select?: TaskTagCountAggregateInputType | true + } + +export interface TaskTagDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['TaskTag'], meta: { name: 'TaskTag' } } + /** + * Find zero or one TaskTag that matches the filter. + * @param {TaskTagFindUniqueArgs} args - Arguments to find a TaskTag + * @example + * // Get one TaskTag + * const taskTag = await prisma.taskTag.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one TaskTag that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {TaskTagFindUniqueOrThrowArgs} args - Arguments to find a TaskTag + * @example + * // Get one TaskTag + * const taskTag = await prisma.taskTag.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first TaskTag 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 {TaskTagFindFirstArgs} args - Arguments to find a TaskTag + * @example + * // Get one TaskTag + * const taskTag = await prisma.taskTag.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first TaskTag 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 {TaskTagFindFirstOrThrowArgs} args - Arguments to find a TaskTag + * @example + * // Get one TaskTag + * const taskTag = await prisma.taskTag.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more TaskTags 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 {TaskTagFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all TaskTags + * const taskTags = await prisma.taskTag.findMany() + * + * // Get first 10 TaskTags + * const taskTags = await prisma.taskTag.findMany({ take: 10 }) + * + * // Only select the `id` + * const taskTagWithIdOnly = await prisma.taskTag.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a TaskTag. + * @param {TaskTagCreateArgs} args - Arguments to create a TaskTag. + * @example + * // Create one TaskTag + * const TaskTag = await prisma.taskTag.create({ + * data: { + * // ... data to create a TaskTag + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many TaskTags. + * @param {TaskTagCreateManyArgs} args - Arguments to create many TaskTags. + * @example + * // Create many TaskTags + * const taskTag = await prisma.taskTag.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a TaskTag. + * @param {TaskTagDeleteArgs} args - Arguments to delete one TaskTag. + * @example + * // Delete one TaskTag + * const TaskTag = await prisma.taskTag.delete({ + * where: { + * // ... filter to delete one TaskTag + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one TaskTag. + * @param {TaskTagUpdateArgs} args - Arguments to update one TaskTag. + * @example + * // Update one TaskTag + * const taskTag = await prisma.taskTag.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more TaskTags. + * @param {TaskTagDeleteManyArgs} args - Arguments to filter TaskTags to delete. + * @example + * // Delete a few TaskTags + * const { count } = await prisma.taskTag.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more TaskTags. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskTagUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many TaskTags + * const taskTag = await prisma.taskTag.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one TaskTag. + * @param {TaskTagUpsertArgs} args - Arguments to update or create a TaskTag. + * @example + * // Update or create a TaskTag + * const taskTag = await prisma.taskTag.upsert({ + * create: { + * // ... data to create a TaskTag + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the TaskTag we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__TaskTagClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of TaskTags. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskTagCountArgs} args - Arguments to filter TaskTags to count. + * @example + * // Count the number of TaskTags + * const count = await prisma.taskTag.count({ + * where: { + * // ... the filter for the TaskTags we want to count + * } + * }) + **/ + count( + args?: Prisma.Subset, + ): Prisma.PrismaPromise< + T extends runtime.Types.Utils.Record<'select', any> + ? T['select'] extends true + ? number + : Prisma.GetScalarType + : number + > + + /** + * Allows you to perform aggregations operations on a TaskTag. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskTagAggregateArgs} 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: Prisma.Subset): Prisma.PrismaPromise> + + /** + * Group by TaskTag. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {TaskTagGroupByArgs} 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 TaskTagGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: TaskTagGroupByArgs['orderBy'] } + : { orderBy?: TaskTagGroupByArgs['orderBy'] }, + OrderFields extends Prisma.ExcludeUnderscoreKeys>>, + ByFields extends Prisma.MaybeTupleToUnion, + ByValid extends Prisma.Has, + HavingFields extends Prisma.GetHavingFields, + HavingValid extends Prisma.Has, + ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, + InputErrors extends ByEmpty extends Prisma.True + ? `Error: "by" must not be empty.` + : HavingValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.Keys + ? 'orderBy' extends Prisma.Keys + ? ByValid extends Prisma.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 Prisma.True + ? {} + : { + [P in OrderFields]: P extends ByFields + ? never + : `Error: Field "${P}" in "orderBy" needs to be provided in "by"` + }[OrderFields] + >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetTaskTagGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the TaskTag model + */ +readonly fields: TaskTagFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for TaskTag. + * 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__TaskTagClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + task = {}>(args?: Prisma.Subset>): Prisma.Prisma__TaskClient, 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): runtime.Types.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): runtime.Types.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): runtime.Types.Utils.JsPromise +} + + + + +/** + * Fields of the TaskTag model + */ +export interface TaskTagFieldRefs { + readonly id: Prisma.FieldRef<"TaskTag", 'Int'> + readonly taskId: Prisma.FieldRef<"TaskTag", 'Int'> + readonly name: Prisma.FieldRef<"TaskTag", 'String'> +} + + +// Custom InputTypes +/** + * TaskTag findUnique + */ +export type TaskTagFindUniqueArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * Filter, which TaskTag to fetch. + */ + where: Prisma.TaskTagWhereUniqueInput +} + +/** + * TaskTag findUniqueOrThrow + */ +export type TaskTagFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * Filter, which TaskTag to fetch. + */ + where: Prisma.TaskTagWhereUniqueInput +} + +/** + * TaskTag findFirst + */ +export type TaskTagFindFirstArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * Filter, which TaskTag to fetch. + */ + where?: Prisma.TaskTagWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskTags to fetch. + */ + orderBy?: Prisma.TaskTagOrderByWithRelationInput | Prisma.TaskTagOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for TaskTags. + */ + cursor?: Prisma.TaskTagWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskTags 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` TaskTags. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of TaskTags. + */ + distinct?: Prisma.TaskTagScalarFieldEnum | Prisma.TaskTagScalarFieldEnum[] +} + +/** + * TaskTag findFirstOrThrow + */ +export type TaskTagFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * Filter, which TaskTag to fetch. + */ + where?: Prisma.TaskTagWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskTags to fetch. + */ + orderBy?: Prisma.TaskTagOrderByWithRelationInput | Prisma.TaskTagOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for TaskTags. + */ + cursor?: Prisma.TaskTagWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskTags 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` TaskTags. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of TaskTags. + */ + distinct?: Prisma.TaskTagScalarFieldEnum | Prisma.TaskTagScalarFieldEnum[] +} + +/** + * TaskTag findMany + */ +export type TaskTagFindManyArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * Filter, which TaskTags to fetch. + */ + where?: Prisma.TaskTagWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of TaskTags to fetch. + */ + orderBy?: Prisma.TaskTagOrderByWithRelationInput | Prisma.TaskTagOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing TaskTags. + */ + cursor?: Prisma.TaskTagWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` TaskTags 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` TaskTags. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of TaskTags. + */ + distinct?: Prisma.TaskTagScalarFieldEnum | Prisma.TaskTagScalarFieldEnum[] +} + +/** + * TaskTag create + */ +export type TaskTagCreateArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * The data needed to create a TaskTag. + */ + data: Prisma.XOR +} + +/** + * TaskTag createMany + */ +export type TaskTagCreateManyArgs = { + /** + * The data used to create many TaskTags. + */ + data: Prisma.TaskTagCreateManyInput | Prisma.TaskTagCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * TaskTag update + */ +export type TaskTagUpdateArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * The data needed to update a TaskTag. + */ + data: Prisma.XOR + /** + * Choose, which TaskTag to update. + */ + where: Prisma.TaskTagWhereUniqueInput +} + +/** + * TaskTag updateMany + */ +export type TaskTagUpdateManyArgs = { + /** + * The data used to update TaskTags. + */ + data: Prisma.XOR + /** + * Filter which TaskTags to update + */ + where?: Prisma.TaskTagWhereInput + /** + * Limit how many TaskTags to update. + */ + limit?: number +} + +/** + * TaskTag upsert + */ +export type TaskTagUpsertArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * The filter to search for the TaskTag to update in case it exists. + */ + where: Prisma.TaskTagWhereUniqueInput + /** + * In case the TaskTag found by the `where` argument doesn't exist, create a new TaskTag with this data. + */ + create: Prisma.XOR + /** + * In case the TaskTag was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * TaskTag delete + */ +export type TaskTagDeleteArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null + /** + * Filter which TaskTag to delete. + */ + where: Prisma.TaskTagWhereUniqueInput +} + +/** + * TaskTag deleteMany + */ +export type TaskTagDeleteManyArgs = { + /** + * Filter which TaskTags to delete + */ + where?: Prisma.TaskTagWhereInput + /** + * Limit how many TaskTags to delete. + */ + limit?: number +} + +/** + * TaskTag without action + */ +export type TaskTagDefaultArgs = { + /** + * Select specific fields to fetch from the TaskTag + */ + select?: Prisma.TaskTagSelect | null + /** + * Omit specific fields from the TaskTag + */ + omit?: Prisma.TaskTagOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskTagInclude | null +} diff --git a/generated/prisma/models/User.ts b/generated/prisma/models/User.ts index 3f166ca..a45fb22 100644 --- a/generated/prisma/models/User.ts +++ b/generated/prisma/models/User.ts @@ -228,6 +228,11 @@ export type UserWhereInput = { checkIns?: Prisma.CheckInListRelationFilter checkLists?: Prisma.CheckListListRelationFilter templates?: Prisma.CheckListTemplateListRelationFilter + ownedProjects?: Prisma.ProjectListRelationFilter + projectMembers?: Prisma.ProjectMemberListRelationFilter + assignedTasks?: Prisma.TaskListRelationFilter + createdTasks?: Prisma.TaskListRelationFilter + taskMembers?: Prisma.TaskMemberListRelationFilter } export type UserOrderByWithRelationInput = { @@ -241,6 +246,11 @@ export type UserOrderByWithRelationInput = { checkIns?: Prisma.CheckInOrderByRelationAggregateInput checkLists?: Prisma.CheckListOrderByRelationAggregateInput templates?: Prisma.CheckListTemplateOrderByRelationAggregateInput + ownedProjects?: Prisma.ProjectOrderByRelationAggregateInput + projectMembers?: Prisma.ProjectMemberOrderByRelationAggregateInput + assignedTasks?: Prisma.TaskOrderByRelationAggregateInput + createdTasks?: Prisma.TaskOrderByRelationAggregateInput + taskMembers?: Prisma.TaskMemberOrderByRelationAggregateInput _relevance?: Prisma.UserOrderByRelevanceInput } @@ -258,6 +268,11 @@ export type UserWhereUniqueInput = Prisma.AtLeast<{ checkIns?: Prisma.CheckInListRelationFilter checkLists?: Prisma.CheckListListRelationFilter templates?: Prisma.CheckListTemplateListRelationFilter + ownedProjects?: Prisma.ProjectListRelationFilter + projectMembers?: Prisma.ProjectMemberListRelationFilter + assignedTasks?: Prisma.TaskListRelationFilter + createdTasks?: Prisma.TaskListRelationFilter + taskMembers?: Prisma.TaskMemberListRelationFilter }, "id" | "email"> export type UserOrderByWithAggregationInput = { @@ -296,6 +311,11 @@ export type UserCreateInput = { checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateInput = { @@ -309,6 +329,11 @@ export type UserUncheckedCreateInput = { checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput } export type UserUpdateInput = { @@ -321,6 +346,11 @@ export type UserUpdateInput = { checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateInput = { @@ -334,6 +364,11 @@ export type UserUncheckedUpdateInput = { checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput } export type UserCreateManyInput = { @@ -487,6 +522,78 @@ export type UserUpdateOneWithoutTemplatesNestedInput = { update?: Prisma.XOR, Prisma.UserUncheckedUpdateWithoutTemplatesInput> } +export type UserCreateNestedOneWithoutOwnedProjectsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutOwnedProjectsInput + connect?: Prisma.UserWhereUniqueInput +} + +export type UserUpdateOneRequiredWithoutOwnedProjectsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutOwnedProjectsInput + upsert?: Prisma.UserUpsertWithoutOwnedProjectsInput + connect?: Prisma.UserWhereUniqueInput + update?: Prisma.XOR, Prisma.UserUncheckedUpdateWithoutOwnedProjectsInput> +} + +export type UserCreateNestedOneWithoutProjectMembersInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutProjectMembersInput + connect?: Prisma.UserWhereUniqueInput +} + +export type UserUpdateOneRequiredWithoutProjectMembersNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutProjectMembersInput + upsert?: Prisma.UserUpsertWithoutProjectMembersInput + connect?: Prisma.UserWhereUniqueInput + update?: Prisma.XOR, Prisma.UserUncheckedUpdateWithoutProjectMembersInput> +} + +export type UserCreateNestedOneWithoutAssignedTasksInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutAssignedTasksInput + connect?: Prisma.UserWhereUniqueInput +} + +export type UserCreateNestedOneWithoutCreatedTasksInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutCreatedTasksInput + connect?: Prisma.UserWhereUniqueInput +} + +export type UserUpdateOneWithoutAssignedTasksNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutAssignedTasksInput + upsert?: Prisma.UserUpsertWithoutAssignedTasksInput + disconnect?: Prisma.UserWhereInput | boolean + delete?: Prisma.UserWhereInput | boolean + connect?: Prisma.UserWhereUniqueInput + update?: Prisma.XOR, Prisma.UserUncheckedUpdateWithoutAssignedTasksInput> +} + +export type UserUpdateOneRequiredWithoutCreatedTasksNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutCreatedTasksInput + upsert?: Prisma.UserUpsertWithoutCreatedTasksInput + connect?: Prisma.UserWhereUniqueInput + update?: Prisma.XOR, Prisma.UserUncheckedUpdateWithoutCreatedTasksInput> +} + +export type UserCreateNestedOneWithoutTaskMembersInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutTaskMembersInput + connect?: Prisma.UserWhereUniqueInput +} + +export type UserUpdateOneRequiredWithoutTaskMembersNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.UserCreateOrConnectWithoutTaskMembersInput + upsert?: Prisma.UserUpsertWithoutTaskMembersInput + connect?: Prisma.UserWhereUniqueInput + update?: Prisma.XOR, Prisma.UserUncheckedUpdateWithoutTaskMembersInput> +} + export type UserCreateWithoutHabitsInput = { name: string email: string @@ -496,6 +603,11 @@ export type UserCreateWithoutHabitsInput = { checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutHabitsInput = { @@ -508,6 +620,11 @@ export type UserUncheckedCreateWithoutHabitsInput = { checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutHabitsInput = { @@ -535,6 +652,11 @@ export type UserUpdateWithoutHabitsInput = { checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutHabitsInput = { @@ -547,6 +669,11 @@ export type UserUncheckedUpdateWithoutHabitsInput = { checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput } export type UserCreateWithoutCheckInsInput = { @@ -558,6 +685,11 @@ export type UserCreateWithoutCheckInsInput = { habits?: Prisma.HabitCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutCheckInsInput = { @@ -570,6 +702,11 @@ export type UserUncheckedCreateWithoutCheckInsInput = { habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutCheckInsInput = { @@ -597,6 +734,11 @@ export type UserUpdateWithoutCheckInsInput = { habits?: Prisma.HabitUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutCheckInsInput = { @@ -609,6 +751,11 @@ export type UserUncheckedUpdateWithoutCheckInsInput = { habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput } export type UserCreateWithoutCheckListsInput = { @@ -620,6 +767,11 @@ export type UserCreateWithoutCheckListsInput = { habits?: Prisma.HabitCreateNestedManyWithoutUserInput checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutCheckListsInput = { @@ -632,6 +784,11 @@ export type UserUncheckedCreateWithoutCheckListsInput = { habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutCheckListsInput = { @@ -659,6 +816,11 @@ export type UserUpdateWithoutCheckListsInput = { habits?: Prisma.HabitUpdateManyWithoutUserNestedInput checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutCheckListsInput = { @@ -671,6 +833,11 @@ export type UserUncheckedUpdateWithoutCheckListsInput = { habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput } export type UserCreateWithoutTemplatesInput = { @@ -682,6 +849,11 @@ export type UserCreateWithoutTemplatesInput = { habits?: Prisma.HabitCreateNestedManyWithoutUserInput checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput } export type UserUncheckedCreateWithoutTemplatesInput = { @@ -694,6 +866,11 @@ export type UserUncheckedCreateWithoutTemplatesInput = { habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput } export type UserCreateOrConnectWithoutTemplatesInput = { @@ -721,6 +898,11 @@ export type UserUpdateWithoutTemplatesInput = { habits?: Prisma.HabitUpdateManyWithoutUserNestedInput checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput } export type UserUncheckedUpdateWithoutTemplatesInput = { @@ -733,6 +915,421 @@ export type UserUncheckedUpdateWithoutTemplatesInput = { habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput +} + +export type UserCreateWithoutOwnedProjectsInput = { + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput +} + +export type UserUncheckedCreateWithoutOwnedProjectsInput = { + id?: number + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput +} + +export type UserCreateOrConnectWithoutOwnedProjectsInput = { + where: Prisma.UserWhereUniqueInput + create: Prisma.XOR +} + +export type UserUpsertWithoutOwnedProjectsInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.UserWhereInput +} + +export type UserUpdateToOneWithWhereWithoutOwnedProjectsInput = { + where?: Prisma.UserWhereInput + data: Prisma.XOR +} + +export type UserUpdateWithoutOwnedProjectsInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput +} + +export type UserUncheckedUpdateWithoutOwnedProjectsInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput +} + +export type UserCreateWithoutProjectMembersInput = { + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput +} + +export type UserUncheckedCreateWithoutProjectMembersInput = { + id?: number + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput +} + +export type UserCreateOrConnectWithoutProjectMembersInput = { + where: Prisma.UserWhereUniqueInput + create: Prisma.XOR +} + +export type UserUpsertWithoutProjectMembersInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.UserWhereInput +} + +export type UserUpdateToOneWithWhereWithoutProjectMembersInput = { + where?: Prisma.UserWhereInput + data: Prisma.XOR +} + +export type UserUpdateWithoutProjectMembersInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput +} + +export type UserUncheckedUpdateWithoutProjectMembersInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput +} + +export type UserCreateWithoutAssignedTasksInput = { + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput +} + +export type UserUncheckedCreateWithoutAssignedTasksInput = { + id?: number + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput +} + +export type UserCreateOrConnectWithoutAssignedTasksInput = { + where: Prisma.UserWhereUniqueInput + create: Prisma.XOR +} + +export type UserCreateWithoutCreatedTasksInput = { + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + taskMembers?: Prisma.TaskMemberCreateNestedManyWithoutUserInput +} + +export type UserUncheckedCreateWithoutCreatedTasksInput = { + id?: number + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + taskMembers?: Prisma.TaskMemberUncheckedCreateNestedManyWithoutUserInput +} + +export type UserCreateOrConnectWithoutCreatedTasksInput = { + where: Prisma.UserWhereUniqueInput + create: Prisma.XOR +} + +export type UserUpsertWithoutAssignedTasksInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.UserWhereInput +} + +export type UserUpdateToOneWithWhereWithoutAssignedTasksInput = { + where?: Prisma.UserWhereInput + data: Prisma.XOR +} + +export type UserUpdateWithoutAssignedTasksInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput +} + +export type UserUncheckedUpdateWithoutAssignedTasksInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput +} + +export type UserUpsertWithoutCreatedTasksInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.UserWhereInput +} + +export type UserUpdateToOneWithWhereWithoutCreatedTasksInput = { + where?: Prisma.UserWhereInput + data: Prisma.XOR +} + +export type UserUpdateWithoutCreatedTasksInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + taskMembers?: Prisma.TaskMemberUpdateManyWithoutUserNestedInput +} + +export type UserUncheckedUpdateWithoutCreatedTasksInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + taskMembers?: Prisma.TaskMemberUncheckedUpdateManyWithoutUserNestedInput +} + +export type UserCreateWithoutTaskMembersInput = { + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskCreateNestedManyWithoutCreatorInput +} + +export type UserUncheckedCreateWithoutTaskMembersInput = { + id?: number + name: string + email: string + password: string + createdAt?: Date | string + updatedAt?: Date | string + habits?: Prisma.HabitUncheckedCreateNestedManyWithoutUserInput + checkIns?: Prisma.CheckInUncheckedCreateNestedManyWithoutUserInput + checkLists?: Prisma.CheckListUncheckedCreateNestedManyWithoutUserInput + templates?: Prisma.CheckListTemplateUncheckedCreateNestedManyWithoutUserInput + ownedProjects?: Prisma.ProjectUncheckedCreateNestedManyWithoutOwnerInput + projectMembers?: Prisma.ProjectMemberUncheckedCreateNestedManyWithoutUserInput + assignedTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutAssigneeInput + createdTasks?: Prisma.TaskUncheckedCreateNestedManyWithoutCreatorInput +} + +export type UserCreateOrConnectWithoutTaskMembersInput = { + where: Prisma.UserWhereUniqueInput + create: Prisma.XOR +} + +export type UserUpsertWithoutTaskMembersInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.UserWhereInput +} + +export type UserUpdateToOneWithWhereWithoutTaskMembersInput = { + where?: Prisma.UserWhereInput + data: Prisma.XOR +} + +export type UserUpdateWithoutTaskMembersInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUpdateManyWithoutCreatorNestedInput +} + +export type UserUncheckedUpdateWithoutTaskMembersInput = { + id?: Prisma.IntFieldUpdateOperationsInput | number + name?: Prisma.StringFieldUpdateOperationsInput | string + email?: Prisma.StringFieldUpdateOperationsInput | string + password?: Prisma.StringFieldUpdateOperationsInput | string + createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + habits?: Prisma.HabitUncheckedUpdateManyWithoutUserNestedInput + checkIns?: Prisma.CheckInUncheckedUpdateManyWithoutUserNestedInput + checkLists?: Prisma.CheckListUncheckedUpdateManyWithoutUserNestedInput + templates?: Prisma.CheckListTemplateUncheckedUpdateManyWithoutUserNestedInput + ownedProjects?: Prisma.ProjectUncheckedUpdateManyWithoutOwnerNestedInput + projectMembers?: Prisma.ProjectMemberUncheckedUpdateManyWithoutUserNestedInput + assignedTasks?: Prisma.TaskUncheckedUpdateManyWithoutAssigneeNestedInput + createdTasks?: Prisma.TaskUncheckedUpdateManyWithoutCreatorNestedInput } @@ -745,6 +1342,11 @@ export type UserCountOutputType = { checkIns: number checkLists: number templates: number + ownedProjects: number + projectMembers: number + assignedTasks: number + createdTasks: number + taskMembers: number } export type UserCountOutputTypeSelect = { @@ -752,6 +1354,11 @@ export type UserCountOutputTypeSelect = { + where?: Prisma.ProjectWhereInput +} + +/** + * UserCountOutputType without action + */ +export type UserCountOutputTypeCountProjectMembersArgs = { + where?: Prisma.ProjectMemberWhereInput +} + +/** + * UserCountOutputType without action + */ +export type UserCountOutputTypeCountAssignedTasksArgs = { + where?: Prisma.TaskWhereInput +} + +/** + * UserCountOutputType without action + */ +export type UserCountOutputTypeCountCreatedTasksArgs = { + where?: Prisma.TaskWhereInput +} + +/** + * UserCountOutputType without action + */ +export type UserCountOutputTypeCountTaskMembersArgs = { + where?: Prisma.TaskMemberWhereInput +} + export type UserSelect = runtime.Types.Extensions.GetSelect<{ id?: boolean @@ -804,6 +1446,11 @@ export type UserSelect checkLists?: boolean | Prisma.User$checkListsArgs templates?: boolean | Prisma.User$templatesArgs + ownedProjects?: boolean | Prisma.User$ownedProjectsArgs + projectMembers?: boolean | Prisma.User$projectMembersArgs + assignedTasks?: boolean | Prisma.User$assignedTasksArgs + createdTasks?: boolean | Prisma.User$createdTasksArgs + taskMembers?: boolean | Prisma.User$taskMembersArgs _count?: boolean | Prisma.UserCountOutputTypeDefaultArgs }, ExtArgs["result"]["user"]> @@ -824,6 +1471,11 @@ export type UserInclude checkLists?: boolean | Prisma.User$checkListsArgs templates?: boolean | Prisma.User$templatesArgs + ownedProjects?: boolean | Prisma.User$ownedProjectsArgs + projectMembers?: boolean | Prisma.User$projectMembersArgs + assignedTasks?: boolean | Prisma.User$assignedTasksArgs + createdTasks?: boolean | Prisma.User$createdTasksArgs + taskMembers?: boolean | Prisma.User$taskMembersArgs _count?: boolean | Prisma.UserCountOutputTypeDefaultArgs } @@ -834,6 +1486,11 @@ export type $UserPayload[] checkLists: Prisma.$CheckListPayload[] templates: Prisma.$CheckListTemplatePayload[] + ownedProjects: Prisma.$ProjectPayload[] + projectMembers: Prisma.$ProjectMemberPayload[] + assignedTasks: Prisma.$TaskPayload[] + createdTasks: Prisma.$TaskPayload[] + taskMembers: Prisma.$TaskMemberPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: number @@ -1186,6 +1843,11 @@ export interface Prisma__UserClient = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> checkLists = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> templates = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + ownedProjects = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + projectMembers = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + assignedTasks = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + createdTasks = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + taskMembers = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, 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. @@ -1664,6 +2326,126 @@ export type User$templatesArgs = { + /** + * Select specific fields to fetch from the Project + */ + select?: Prisma.ProjectSelect | null + /** + * Omit specific fields from the Project + */ + omit?: Prisma.ProjectOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectInclude | null + where?: Prisma.ProjectWhereInput + orderBy?: Prisma.ProjectOrderByWithRelationInput | Prisma.ProjectOrderByWithRelationInput[] + cursor?: Prisma.ProjectWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.ProjectScalarFieldEnum | Prisma.ProjectScalarFieldEnum[] +} + +/** + * User.projectMembers + */ +export type User$projectMembersArgs = { + /** + * Select specific fields to fetch from the ProjectMember + */ + select?: Prisma.ProjectMemberSelect | null + /** + * Omit specific fields from the ProjectMember + */ + omit?: Prisma.ProjectMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProjectMemberInclude | null + where?: Prisma.ProjectMemberWhereInput + orderBy?: Prisma.ProjectMemberOrderByWithRelationInput | Prisma.ProjectMemberOrderByWithRelationInput[] + cursor?: Prisma.ProjectMemberWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.ProjectMemberScalarFieldEnum | Prisma.ProjectMemberScalarFieldEnum[] +} + +/** + * User.assignedTasks + */ +export type User$assignedTasksArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + where?: Prisma.TaskWhereInput + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + cursor?: Prisma.TaskWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * User.createdTasks + */ +export type User$createdTasksArgs = { + /** + * Select specific fields to fetch from the Task + */ + select?: Prisma.TaskSelect | null + /** + * Omit specific fields from the Task + */ + omit?: Prisma.TaskOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskInclude | null + where?: Prisma.TaskWhereInput + orderBy?: Prisma.TaskOrderByWithRelationInput | Prisma.TaskOrderByWithRelationInput[] + cursor?: Prisma.TaskWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskScalarFieldEnum | Prisma.TaskScalarFieldEnum[] +} + +/** + * User.taskMembers + */ +export type User$taskMembersArgs = { + /** + * Select specific fields to fetch from the TaskMember + */ + select?: Prisma.TaskMemberSelect | null + /** + * Omit specific fields from the TaskMember + */ + omit?: Prisma.TaskMemberOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.TaskMemberInclude | null + where?: Prisma.TaskMemberWhereInput + orderBy?: Prisma.TaskMemberOrderByWithRelationInput | Prisma.TaskMemberOrderByWithRelationInput[] + cursor?: Prisma.TaskMemberWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.TaskMemberScalarFieldEnum | Prisma.TaskMemberScalarFieldEnum[] +} + /** * User without action */