@app-vitals/agent-admin 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (325) hide show
  1. package/Dockerfile +43 -0
  2. package/README.md +72 -2
  3. package/e2e/agents-page.e2e.ts +338 -0
  4. package/e2e/chat-degraded.e2e.ts +153 -0
  5. package/e2e/chat-page.e2e.ts +169 -0
  6. package/e2e/chat-progress.e2e.ts +206 -0
  7. package/e2e/chat-thread-page.e2e.ts +444 -0
  8. package/e2e/login-page.e2e.ts +148 -0
  9. package/e2e/test-server.ts +427 -0
  10. package/openapi.json +6098 -0
  11. package/openapi.platform.json +5553 -0
  12. package/package.json +62 -4
  13. package/playwright.config.ts +25 -0
  14. package/prisma/client/browser.ts +134 -0
  15. package/prisma/client/client.ts +158 -0
  16. package/prisma/client/commonInputTypes.ts +578 -0
  17. package/prisma/client/enums.ts +15 -0
  18. package/prisma/client/internal/class.ts +424 -0
  19. package/prisma/client/internal/prismaNamespace.ts +2898 -0
  20. package/prisma/client/internal/prismaNamespaceBrowser.ts +476 -0
  21. package/prisma/client/models/Account.ts +1774 -0
  22. package/prisma/client/models/AccountInvite.ts +1386 -0
  23. package/prisma/client/models/AccountMember.ts +1351 -0
  24. package/prisma/client/models/Agent.ts +4554 -0
  25. package/prisma/client/models/AgentAsk.ts +1373 -0
  26. package/prisma/client/models/AgentChatTokenUsageDailyByModel.ts +1638 -0
  27. package/prisma/client/models/AgentCronJob.ts +2416 -0
  28. package/prisma/client/models/AgentCronRun.ts +2858 -0
  29. package/prisma/client/models/AgentCronRunModelBreakdown.ts +1532 -0
  30. package/prisma/client/models/AgentCronRunSkillUsage.ts +1642 -0
  31. package/prisma/client/models/AgentEnv.ts +1421 -0
  32. package/prisma/client/models/AgentGitHubInstallationsSnapshot.ts +1289 -0
  33. package/prisma/client/models/AgentMember.ts +1316 -0
  34. package/prisma/client/models/AgentPhaseMethodology.ts +1355 -0
  35. package/prisma/client/models/AgentPlugin.ts +1421 -0
  36. package/prisma/client/models/AgentToken.ts +1380 -0
  37. package/prisma/client/models/AgentTool.ts +1351 -0
  38. package/prisma/client/models/AgentWorkQueueSnapshot.ts +1297 -0
  39. package/prisma/client/models/ChatThreadWatch.ts +1183 -0
  40. package/prisma/client/models/PushSubscription.ts +1233 -0
  41. package/prisma/client/models/SessionAlertState.ts +1187 -0
  42. package/prisma/client/models/SessionFollow.ts +1187 -0
  43. package/prisma/client/models/UserNotificationPrefs.ts +1221 -0
  44. package/prisma/client/models.ts +34 -0
  45. package/prisma/migrations/20260608000000_init/migration.sql +112 -0
  46. package/prisma/migrations/20260616000000_agent_members/migration.sql +18 -0
  47. package/prisma/migrations/20260624000000_add_agent_self_hosted/migration.sql +2 -0
  48. package/prisma/migrations/20260624120000_add_agent_repos/migration.sql +3 -0
  49. package/prisma/migrations/20260625000000_add_agent_cron_run/migration.sql +26 -0
  50. package/prisma/migrations/20260626000000_add_cron_run_token_fields/migration.sql +10 -0
  51. package/prisma/migrations/20260627000000_add_agent_chat_token_usage_daily/migration.sql +18 -0
  52. package/prisma/migrations/20260627010000_add_agent_chat_token_usage_fk/migration.sql +2 -0
  53. package/prisma/migrations/20260701000000_add_chat_threads_messages/migration.sql +37 -0
  54. package/prisma/migrations/20260701010000_drop_chat_threads_messages/migration.sql +17 -0
  55. package/prisma/migrations/20260701020000_add_cron_run_model_breakdown/migration.sql +23 -0
  56. package/prisma/migrations/20260701020000_chat_token_by_model/migration.sql +25 -0
  57. package/prisma/migrations/20260701030000_add_secret_flag_to_agent_env/migration.sql +2 -0
  58. package/prisma/migrations/20260701030000_drop_cron_run_legacy_columns/migration.sql +5 -0
  59. package/prisma/migrations/20260706000000_consolidate_cron_run_token_accounting/migration.sql +54 -0
  60. package/prisma/migrations/20260709000000_add_phase_to_agent_cron_run/migration.sql +8 -0
  61. package/prisma/migrations/20260717000000_add_item_tracking_to_agent_cron_run/migration.sql +10 -0
  62. package/prisma/migrations/20260717010000_add_agent_work_queue_snapshot/migration.sql +20 -0
  63. package/prisma/migrations/20260718000000_add_cron_phase_columns/migration.sql +25 -0
  64. package/prisma/migrations/20260718100000_drop_agent_cron_run_phase_column/migration.sql +8 -0
  65. package/prisma/migrations/20260724000000_add_agent_type_name/migration.sql +3 -0
  66. package/prisma/migrations/20260725232433_add_agent_author_allowlist/migration.sql +2 -0
  67. package/prisma/migrations/20260727120000_add_not_null_to_agent_author_allowlist/migration.sql +3 -0
  68. package/prisma/migrations/20260731000000_add_session_id_to_agent_cron_run/migration.sql +2 -0
  69. package/prisma/migrations/20260821000000_add_agent_restrict_slack_to_members/migration.sql +3 -0
  70. package/prisma/migrations/20260901000000_add_push_subscription_and_chat_thread_watch/migration.sql +40 -0
  71. package/prisma/migrations/20260903000000_add_agent_patch_author_allowlist/migration.sql +2 -0
  72. package/prisma/migrations/20260903120000_add_agent_review_author_allowlist/migration.sql +18 -0
  73. package/prisma/migrations/20260903150000_drop_agent_author_allowlist/migration.sql +14 -0
  74. package/prisma/migrations/20260905000000_add_started_at_index_to_agent_cron_run/migration.sql +11 -0
  75. package/prisma/migrations/20260906000000_add_session_follow_notification_prefs_alert_state/migration.sql +47 -0
  76. package/prisma/migrations/20260911000000_backfill_auto_follow_since/migration.sql +16 -0
  77. package/prisma/migrations/20260923115814_add_last_heartbeat_at_to_agent_cron_run/migration.sql +2 -0
  78. package/prisma/migrations/20260924120000_add_trial_expiry_fields_to_agent/migration.sql +6 -0
  79. package/prisma/migrations/20260929000000_add_agent_phase_methodology/migration.sql +21 -0
  80. package/prisma/migrations/20260929120000_add_agent_policy_fields/migration.sql +15 -0
  81. package/prisma/migrations/20261005000000_add_agent_github_installations_snapshot/migration.sql +21 -0
  82. package/prisma/migrations/20261008000000_add_cron_run_telemetry/migration.sql +50 -0
  83. package/prisma/migrations/20261008010000_add_account_models/migration.sql +48 -0
  84. package/prisma/migrations/20261008020000_add_cron_lockdown_disabled_at/migration.sql +3 -0
  85. package/prisma/migrations/20261009000000_chat_token_usage_bigint/migration.sql +7 -0
  86. package/prisma/migrations/20261010000000_add_cron_run_command_variant/migration.sql +2 -0
  87. package/prisma/migrations/20261019000000_add_agent_anthropic_identity/migration.sql +9 -0
  88. package/prisma/migrations/20261025000000_add_agent_ask/migration.sql +23 -0
  89. package/prisma/migrations/migration_lock.toml +3 -0
  90. package/prisma/schema/coding.prisma +85 -0
  91. package/prisma/schema/schema.prisma +506 -0
  92. package/prisma.config.ts +34 -0
  93. package/pwa-assets/icons/apple-touch-icon.png +0 -0
  94. package/pwa-assets/icons/favicon-32.png +0 -0
  95. package/pwa-assets/icons/icon-192.png +0 -0
  96. package/pwa-assets/icons/icon-512.png +0 -0
  97. package/pwa-assets/icons/icon-maskable-192.png +0 -0
  98. package/pwa-assets/icons/icon-maskable-512.png +0 -0
  99. package/src/account-agent-create.ts +42 -0
  100. package/src/account-agent-create.unit.test.ts +28 -0
  101. package/src/account-created-notifier.ts +71 -0
  102. package/src/account-created-notifier.unit.test.ts +70 -0
  103. package/src/account-email.ts +9 -0
  104. package/src/account-email.unit.test.ts +21 -0
  105. package/src/account-invites.ts +70 -0
  106. package/src/account-lifecycle.integration.test.ts +329 -0
  107. package/src/account-lifecycle.ts +206 -0
  108. package/src/account-lifecycle.unit.test.ts +108 -0
  109. package/src/account-members.ts +128 -0
  110. package/src/account-onboarding.integration.test.ts +101 -0
  111. package/src/account-onboarding.ts +95 -0
  112. package/src/account-trial-expiry-sweeper.ts +85 -0
  113. package/src/account-trial-warning-sweeper.integration.test.ts +228 -0
  114. package/src/account-trial-warning-sweeper.ts +216 -0
  115. package/src/accounts-api.integration.test.ts +196 -0
  116. package/src/accounts-api.smoke.test.ts +292 -0
  117. package/src/accounts-api.ts +289 -0
  118. package/src/accounts-api.unit.test.ts +93 -0
  119. package/src/accounts.integration.test.ts +178 -0
  120. package/src/accounts.ts +208 -0
  121. package/src/admin-boot-config.ts +574 -0
  122. package/src/admin-boot-config.unit.test.ts +28 -0
  123. package/src/admin-boot.boot-order.unit.test.ts +91 -0
  124. package/src/admin-boot.ts +690 -0
  125. package/src/admin-dev-login.smoke.test.ts +317 -0
  126. package/src/admin-extension.ts +432 -0
  127. package/src/admin-extension.unit.test.ts +532 -0
  128. package/src/admin-local-agent.smoke.test.ts +1643 -0
  129. package/src/admin-spec.smoke.test.ts +96 -0
  130. package/src/admin-spec.ts +186 -0
  131. package/src/admin-ui-account-nav.ts +20 -0
  132. package/src/admin-ui-account-pages.ts +131 -0
  133. package/src/admin-ui-account-pages.unit.test.ts +112 -0
  134. package/src/admin-ui-account.smoke.test.ts +286 -0
  135. package/src/admin-ui-account.ts +185 -0
  136. package/src/admin-ui-accounts-pages.ts +202 -0
  137. package/src/admin-ui-accounts-pages.unit.test.ts +138 -0
  138. package/src/admin-ui-accounts.smoke.test.ts +434 -0
  139. package/src/admin-ui-accounts.ts +266 -0
  140. package/src/admin-ui-layout.ts +60 -0
  141. package/src/admin-ui-layout.unit.test.ts +140 -0
  142. package/src/admin-ui-pages.ts +3489 -0
  143. package/src/admin-ui-pages.unit.test.ts +4355 -0
  144. package/src/admin-ui-push-test.smoke.test.ts +125 -0
  145. package/src/admin-ui-push-test.ts +102 -0
  146. package/src/admin-ui-styles.ts +656 -0
  147. package/src/admin-ui-styles.unit.test.ts +103 -0
  148. package/src/admin-ui.fixtures.ts +457 -0
  149. package/src/admin-ui.smoke.test.ts +7227 -0
  150. package/src/admin-ui.ts +3824 -0
  151. package/src/agent-account-assignment.ts +49 -0
  152. package/src/agent-account-assignment.unit.test.ts +99 -0
  153. package/src/agent-anthropic-identity.integration.test.ts +99 -0
  154. package/src/agent-anthropic-identity.ts +78 -0
  155. package/src/agent-anthropic-identity.unit.test.ts +77 -0
  156. package/src/agent-ask-config.ts +59 -0
  157. package/src/agent-ask-config.unit.test.ts +70 -0
  158. package/src/agent-ask.integration.test.ts +175 -0
  159. package/src/agent-ask.smoke.test.ts +457 -0
  160. package/src/agent-ask.ts +378 -0
  161. package/src/agent-chat-tokens.integration.test.ts +420 -0
  162. package/src/agent-chat-tokens.smoke.test.ts +551 -0
  163. package/src/agent-chat-tokens.ts +259 -0
  164. package/src/agent-cron-jobs.integration.test.ts +582 -0
  165. package/src/agent-cron-jobs.ts +615 -0
  166. package/src/agent-cron-jobs.unit.test.ts +420 -0
  167. package/src/agent-cron-run-stats.integration.test.ts +1551 -0
  168. package/src/agent-cron-run-stats.smoke.test.ts +953 -0
  169. package/src/agent-cron-run-stats.ts +752 -0
  170. package/src/agent-cron-runs.integration.test.ts +1491 -0
  171. package/src/agent-cron-runs.ts +489 -0
  172. package/src/agent-deletion-checklist.ts +128 -0
  173. package/src/agent-deletion-checklist.unit.test.ts +201 -0
  174. package/src/agent-deletion-per-agent.integration.test.ts +323 -0
  175. package/src/agent-deletion.integration.test.ts +323 -0
  176. package/src/agent-deletion.ts +329 -0
  177. package/src/agent-deletion.unit.test.ts +412 -0
  178. package/src/agent-envs.integration.test.ts +323 -0
  179. package/src/agent-envs.ts +244 -0
  180. package/src/agent-github-installations.integration.test.ts +115 -0
  181. package/src/agent-github-installations.ts +52 -0
  182. package/src/agent-manifest.ts +685 -0
  183. package/src/agent-manifest.unit.test.ts +870 -0
  184. package/src/agent-members.ts +69 -0
  185. package/src/agent-members.unit.test.ts +250 -0
  186. package/src/agent-patch-author-allowlist.integration.test.ts +218 -0
  187. package/src/agent-plugins.integration.test.ts +157 -0
  188. package/src/agent-plugins.ts +95 -0
  189. package/src/agent-plugins.unit.test.ts +43 -0
  190. package/src/agent-provisioner-per-agent.integration.test.ts +949 -0
  191. package/src/agent-provisioner.integration.test.ts +1245 -0
  192. package/src/agent-provisioner.ts +1650 -0
  193. package/src/agent-provisioner.unit.test.ts +1852 -0
  194. package/src/agent-tokens.integration.test.ts +150 -0
  195. package/src/agent-tokens.ts +112 -0
  196. package/src/agent-tools.integration.test.ts +129 -0
  197. package/src/agent-tools.ts +111 -0
  198. package/src/agents-api.integration.test.ts +705 -0
  199. package/src/agents-api.sentry.smoke.test.ts +478 -0
  200. package/src/agents-api.smoke.test.ts +5986 -0
  201. package/src/agents-api.ts +2826 -0
  202. package/src/agents.integration.test.ts +512 -0
  203. package/src/agents.ts +1097 -0
  204. package/src/agents.unit.test.ts +1736 -0
  205. package/src/anthropic-credential-guard.ts +44 -0
  206. package/src/anthropic-credential-guard.unit.test.ts +88 -0
  207. package/src/anthropic-federated-token-provider.integration.test.ts +248 -0
  208. package/src/anthropic-federated-token-provider.ts +249 -0
  209. package/src/anthropic-identity-client.fixtures.ts +237 -0
  210. package/src/anthropic-identity-client.integration.test.ts +342 -0
  211. package/src/anthropic-identity-client.ts +473 -0
  212. package/src/anthropic-identity-fixture-spec.integration.test.ts +169 -0
  213. package/src/anthropic-identity-name.integration.test.ts +83 -0
  214. package/src/anthropic-identity-name.ts +163 -0
  215. package/src/anthropic-identity-name.unit.test.ts +345 -0
  216. package/src/anthropic-openapi-contract.fixtures.ts +192 -0
  217. package/src/api-auth.ts +383 -0
  218. package/src/api-auth.unit.test.ts +837 -0
  219. package/src/api.smoke.test.ts +1225 -0
  220. package/src/api.ts +376 -0
  221. package/src/attachment-validation.ts +124 -0
  222. package/src/attachment-validation.unit.test.ts +218 -0
  223. package/src/caller-scope.ts +131 -0
  224. package/src/caller-scope.unit.test.ts +116 -0
  225. package/src/chat-credential-config.ts +22 -0
  226. package/src/chat-credentials-logging.unit.test.ts +92 -0
  227. package/src/chat-markers.ts +114 -0
  228. package/src/chat-markers.unit.test.ts +116 -0
  229. package/src/chat-service-provisioning-client.integration.test.ts +412 -0
  230. package/src/chat-service-provisioning-client.ts +221 -0
  231. package/src/chat.smoke.test.ts +1875 -0
  232. package/src/clock.ts +47 -0
  233. package/src/coding-task-store-provisioning-client.integration.test.ts +372 -0
  234. package/src/coding-task-store-provisioning-client.ts +156 -0
  235. package/src/crypto.ts +83 -0
  236. package/src/dev-auth-guard.ts +29 -0
  237. package/src/dev-auth-guard.unit.test.ts +51 -0
  238. package/src/errors.ts +77 -0
  239. package/src/errors.unit.test.ts +52 -0
  240. package/src/fixtures/anthropic-identity-recorded-fixtures.json +850 -0
  241. package/src/fixtures/anthropic-openapi/SDK_VERSION +1 -0
  242. package/src/fixtures/anthropic-openapi/mock-spec.json.gz +0 -0
  243. package/src/fixtures/chat-service-provisioning-cassette.json +156 -0
  244. package/src/fixtures/github-app-manifest-cassette.json +44 -0
  245. package/src/fixtures/google-auth-cassette.json +36 -0
  246. package/src/fixtures/http-chat-client-cassette.json +226 -0
  247. package/src/fixtures/k8s-cassette.json +470 -0
  248. package/src/fixtures/okta-auth-cassette.json +36 -0
  249. package/src/fixtures/slack-provision-cassette.json +12 -0
  250. package/src/fixtures/slack-provisioning-http-cassette.json +98 -0
  251. package/src/fixtures/task-store-provisioning-cassette.json +85 -0
  252. package/src/github-app-provisioning-client.integration.test.ts +149 -0
  253. package/src/github-app-provisioning-client.ts +161 -0
  254. package/src/github-app-provisioning-client.unit.test.ts +114 -0
  255. package/src/github-provisioning-service.ts +569 -0
  256. package/src/github-provisioning-service.unit.test.ts +123 -0
  257. package/src/google-auth-client.integration.test.ts +195 -0
  258. package/src/google-auth-client.ts +121 -0
  259. package/src/http-chat-client.integration.test.ts +554 -0
  260. package/src/http-chat-client.ts +533 -0
  261. package/src/http-chat-client.unit.test.ts +119 -0
  262. package/src/import-boundary.unit.test.ts +240 -0
  263. package/src/kubernetes-client.integration.test.ts +697 -0
  264. package/src/kubernetes-client.ts +1027 -0
  265. package/src/kubernetes-client.unit.test.ts +726 -0
  266. package/src/main.smoke.test.ts +91 -0
  267. package/src/main.ts +21 -0
  268. package/src/main.unit.test.ts +801 -0
  269. package/src/okta-auth-client.integration.test.ts +263 -0
  270. package/src/okta-auth-client.ts +152 -0
  271. package/src/openapi-schemas.ts +1310 -0
  272. package/src/openapi-schemas.unit.test.ts +348 -0
  273. package/src/per-agent-identity.fixtures.ts +305 -0
  274. package/src/platform-doc-route.ts +40 -0
  275. package/src/prisma-client.integration.test.ts +57 -0
  276. package/src/prisma-client.ts +187 -0
  277. package/src/prisma-client.unit.test.ts +178 -0
  278. package/src/prisma-tx.ts +23 -0
  279. package/src/push-content.ts +177 -0
  280. package/src/push-content.unit.test.ts +213 -0
  281. package/src/push-crypto.ts +135 -0
  282. package/src/push-crypto.unit.test.ts +66 -0
  283. package/src/push-sender.ts +169 -0
  284. package/src/push-sender.unit.test.ts +107 -0
  285. package/src/push-service.ts +332 -0
  286. package/src/push-service.unit.test.ts +679 -0
  287. package/src/push-toggle.ts +135 -0
  288. package/src/push-toggle.unit.test.ts +78 -0
  289. package/src/pwa-https-gating.smoke.test.ts +229 -0
  290. package/src/pwa-icons.unit.test.ts +41 -0
  291. package/src/pwa-routes.smoke.test.ts +276 -0
  292. package/src/pwa.ts +380 -0
  293. package/src/pwa.unit.test.ts +321 -0
  294. package/src/schema.unit.test.ts +122 -0
  295. package/src/self-serve-config.ts +52 -0
  296. package/src/self-serve-config.unit.test.ts +79 -0
  297. package/src/server.smoke.test.ts +273 -0
  298. package/src/server.ts +50 -0
  299. package/src/service-integration.ts +67 -0
  300. package/src/service-integration.unit.test.ts +129 -0
  301. package/src/slack-provisioning-client.integration.test.ts +308 -0
  302. package/src/slack-provisioning-client.ts +411 -0
  303. package/src/slack-provisioning-client.unit.test.ts +80 -0
  304. package/src/slack-provisioning-service.integration.test.ts +637 -0
  305. package/src/slack-provisioning-service.ts +451 -0
  306. package/src/slack-provisioning.integration.test.ts +395 -0
  307. package/src/specialty-manifest-loader.fixture.integration.test.ts +63 -0
  308. package/src/specialty-manifest-loader.ts +255 -0
  309. package/src/specialty-manifest-loader.unit.test.ts +301 -0
  310. package/src/specialty-registry.schema.unit.test.ts +35 -0
  311. package/src/specialty-registry.ts +236 -0
  312. package/src/specialty-registry.unit.test.ts +272 -0
  313. package/src/startup-policy-reconcile.ts +77 -0
  314. package/src/startup-policy-reconcile.unit.test.ts +251 -0
  315. package/src/theme-tokens.json +12 -0
  316. package/src/token-crypto.ts +60 -0
  317. package/src/token-crypto.unit.test.ts +182 -0
  318. package/src/trial-expiry-sweeper.integration.test.ts +318 -0
  319. package/src/trial-expiry-sweeper.ts +132 -0
  320. package/src/trial-expiry-sweeper.unit.test.ts +391 -0
  321. package/src/trial-expiry-warning-sweeper.integration.test.ts +468 -0
  322. package/src/trial-expiry-warning-sweeper.ts +447 -0
  323. package/src/trial-expiry-warning-sweeper.unit.test.ts +148 -0
  324. package/src/voice-contract.unit.test.ts +102 -0
  325. package/tsconfig.json +9 -0
@@ -0,0 +1,1187 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
+ /* eslint-disable */
4
+ // biome-ignore-all lint: generated file
5
+ // @ts-nocheck
6
+ /*
7
+ * This file exports the `SessionFollow` model and its related types.
8
+ *
9
+ * 🟢 You can import this file directly.
10
+ */
11
+ import type * as runtime from "@prisma/client/runtime/client"
12
+ import type * as $Enums from "../enums.ts"
13
+ import type * as Prisma from "../internal/prismaNamespace.ts"
14
+
15
+ /**
16
+ * Model SessionFollow
17
+ *
18
+ */
19
+ export type SessionFollowModel = runtime.Types.Result.DefaultSelection<Prisma.$SessionFollowPayload>
20
+
21
+ export type AggregateSessionFollow = {
22
+ _count: SessionFollowCountAggregateOutputType | null
23
+ _min: SessionFollowMinAggregateOutputType | null
24
+ _max: SessionFollowMaxAggregateOutputType | null
25
+ }
26
+
27
+ export type SessionFollowMinAggregateOutputType = {
28
+ id: string | null
29
+ userEmail: string | null
30
+ sessionSlug: string | null
31
+ muted: boolean | null
32
+ createdAt: Date | null
33
+ updatedAt: Date | null
34
+ }
35
+
36
+ export type SessionFollowMaxAggregateOutputType = {
37
+ id: string | null
38
+ userEmail: string | null
39
+ sessionSlug: string | null
40
+ muted: boolean | null
41
+ createdAt: Date | null
42
+ updatedAt: Date | null
43
+ }
44
+
45
+ export type SessionFollowCountAggregateOutputType = {
46
+ id: number
47
+ userEmail: number
48
+ sessionSlug: number
49
+ muted: number
50
+ createdAt: number
51
+ updatedAt: number
52
+ _all: number
53
+ }
54
+
55
+
56
+ export type SessionFollowMinAggregateInputType = {
57
+ id?: true
58
+ userEmail?: true
59
+ sessionSlug?: true
60
+ muted?: true
61
+ createdAt?: true
62
+ updatedAt?: true
63
+ }
64
+
65
+ export type SessionFollowMaxAggregateInputType = {
66
+ id?: true
67
+ userEmail?: true
68
+ sessionSlug?: true
69
+ muted?: true
70
+ createdAt?: true
71
+ updatedAt?: true
72
+ }
73
+
74
+ export type SessionFollowCountAggregateInputType = {
75
+ id?: true
76
+ userEmail?: true
77
+ sessionSlug?: true
78
+ muted?: true
79
+ createdAt?: true
80
+ updatedAt?: true
81
+ _all?: true
82
+ }
83
+
84
+ export type SessionFollowAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
85
+ /**
86
+ * Filter which SessionFollow to aggregate.
87
+ */
88
+ where?: Prisma.SessionFollowWhereInput
89
+ /**
90
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
91
+ *
92
+ * Determine the order of SessionFollows to fetch.
93
+ */
94
+ orderBy?: Prisma.SessionFollowOrderByWithRelationInput | Prisma.SessionFollowOrderByWithRelationInput[]
95
+ /**
96
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
97
+ *
98
+ * Sets the start position
99
+ */
100
+ cursor?: Prisma.SessionFollowWhereUniqueInput
101
+ /**
102
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
103
+ *
104
+ * Take `±n` SessionFollows from the position of the cursor.
105
+ */
106
+ take?: number
107
+ /**
108
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
109
+ *
110
+ * Skip the first `n` SessionFollows.
111
+ */
112
+ skip?: number
113
+ /**
114
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
115
+ *
116
+ * Count returned SessionFollows
117
+ **/
118
+ _count?: true | SessionFollowCountAggregateInputType
119
+ /**
120
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
121
+ *
122
+ * Select which fields to find the minimum value
123
+ **/
124
+ _min?: SessionFollowMinAggregateInputType
125
+ /**
126
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
127
+ *
128
+ * Select which fields to find the maximum value
129
+ **/
130
+ _max?: SessionFollowMaxAggregateInputType
131
+ }
132
+
133
+ export type GetSessionFollowAggregateType<T extends SessionFollowAggregateArgs> = {
134
+ [P in keyof T & keyof AggregateSessionFollow]: P extends '_count' | 'count'
135
+ ? T[P] extends true
136
+ ? number
137
+ : Prisma.GetScalarType<T[P], AggregateSessionFollow[P]>
138
+ : Prisma.GetScalarType<T[P], AggregateSessionFollow[P]>
139
+ }
140
+
141
+
142
+
143
+
144
+ export type SessionFollowGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
145
+ where?: Prisma.SessionFollowWhereInput
146
+ orderBy?: Prisma.SessionFollowOrderByWithAggregationInput | Prisma.SessionFollowOrderByWithAggregationInput[]
147
+ by: Prisma.SessionFollowScalarFieldEnum[] | Prisma.SessionFollowScalarFieldEnum
148
+ having?: Prisma.SessionFollowScalarWhereWithAggregatesInput
149
+ take?: number
150
+ skip?: number
151
+ _count?: SessionFollowCountAggregateInputType | true
152
+ _min?: SessionFollowMinAggregateInputType
153
+ _max?: SessionFollowMaxAggregateInputType
154
+ }
155
+
156
+ export type SessionFollowGroupByOutputType = {
157
+ id: string
158
+ userEmail: string
159
+ sessionSlug: string
160
+ muted: boolean
161
+ createdAt: Date
162
+ updatedAt: Date
163
+ _count: SessionFollowCountAggregateOutputType | null
164
+ _min: SessionFollowMinAggregateOutputType | null
165
+ _max: SessionFollowMaxAggregateOutputType | null
166
+ }
167
+
168
+ export type GetSessionFollowGroupByPayload<T extends SessionFollowGroupByArgs> = Prisma.PrismaPromise<
169
+ Array<
170
+ Prisma.PickEnumerable<SessionFollowGroupByOutputType, T['by']> &
171
+ {
172
+ [P in ((keyof T) & (keyof SessionFollowGroupByOutputType))]: P extends '_count'
173
+ ? T[P] extends boolean
174
+ ? number
175
+ : Prisma.GetScalarType<T[P], SessionFollowGroupByOutputType[P]>
176
+ : Prisma.GetScalarType<T[P], SessionFollowGroupByOutputType[P]>
177
+ }
178
+ >
179
+ >
180
+
181
+
182
+
183
+ export type SessionFollowWhereInput = {
184
+ AND?: Prisma.SessionFollowWhereInput | Prisma.SessionFollowWhereInput[]
185
+ OR?: Prisma.SessionFollowWhereInput[]
186
+ NOT?: Prisma.SessionFollowWhereInput | Prisma.SessionFollowWhereInput[]
187
+ id?: Prisma.StringFilter<"SessionFollow"> | string
188
+ userEmail?: Prisma.StringFilter<"SessionFollow"> | string
189
+ sessionSlug?: Prisma.StringFilter<"SessionFollow"> | string
190
+ muted?: Prisma.BoolFilter<"SessionFollow"> | boolean
191
+ createdAt?: Prisma.DateTimeFilter<"SessionFollow"> | Date | string
192
+ updatedAt?: Prisma.DateTimeFilter<"SessionFollow"> | Date | string
193
+ }
194
+
195
+ export type SessionFollowOrderByWithRelationInput = {
196
+ id?: Prisma.SortOrder
197
+ userEmail?: Prisma.SortOrder
198
+ sessionSlug?: Prisma.SortOrder
199
+ muted?: Prisma.SortOrder
200
+ createdAt?: Prisma.SortOrder
201
+ updatedAt?: Prisma.SortOrder
202
+ }
203
+
204
+ export type SessionFollowWhereUniqueInput = Prisma.AtLeast<{
205
+ id?: string
206
+ userEmail_sessionSlug?: Prisma.SessionFollowUserEmailSessionSlugCompoundUniqueInput
207
+ AND?: Prisma.SessionFollowWhereInput | Prisma.SessionFollowWhereInput[]
208
+ OR?: Prisma.SessionFollowWhereInput[]
209
+ NOT?: Prisma.SessionFollowWhereInput | Prisma.SessionFollowWhereInput[]
210
+ userEmail?: Prisma.StringFilter<"SessionFollow"> | string
211
+ sessionSlug?: Prisma.StringFilter<"SessionFollow"> | string
212
+ muted?: Prisma.BoolFilter<"SessionFollow"> | boolean
213
+ createdAt?: Prisma.DateTimeFilter<"SessionFollow"> | Date | string
214
+ updatedAt?: Prisma.DateTimeFilter<"SessionFollow"> | Date | string
215
+ }, "id" | "userEmail_sessionSlug">
216
+
217
+ export type SessionFollowOrderByWithAggregationInput = {
218
+ id?: Prisma.SortOrder
219
+ userEmail?: Prisma.SortOrder
220
+ sessionSlug?: Prisma.SortOrder
221
+ muted?: Prisma.SortOrder
222
+ createdAt?: Prisma.SortOrder
223
+ updatedAt?: Prisma.SortOrder
224
+ _count?: Prisma.SessionFollowCountOrderByAggregateInput
225
+ _max?: Prisma.SessionFollowMaxOrderByAggregateInput
226
+ _min?: Prisma.SessionFollowMinOrderByAggregateInput
227
+ }
228
+
229
+ export type SessionFollowScalarWhereWithAggregatesInput = {
230
+ AND?: Prisma.SessionFollowScalarWhereWithAggregatesInput | Prisma.SessionFollowScalarWhereWithAggregatesInput[]
231
+ OR?: Prisma.SessionFollowScalarWhereWithAggregatesInput[]
232
+ NOT?: Prisma.SessionFollowScalarWhereWithAggregatesInput | Prisma.SessionFollowScalarWhereWithAggregatesInput[]
233
+ id?: Prisma.StringWithAggregatesFilter<"SessionFollow"> | string
234
+ userEmail?: Prisma.StringWithAggregatesFilter<"SessionFollow"> | string
235
+ sessionSlug?: Prisma.StringWithAggregatesFilter<"SessionFollow"> | string
236
+ muted?: Prisma.BoolWithAggregatesFilter<"SessionFollow"> | boolean
237
+ createdAt?: Prisma.DateTimeWithAggregatesFilter<"SessionFollow"> | Date | string
238
+ updatedAt?: Prisma.DateTimeWithAggregatesFilter<"SessionFollow"> | Date | string
239
+ }
240
+
241
+ export type SessionFollowCreateInput = {
242
+ id?: string
243
+ userEmail: string
244
+ sessionSlug: string
245
+ muted?: boolean
246
+ createdAt?: Date | string
247
+ updatedAt?: Date | string
248
+ }
249
+
250
+ export type SessionFollowUncheckedCreateInput = {
251
+ id?: string
252
+ userEmail: string
253
+ sessionSlug: string
254
+ muted?: boolean
255
+ createdAt?: Date | string
256
+ updatedAt?: Date | string
257
+ }
258
+
259
+ export type SessionFollowUpdateInput = {
260
+ id?: Prisma.StringFieldUpdateOperationsInput | string
261
+ userEmail?: Prisma.StringFieldUpdateOperationsInput | string
262
+ sessionSlug?: Prisma.StringFieldUpdateOperationsInput | string
263
+ muted?: Prisma.BoolFieldUpdateOperationsInput | boolean
264
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
265
+ updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
266
+ }
267
+
268
+ export type SessionFollowUncheckedUpdateInput = {
269
+ id?: Prisma.StringFieldUpdateOperationsInput | string
270
+ userEmail?: Prisma.StringFieldUpdateOperationsInput | string
271
+ sessionSlug?: Prisma.StringFieldUpdateOperationsInput | string
272
+ muted?: Prisma.BoolFieldUpdateOperationsInput | boolean
273
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
274
+ updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
275
+ }
276
+
277
+ export type SessionFollowCreateManyInput = {
278
+ id?: string
279
+ userEmail: string
280
+ sessionSlug: string
281
+ muted?: boolean
282
+ createdAt?: Date | string
283
+ updatedAt?: Date | string
284
+ }
285
+
286
+ export type SessionFollowUpdateManyMutationInput = {
287
+ id?: Prisma.StringFieldUpdateOperationsInput | string
288
+ userEmail?: Prisma.StringFieldUpdateOperationsInput | string
289
+ sessionSlug?: Prisma.StringFieldUpdateOperationsInput | string
290
+ muted?: Prisma.BoolFieldUpdateOperationsInput | boolean
291
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
292
+ updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
293
+ }
294
+
295
+ export type SessionFollowUncheckedUpdateManyInput = {
296
+ id?: Prisma.StringFieldUpdateOperationsInput | string
297
+ userEmail?: Prisma.StringFieldUpdateOperationsInput | string
298
+ sessionSlug?: Prisma.StringFieldUpdateOperationsInput | string
299
+ muted?: Prisma.BoolFieldUpdateOperationsInput | boolean
300
+ createdAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
301
+ updatedAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
302
+ }
303
+
304
+ export type SessionFollowUserEmailSessionSlugCompoundUniqueInput = {
305
+ userEmail: string
306
+ sessionSlug: string
307
+ }
308
+
309
+ export type SessionFollowCountOrderByAggregateInput = {
310
+ id?: Prisma.SortOrder
311
+ userEmail?: Prisma.SortOrder
312
+ sessionSlug?: Prisma.SortOrder
313
+ muted?: Prisma.SortOrder
314
+ createdAt?: Prisma.SortOrder
315
+ updatedAt?: Prisma.SortOrder
316
+ }
317
+
318
+ export type SessionFollowMaxOrderByAggregateInput = {
319
+ id?: Prisma.SortOrder
320
+ userEmail?: Prisma.SortOrder
321
+ sessionSlug?: Prisma.SortOrder
322
+ muted?: Prisma.SortOrder
323
+ createdAt?: Prisma.SortOrder
324
+ updatedAt?: Prisma.SortOrder
325
+ }
326
+
327
+ export type SessionFollowMinOrderByAggregateInput = {
328
+ id?: Prisma.SortOrder
329
+ userEmail?: Prisma.SortOrder
330
+ sessionSlug?: Prisma.SortOrder
331
+ muted?: Prisma.SortOrder
332
+ createdAt?: Prisma.SortOrder
333
+ updatedAt?: Prisma.SortOrder
334
+ }
335
+
336
+ export type BoolFieldUpdateOperationsInput = {
337
+ set?: boolean
338
+ }
339
+
340
+
341
+
342
+ export type SessionFollowSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
343
+ id?: boolean
344
+ userEmail?: boolean
345
+ sessionSlug?: boolean
346
+ muted?: boolean
347
+ createdAt?: boolean
348
+ updatedAt?: boolean
349
+ }, ExtArgs["result"]["sessionFollow"]>
350
+
351
+ export type SessionFollowSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
352
+ id?: boolean
353
+ userEmail?: boolean
354
+ sessionSlug?: boolean
355
+ muted?: boolean
356
+ createdAt?: boolean
357
+ updatedAt?: boolean
358
+ }, ExtArgs["result"]["sessionFollow"]>
359
+
360
+ export type SessionFollowSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
361
+ id?: boolean
362
+ userEmail?: boolean
363
+ sessionSlug?: boolean
364
+ muted?: boolean
365
+ createdAt?: boolean
366
+ updatedAt?: boolean
367
+ }, ExtArgs["result"]["sessionFollow"]>
368
+
369
+ export type SessionFollowSelectScalar = {
370
+ id?: boolean
371
+ userEmail?: boolean
372
+ sessionSlug?: boolean
373
+ muted?: boolean
374
+ createdAt?: boolean
375
+ updatedAt?: boolean
376
+ }
377
+
378
+ export type SessionFollowOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "userEmail" | "sessionSlug" | "muted" | "createdAt" | "updatedAt", ExtArgs["result"]["sessionFollow"]>
379
+
380
+ export type $SessionFollowPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
381
+ name: "SessionFollow"
382
+ objects: {}
383
+ scalars: runtime.Types.Extensions.GetPayloadResult<{
384
+ id: string
385
+ userEmail: string
386
+ sessionSlug: string
387
+ muted: boolean
388
+ createdAt: Date
389
+ updatedAt: Date
390
+ }, ExtArgs["result"]["sessionFollow"]>
391
+ composites: {}
392
+ }
393
+
394
+ export type SessionFollowGetPayload<S extends boolean | null | undefined | SessionFollowDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload, S>
395
+
396
+ export type SessionFollowCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> =
397
+ Omit<SessionFollowFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
398
+ select?: SessionFollowCountAggregateInputType | true
399
+ }
400
+
401
+ export interface SessionFollowDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
402
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['SessionFollow'], meta: { name: 'SessionFollow' } }
403
+ /**
404
+ * Find zero or one SessionFollow that matches the filter.
405
+ * @param {SessionFollowFindUniqueArgs} args - Arguments to find a SessionFollow
406
+ * @example
407
+ * // Get one SessionFollow
408
+ * const sessionFollow = await prisma.sessionFollow.findUnique({
409
+ * where: {
410
+ * // ... provide filter here
411
+ * }
412
+ * })
413
+ */
414
+ findUnique<T extends SessionFollowFindUniqueArgs>(args: Prisma.SelectSubset<T, SessionFollowFindUniqueArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
415
+
416
+ /**
417
+ * Find one SessionFollow that matches the filter or throw an error with `error.code='P2025'`
418
+ * if no matches were found.
419
+ * @param {SessionFollowFindUniqueOrThrowArgs} args - Arguments to find a SessionFollow
420
+ * @example
421
+ * // Get one SessionFollow
422
+ * const sessionFollow = await prisma.sessionFollow.findUniqueOrThrow({
423
+ * where: {
424
+ * // ... provide filter here
425
+ * }
426
+ * })
427
+ */
428
+ findUniqueOrThrow<T extends SessionFollowFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, SessionFollowFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
429
+
430
+ /**
431
+ * Find the first SessionFollow that matches the filter.
432
+ * Note, that providing `undefined` is treated as the value not being there.
433
+ * Read more here: https://pris.ly/d/null-undefined
434
+ * @param {SessionFollowFindFirstArgs} args - Arguments to find a SessionFollow
435
+ * @example
436
+ * // Get one SessionFollow
437
+ * const sessionFollow = await prisma.sessionFollow.findFirst({
438
+ * where: {
439
+ * // ... provide filter here
440
+ * }
441
+ * })
442
+ */
443
+ findFirst<T extends SessionFollowFindFirstArgs>(args?: Prisma.SelectSubset<T, SessionFollowFindFirstArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
444
+
445
+ /**
446
+ * Find the first SessionFollow that matches the filter or
447
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
448
+ * Note, that providing `undefined` is treated as the value not being there.
449
+ * Read more here: https://pris.ly/d/null-undefined
450
+ * @param {SessionFollowFindFirstOrThrowArgs} args - Arguments to find a SessionFollow
451
+ * @example
452
+ * // Get one SessionFollow
453
+ * const sessionFollow = await prisma.sessionFollow.findFirstOrThrow({
454
+ * where: {
455
+ * // ... provide filter here
456
+ * }
457
+ * })
458
+ */
459
+ findFirstOrThrow<T extends SessionFollowFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, SessionFollowFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
460
+
461
+ /**
462
+ * Find zero or more SessionFollows that matches the filter.
463
+ * Note, that providing `undefined` is treated as the value not being there.
464
+ * Read more here: https://pris.ly/d/null-undefined
465
+ * @param {SessionFollowFindManyArgs} args - Arguments to filter and select certain fields only.
466
+ * @example
467
+ * // Get all SessionFollows
468
+ * const sessionFollows = await prisma.sessionFollow.findMany()
469
+ *
470
+ * // Get first 10 SessionFollows
471
+ * const sessionFollows = await prisma.sessionFollow.findMany({ take: 10 })
472
+ *
473
+ * // Only select the `id`
474
+ * const sessionFollowWithIdOnly = await prisma.sessionFollow.findMany({ select: { id: true } })
475
+ *
476
+ */
477
+ findMany<T extends SessionFollowFindManyArgs>(args?: Prisma.SelectSubset<T, SessionFollowFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
478
+
479
+ /**
480
+ * Create a SessionFollow.
481
+ * @param {SessionFollowCreateArgs} args - Arguments to create a SessionFollow.
482
+ * @example
483
+ * // Create one SessionFollow
484
+ * const SessionFollow = await prisma.sessionFollow.create({
485
+ * data: {
486
+ * // ... data to create a SessionFollow
487
+ * }
488
+ * })
489
+ *
490
+ */
491
+ create<T extends SessionFollowCreateArgs>(args: Prisma.SelectSubset<T, SessionFollowCreateArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
492
+
493
+ /**
494
+ * Create many SessionFollows.
495
+ * @param {SessionFollowCreateManyArgs} args - Arguments to create many SessionFollows.
496
+ * @example
497
+ * // Create many SessionFollows
498
+ * const sessionFollow = await prisma.sessionFollow.createMany({
499
+ * data: [
500
+ * // ... provide data here
501
+ * ]
502
+ * })
503
+ *
504
+ */
505
+ createMany<T extends SessionFollowCreateManyArgs>(args?: Prisma.SelectSubset<T, SessionFollowCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
506
+
507
+ /**
508
+ * Create many SessionFollows and returns the data saved in the database.
509
+ * @param {SessionFollowCreateManyAndReturnArgs} args - Arguments to create many SessionFollows.
510
+ * @example
511
+ * // Create many SessionFollows
512
+ * const sessionFollow = await prisma.sessionFollow.createManyAndReturn({
513
+ * data: [
514
+ * // ... provide data here
515
+ * ]
516
+ * })
517
+ *
518
+ * // Create many SessionFollows and only return the `id`
519
+ * const sessionFollowWithIdOnly = await prisma.sessionFollow.createManyAndReturn({
520
+ * select: { id: true },
521
+ * data: [
522
+ * // ... provide data here
523
+ * ]
524
+ * })
525
+ * Note, that providing `undefined` is treated as the value not being there.
526
+ * Read more here: https://pris.ly/d/null-undefined
527
+ *
528
+ */
529
+ createManyAndReturn<T extends SessionFollowCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, SessionFollowCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
530
+
531
+ /**
532
+ * Delete a SessionFollow.
533
+ * @param {SessionFollowDeleteArgs} args - Arguments to delete one SessionFollow.
534
+ * @example
535
+ * // Delete one SessionFollow
536
+ * const SessionFollow = await prisma.sessionFollow.delete({
537
+ * where: {
538
+ * // ... filter to delete one SessionFollow
539
+ * }
540
+ * })
541
+ *
542
+ */
543
+ delete<T extends SessionFollowDeleteArgs>(args: Prisma.SelectSubset<T, SessionFollowDeleteArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
544
+
545
+ /**
546
+ * Update one SessionFollow.
547
+ * @param {SessionFollowUpdateArgs} args - Arguments to update one SessionFollow.
548
+ * @example
549
+ * // Update one SessionFollow
550
+ * const sessionFollow = await prisma.sessionFollow.update({
551
+ * where: {
552
+ * // ... provide filter here
553
+ * },
554
+ * data: {
555
+ * // ... provide data here
556
+ * }
557
+ * })
558
+ *
559
+ */
560
+ update<T extends SessionFollowUpdateArgs>(args: Prisma.SelectSubset<T, SessionFollowUpdateArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
561
+
562
+ /**
563
+ * Delete zero or more SessionFollows.
564
+ * @param {SessionFollowDeleteManyArgs} args - Arguments to filter SessionFollows to delete.
565
+ * @example
566
+ * // Delete a few SessionFollows
567
+ * const { count } = await prisma.sessionFollow.deleteMany({
568
+ * where: {
569
+ * // ... provide filter here
570
+ * }
571
+ * })
572
+ *
573
+ */
574
+ deleteMany<T extends SessionFollowDeleteManyArgs>(args?: Prisma.SelectSubset<T, SessionFollowDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
575
+
576
+ /**
577
+ * Update zero or more SessionFollows.
578
+ * Note, that providing `undefined` is treated as the value not being there.
579
+ * Read more here: https://pris.ly/d/null-undefined
580
+ * @param {SessionFollowUpdateManyArgs} args - Arguments to update one or more rows.
581
+ * @example
582
+ * // Update many SessionFollows
583
+ * const sessionFollow = await prisma.sessionFollow.updateMany({
584
+ * where: {
585
+ * // ... provide filter here
586
+ * },
587
+ * data: {
588
+ * // ... provide data here
589
+ * }
590
+ * })
591
+ *
592
+ */
593
+ updateMany<T extends SessionFollowUpdateManyArgs>(args: Prisma.SelectSubset<T, SessionFollowUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
594
+
595
+ /**
596
+ * Update zero or more SessionFollows and returns the data updated in the database.
597
+ * @param {SessionFollowUpdateManyAndReturnArgs} args - Arguments to update many SessionFollows.
598
+ * @example
599
+ * // Update many SessionFollows
600
+ * const sessionFollow = await prisma.sessionFollow.updateManyAndReturn({
601
+ * where: {
602
+ * // ... provide filter here
603
+ * },
604
+ * data: [
605
+ * // ... provide data here
606
+ * ]
607
+ * })
608
+ *
609
+ * // Update zero or more SessionFollows and only return the `id`
610
+ * const sessionFollowWithIdOnly = await prisma.sessionFollow.updateManyAndReturn({
611
+ * select: { id: true },
612
+ * where: {
613
+ * // ... provide filter here
614
+ * },
615
+ * data: [
616
+ * // ... provide data here
617
+ * ]
618
+ * })
619
+ * Note, that providing `undefined` is treated as the value not being there.
620
+ * Read more here: https://pris.ly/d/null-undefined
621
+ *
622
+ */
623
+ updateManyAndReturn<T extends SessionFollowUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, SessionFollowUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
624
+
625
+ /**
626
+ * Create or update one SessionFollow.
627
+ * @param {SessionFollowUpsertArgs} args - Arguments to update or create a SessionFollow.
628
+ * @example
629
+ * // Update or create a SessionFollow
630
+ * const sessionFollow = await prisma.sessionFollow.upsert({
631
+ * create: {
632
+ * // ... data to create a SessionFollow
633
+ * },
634
+ * update: {
635
+ * // ... in case it already exists, update
636
+ * },
637
+ * where: {
638
+ * // ... the filter for the SessionFollow we want to update
639
+ * }
640
+ * })
641
+ */
642
+ upsert<T extends SessionFollowUpsertArgs>(args: Prisma.SelectSubset<T, SessionFollowUpsertArgs<ExtArgs>>): Prisma.Prisma__SessionFollowClient<runtime.Types.Result.GetResult<Prisma.$SessionFollowPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
643
+
644
+
645
+ /**
646
+ * Count the number of SessionFollows.
647
+ * Note, that providing `undefined` is treated as the value not being there.
648
+ * Read more here: https://pris.ly/d/null-undefined
649
+ * @param {SessionFollowCountArgs} args - Arguments to filter SessionFollows to count.
650
+ * @example
651
+ * // Count the number of SessionFollows
652
+ * const count = await prisma.sessionFollow.count({
653
+ * where: {
654
+ * // ... the filter for the SessionFollows we want to count
655
+ * }
656
+ * })
657
+ **/
658
+ count<T extends SessionFollowCountArgs>(
659
+ args?: Prisma.Subset<T, SessionFollowCountArgs>,
660
+ ): Prisma.PrismaPromise<
661
+ T extends runtime.Types.Utils.Record<'select', any>
662
+ ? T['select'] extends true
663
+ ? number
664
+ : Prisma.GetScalarType<T['select'], SessionFollowCountAggregateOutputType>
665
+ : number
666
+ >
667
+
668
+ /**
669
+ * Allows you to perform aggregations operations on a SessionFollow.
670
+ * Note, that providing `undefined` is treated as the value not being there.
671
+ * Read more here: https://pris.ly/d/null-undefined
672
+ * @param {SessionFollowAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
673
+ * @example
674
+ * // Ordered by age ascending
675
+ * // Where email contains prisma.io
676
+ * // Limited to the 10 users
677
+ * const aggregations = await prisma.user.aggregate({
678
+ * _avg: {
679
+ * age: true,
680
+ * },
681
+ * where: {
682
+ * email: {
683
+ * contains: "prisma.io",
684
+ * },
685
+ * },
686
+ * orderBy: {
687
+ * age: "asc",
688
+ * },
689
+ * take: 10,
690
+ * })
691
+ **/
692
+ aggregate<T extends SessionFollowAggregateArgs>(args: Prisma.Subset<T, SessionFollowAggregateArgs>): Prisma.PrismaPromise<GetSessionFollowAggregateType<T>>
693
+
694
+ /**
695
+ * Group by SessionFollow.
696
+ * Note, that providing `undefined` is treated as the value not being there.
697
+ * Read more here: https://pris.ly/d/null-undefined
698
+ * @param {SessionFollowGroupByArgs} args - Group by arguments.
699
+ * @example
700
+ * // Group by city, order by createdAt, get count
701
+ * const result = await prisma.user.groupBy({
702
+ * by: ['city', 'createdAt'],
703
+ * orderBy: {
704
+ * createdAt: true
705
+ * },
706
+ * _count: {
707
+ * _all: true
708
+ * },
709
+ * })
710
+ *
711
+ **/
712
+ groupBy<
713
+ T extends SessionFollowGroupByArgs,
714
+ HasSelectOrTake extends Prisma.Or<
715
+ Prisma.Extends<'skip', Prisma.Keys<T>>,
716
+ Prisma.Extends<'take', Prisma.Keys<T>>
717
+ >,
718
+ OrderByArg extends Prisma.True extends HasSelectOrTake
719
+ ? { orderBy: SessionFollowGroupByArgs['orderBy'] }
720
+ : { orderBy?: SessionFollowGroupByArgs['orderBy'] },
721
+ OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
722
+ ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
723
+ ByValid extends Prisma.Has<ByFields, OrderFields>,
724
+ HavingFields extends Prisma.GetHavingFields<T['having']>,
725
+ HavingValid extends Prisma.Has<ByFields, HavingFields>,
726
+ ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
727
+ InputErrors extends ByEmpty extends Prisma.True
728
+ ? `Error: "by" must not be empty.`
729
+ : HavingValid extends Prisma.False
730
+ ? {
731
+ [P in HavingFields]: P extends ByFields
732
+ ? never
733
+ : P extends string
734
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
735
+ : [
736
+ Error,
737
+ 'Field ',
738
+ P,
739
+ ` in "having" needs to be provided in "by"`,
740
+ ]
741
+ }[HavingFields]
742
+ : 'take' extends Prisma.Keys<T>
743
+ ? 'orderBy' extends Prisma.Keys<T>
744
+ ? ByValid extends Prisma.True
745
+ ? {}
746
+ : {
747
+ [P in OrderFields]: P extends ByFields
748
+ ? never
749
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
750
+ }[OrderFields]
751
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
752
+ : 'skip' extends Prisma.Keys<T>
753
+ ? 'orderBy' extends Prisma.Keys<T>
754
+ ? ByValid extends Prisma.True
755
+ ? {}
756
+ : {
757
+ [P in OrderFields]: P extends ByFields
758
+ ? never
759
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
760
+ }[OrderFields]
761
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
762
+ : ByValid extends Prisma.True
763
+ ? {}
764
+ : {
765
+ [P in OrderFields]: P extends ByFields
766
+ ? never
767
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
768
+ }[OrderFields]
769
+ >(args: Prisma.SubsetIntersection<T, SessionFollowGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetSessionFollowGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
770
+ /**
771
+ * Fields of the SessionFollow model
772
+ */
773
+ readonly fields: SessionFollowFieldRefs;
774
+ }
775
+
776
+ /**
777
+ * The delegate class that acts as a "Promise-like" for SessionFollow.
778
+ * Why is this prefixed with `Prisma__`?
779
+ * Because we want to prevent naming conflicts as mentioned in
780
+ * https://github.com/prisma/prisma-client-js/issues/707
781
+ */
782
+ export interface Prisma__SessionFollowClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
783
+ readonly [Symbol.toStringTag]: "PrismaPromise"
784
+ /**
785
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
786
+ * @param onfulfilled The callback to execute when the Promise is resolved.
787
+ * @param onrejected The callback to execute when the Promise is rejected.
788
+ * @returns A Promise for the completion of which ever callback is executed.
789
+ */
790
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): runtime.Types.Utils.JsPromise<TResult1 | TResult2>
791
+ /**
792
+ * Attaches a callback for only the rejection of the Promise.
793
+ * @param onrejected The callback to execute when the Promise is rejected.
794
+ * @returns A Promise for the completion of the callback.
795
+ */
796
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>
797
+ /**
798
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
799
+ * resolved value cannot be modified from the callback.
800
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
801
+ * @returns A Promise for the completion of the callback.
802
+ */
803
+ finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>
804
+ }
805
+
806
+
807
+
808
+
809
+ /**
810
+ * Fields of the SessionFollow model
811
+ */
812
+ export interface SessionFollowFieldRefs {
813
+ readonly id: Prisma.FieldRef<"SessionFollow", 'String'>
814
+ readonly userEmail: Prisma.FieldRef<"SessionFollow", 'String'>
815
+ readonly sessionSlug: Prisma.FieldRef<"SessionFollow", 'String'>
816
+ readonly muted: Prisma.FieldRef<"SessionFollow", 'Boolean'>
817
+ readonly createdAt: Prisma.FieldRef<"SessionFollow", 'DateTime'>
818
+ readonly updatedAt: Prisma.FieldRef<"SessionFollow", 'DateTime'>
819
+ }
820
+
821
+
822
+ // Custom InputTypes
823
+ /**
824
+ * SessionFollow findUnique
825
+ */
826
+ export type SessionFollowFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
827
+ /**
828
+ * Select specific fields to fetch from the SessionFollow
829
+ */
830
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
831
+ /**
832
+ * Omit specific fields from the SessionFollow
833
+ */
834
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
835
+ /**
836
+ * Filter, which SessionFollow to fetch.
837
+ */
838
+ where: Prisma.SessionFollowWhereUniqueInput
839
+ }
840
+
841
+ /**
842
+ * SessionFollow findUniqueOrThrow
843
+ */
844
+ export type SessionFollowFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
845
+ /**
846
+ * Select specific fields to fetch from the SessionFollow
847
+ */
848
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
849
+ /**
850
+ * Omit specific fields from the SessionFollow
851
+ */
852
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
853
+ /**
854
+ * Filter, which SessionFollow to fetch.
855
+ */
856
+ where: Prisma.SessionFollowWhereUniqueInput
857
+ }
858
+
859
+ /**
860
+ * SessionFollow findFirst
861
+ */
862
+ export type SessionFollowFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
863
+ /**
864
+ * Select specific fields to fetch from the SessionFollow
865
+ */
866
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
867
+ /**
868
+ * Omit specific fields from the SessionFollow
869
+ */
870
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
871
+ /**
872
+ * Filter, which SessionFollow to fetch.
873
+ */
874
+ where?: Prisma.SessionFollowWhereInput
875
+ /**
876
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
877
+ *
878
+ * Determine the order of SessionFollows to fetch.
879
+ */
880
+ orderBy?: Prisma.SessionFollowOrderByWithRelationInput | Prisma.SessionFollowOrderByWithRelationInput[]
881
+ /**
882
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
883
+ *
884
+ * Sets the position for searching for SessionFollows.
885
+ */
886
+ cursor?: Prisma.SessionFollowWhereUniqueInput
887
+ /**
888
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
889
+ *
890
+ * Take `±n` SessionFollows from the position of the cursor.
891
+ */
892
+ take?: number
893
+ /**
894
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
895
+ *
896
+ * Skip the first `n` SessionFollows.
897
+ */
898
+ skip?: number
899
+ /**
900
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
901
+ *
902
+ * Filter by unique combinations of SessionFollows.
903
+ */
904
+ distinct?: Prisma.SessionFollowScalarFieldEnum | Prisma.SessionFollowScalarFieldEnum[]
905
+ }
906
+
907
+ /**
908
+ * SessionFollow findFirstOrThrow
909
+ */
910
+ export type SessionFollowFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
911
+ /**
912
+ * Select specific fields to fetch from the SessionFollow
913
+ */
914
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
915
+ /**
916
+ * Omit specific fields from the SessionFollow
917
+ */
918
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
919
+ /**
920
+ * Filter, which SessionFollow to fetch.
921
+ */
922
+ where?: Prisma.SessionFollowWhereInput
923
+ /**
924
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
925
+ *
926
+ * Determine the order of SessionFollows to fetch.
927
+ */
928
+ orderBy?: Prisma.SessionFollowOrderByWithRelationInput | Prisma.SessionFollowOrderByWithRelationInput[]
929
+ /**
930
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
931
+ *
932
+ * Sets the position for searching for SessionFollows.
933
+ */
934
+ cursor?: Prisma.SessionFollowWhereUniqueInput
935
+ /**
936
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
937
+ *
938
+ * Take `±n` SessionFollows from the position of the cursor.
939
+ */
940
+ take?: number
941
+ /**
942
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
943
+ *
944
+ * Skip the first `n` SessionFollows.
945
+ */
946
+ skip?: number
947
+ /**
948
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
949
+ *
950
+ * Filter by unique combinations of SessionFollows.
951
+ */
952
+ distinct?: Prisma.SessionFollowScalarFieldEnum | Prisma.SessionFollowScalarFieldEnum[]
953
+ }
954
+
955
+ /**
956
+ * SessionFollow findMany
957
+ */
958
+ export type SessionFollowFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
959
+ /**
960
+ * Select specific fields to fetch from the SessionFollow
961
+ */
962
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
963
+ /**
964
+ * Omit specific fields from the SessionFollow
965
+ */
966
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
967
+ /**
968
+ * Filter, which SessionFollows to fetch.
969
+ */
970
+ where?: Prisma.SessionFollowWhereInput
971
+ /**
972
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
973
+ *
974
+ * Determine the order of SessionFollows to fetch.
975
+ */
976
+ orderBy?: Prisma.SessionFollowOrderByWithRelationInput | Prisma.SessionFollowOrderByWithRelationInput[]
977
+ /**
978
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
979
+ *
980
+ * Sets the position for listing SessionFollows.
981
+ */
982
+ cursor?: Prisma.SessionFollowWhereUniqueInput
983
+ /**
984
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
985
+ *
986
+ * Take `±n` SessionFollows from the position of the cursor.
987
+ */
988
+ take?: number
989
+ /**
990
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
991
+ *
992
+ * Skip the first `n` SessionFollows.
993
+ */
994
+ skip?: number
995
+ /**
996
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
997
+ *
998
+ * Filter by unique combinations of SessionFollows.
999
+ */
1000
+ distinct?: Prisma.SessionFollowScalarFieldEnum | Prisma.SessionFollowScalarFieldEnum[]
1001
+ }
1002
+
1003
+ /**
1004
+ * SessionFollow create
1005
+ */
1006
+ export type SessionFollowCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1007
+ /**
1008
+ * Select specific fields to fetch from the SessionFollow
1009
+ */
1010
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
1011
+ /**
1012
+ * Omit specific fields from the SessionFollow
1013
+ */
1014
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1015
+ /**
1016
+ * The data needed to create a SessionFollow.
1017
+ */
1018
+ data: Prisma.XOR<Prisma.SessionFollowCreateInput, Prisma.SessionFollowUncheckedCreateInput>
1019
+ }
1020
+
1021
+ /**
1022
+ * SessionFollow createMany
1023
+ */
1024
+ export type SessionFollowCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1025
+ /**
1026
+ * The data used to create many SessionFollows.
1027
+ */
1028
+ data: Prisma.SessionFollowCreateManyInput | Prisma.SessionFollowCreateManyInput[]
1029
+ skipDuplicates?: boolean
1030
+ }
1031
+
1032
+ /**
1033
+ * SessionFollow createManyAndReturn
1034
+ */
1035
+ export type SessionFollowCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1036
+ /**
1037
+ * Select specific fields to fetch from the SessionFollow
1038
+ */
1039
+ select?: Prisma.SessionFollowSelectCreateManyAndReturn<ExtArgs> | null
1040
+ /**
1041
+ * Omit specific fields from the SessionFollow
1042
+ */
1043
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1044
+ /**
1045
+ * The data used to create many SessionFollows.
1046
+ */
1047
+ data: Prisma.SessionFollowCreateManyInput | Prisma.SessionFollowCreateManyInput[]
1048
+ skipDuplicates?: boolean
1049
+ }
1050
+
1051
+ /**
1052
+ * SessionFollow update
1053
+ */
1054
+ export type SessionFollowUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1055
+ /**
1056
+ * Select specific fields to fetch from the SessionFollow
1057
+ */
1058
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
1059
+ /**
1060
+ * Omit specific fields from the SessionFollow
1061
+ */
1062
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1063
+ /**
1064
+ * The data needed to update a SessionFollow.
1065
+ */
1066
+ data: Prisma.XOR<Prisma.SessionFollowUpdateInput, Prisma.SessionFollowUncheckedUpdateInput>
1067
+ /**
1068
+ * Choose, which SessionFollow to update.
1069
+ */
1070
+ where: Prisma.SessionFollowWhereUniqueInput
1071
+ }
1072
+
1073
+ /**
1074
+ * SessionFollow updateMany
1075
+ */
1076
+ export type SessionFollowUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1077
+ /**
1078
+ * The data used to update SessionFollows.
1079
+ */
1080
+ data: Prisma.XOR<Prisma.SessionFollowUpdateManyMutationInput, Prisma.SessionFollowUncheckedUpdateManyInput>
1081
+ /**
1082
+ * Filter which SessionFollows to update
1083
+ */
1084
+ where?: Prisma.SessionFollowWhereInput
1085
+ /**
1086
+ * Limit how many SessionFollows to update.
1087
+ */
1088
+ limit?: number
1089
+ }
1090
+
1091
+ /**
1092
+ * SessionFollow updateManyAndReturn
1093
+ */
1094
+ export type SessionFollowUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1095
+ /**
1096
+ * Select specific fields to fetch from the SessionFollow
1097
+ */
1098
+ select?: Prisma.SessionFollowSelectUpdateManyAndReturn<ExtArgs> | null
1099
+ /**
1100
+ * Omit specific fields from the SessionFollow
1101
+ */
1102
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1103
+ /**
1104
+ * The data used to update SessionFollows.
1105
+ */
1106
+ data: Prisma.XOR<Prisma.SessionFollowUpdateManyMutationInput, Prisma.SessionFollowUncheckedUpdateManyInput>
1107
+ /**
1108
+ * Filter which SessionFollows to update
1109
+ */
1110
+ where?: Prisma.SessionFollowWhereInput
1111
+ /**
1112
+ * Limit how many SessionFollows to update.
1113
+ */
1114
+ limit?: number
1115
+ }
1116
+
1117
+ /**
1118
+ * SessionFollow upsert
1119
+ */
1120
+ export type SessionFollowUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1121
+ /**
1122
+ * Select specific fields to fetch from the SessionFollow
1123
+ */
1124
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
1125
+ /**
1126
+ * Omit specific fields from the SessionFollow
1127
+ */
1128
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1129
+ /**
1130
+ * The filter to search for the SessionFollow to update in case it exists.
1131
+ */
1132
+ where: Prisma.SessionFollowWhereUniqueInput
1133
+ /**
1134
+ * In case the SessionFollow found by the `where` argument doesn't exist, create a new SessionFollow with this data.
1135
+ */
1136
+ create: Prisma.XOR<Prisma.SessionFollowCreateInput, Prisma.SessionFollowUncheckedCreateInput>
1137
+ /**
1138
+ * In case the SessionFollow was found with the provided `where` argument, update it with this data.
1139
+ */
1140
+ update: Prisma.XOR<Prisma.SessionFollowUpdateInput, Prisma.SessionFollowUncheckedUpdateInput>
1141
+ }
1142
+
1143
+ /**
1144
+ * SessionFollow delete
1145
+ */
1146
+ export type SessionFollowDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1147
+ /**
1148
+ * Select specific fields to fetch from the SessionFollow
1149
+ */
1150
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
1151
+ /**
1152
+ * Omit specific fields from the SessionFollow
1153
+ */
1154
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1155
+ /**
1156
+ * Filter which SessionFollow to delete.
1157
+ */
1158
+ where: Prisma.SessionFollowWhereUniqueInput
1159
+ }
1160
+
1161
+ /**
1162
+ * SessionFollow deleteMany
1163
+ */
1164
+ export type SessionFollowDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1165
+ /**
1166
+ * Filter which SessionFollows to delete
1167
+ */
1168
+ where?: Prisma.SessionFollowWhereInput
1169
+ /**
1170
+ * Limit how many SessionFollows to delete.
1171
+ */
1172
+ limit?: number
1173
+ }
1174
+
1175
+ /**
1176
+ * SessionFollow without action
1177
+ */
1178
+ export type SessionFollowDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1179
+ /**
1180
+ * Select specific fields to fetch from the SessionFollow
1181
+ */
1182
+ select?: Prisma.SessionFollowSelect<ExtArgs> | null
1183
+ /**
1184
+ * Omit specific fields from the SessionFollow
1185
+ */
1186
+ omit?: Prisma.SessionFollowOmit<ExtArgs> | null
1187
+ }