@otto-assistant/bridge 0.4.92

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 (483) hide show
  1. package/bin.js +2 -0
  2. package/dist/agent-model.e2e.test.js +755 -0
  3. package/dist/ai-tool-to-genai.js +233 -0
  4. package/dist/ai-tool-to-genai.test.js +267 -0
  5. package/dist/ai-tool.js +6 -0
  6. package/dist/anthropic-auth-plugin.js +728 -0
  7. package/dist/anthropic-auth-plugin.test.js +125 -0
  8. package/dist/anthropic-auth-state.js +231 -0
  9. package/dist/bin.js +90 -0
  10. package/dist/channel-management.js +227 -0
  11. package/dist/cli-parsing.test.js +137 -0
  12. package/dist/cli-send-thread.e2e.test.js +356 -0
  13. package/dist/cli.js +3276 -0
  14. package/dist/commands/abort.js +65 -0
  15. package/dist/commands/action-buttons.js +245 -0
  16. package/dist/commands/add-project.js +113 -0
  17. package/dist/commands/agent.js +335 -0
  18. package/dist/commands/ask-question.js +274 -0
  19. package/dist/commands/btw.js +116 -0
  20. package/dist/commands/compact.js +120 -0
  21. package/dist/commands/context-usage.js +140 -0
  22. package/dist/commands/create-new-project.js +130 -0
  23. package/dist/commands/diff.js +63 -0
  24. package/dist/commands/file-upload.js +275 -0
  25. package/dist/commands/fork.js +220 -0
  26. package/dist/commands/gemini-apikey.js +70 -0
  27. package/dist/commands/login.js +885 -0
  28. package/dist/commands/mcp.js +239 -0
  29. package/dist/commands/memory-snapshot.js +24 -0
  30. package/dist/commands/mention-mode.js +44 -0
  31. package/dist/commands/merge-worktree.js +159 -0
  32. package/dist/commands/model-variant.js +364 -0
  33. package/dist/commands/model.js +776 -0
  34. package/dist/commands/new-worktree.js +366 -0
  35. package/dist/commands/paginated-select.js +57 -0
  36. package/dist/commands/permissions.js +274 -0
  37. package/dist/commands/queue.js +206 -0
  38. package/dist/commands/remove-project.js +115 -0
  39. package/dist/commands/restart-opencode-server.js +127 -0
  40. package/dist/commands/resume.js +149 -0
  41. package/dist/commands/run-command.js +79 -0
  42. package/dist/commands/screenshare.js +303 -0
  43. package/dist/commands/screenshare.test.js +20 -0
  44. package/dist/commands/session-id.js +78 -0
  45. package/dist/commands/session.js +176 -0
  46. package/dist/commands/share.js +80 -0
  47. package/dist/commands/tasks.js +205 -0
  48. package/dist/commands/types.js +2 -0
  49. package/dist/commands/undo-redo.js +305 -0
  50. package/dist/commands/unset-model.js +138 -0
  51. package/dist/commands/upgrade.js +42 -0
  52. package/dist/commands/user-command.js +155 -0
  53. package/dist/commands/verbosity.js +125 -0
  54. package/dist/commands/worktree-settings.js +43 -0
  55. package/dist/commands/worktrees.js +410 -0
  56. package/dist/condense-memory.js +33 -0
  57. package/dist/config.js +94 -0
  58. package/dist/context-awareness-plugin.js +363 -0
  59. package/dist/context-awareness-plugin.test.js +124 -0
  60. package/dist/critique-utils.js +95 -0
  61. package/dist/database.js +1310 -0
  62. package/dist/db.js +251 -0
  63. package/dist/db.test.js +138 -0
  64. package/dist/debounce-timeout.js +28 -0
  65. package/dist/debounced-process-flush.js +77 -0
  66. package/dist/discord-bot.js +1008 -0
  67. package/dist/discord-command-registration.js +524 -0
  68. package/dist/discord-urls.js +81 -0
  69. package/dist/discord-utils.js +591 -0
  70. package/dist/discord-utils.test.js +134 -0
  71. package/dist/errors.js +157 -0
  72. package/dist/escape-backticks.test.js +429 -0
  73. package/dist/event-stream-real-capture.e2e.test.js +533 -0
  74. package/dist/eventsource-parser.test.js +327 -0
  75. package/dist/exec-async.js +26 -0
  76. package/dist/external-opencode-sync.js +480 -0
  77. package/dist/format-tables.js +302 -0
  78. package/dist/format-tables.test.js +308 -0
  79. package/dist/forum-sync/config.js +79 -0
  80. package/dist/forum-sync/discord-operations.js +154 -0
  81. package/dist/forum-sync/index.js +5 -0
  82. package/dist/forum-sync/markdown.js +113 -0
  83. package/dist/forum-sync/sync-to-discord.js +417 -0
  84. package/dist/forum-sync/sync-to-files.js +190 -0
  85. package/dist/forum-sync/types.js +53 -0
  86. package/dist/forum-sync/watchers.js +307 -0
  87. package/dist/gateway-proxy-reconnect.e2e.test.js +394 -0
  88. package/dist/gateway-proxy.e2e.test.js +483 -0
  89. package/dist/genai-worker-wrapper.js +111 -0
  90. package/dist/genai-worker.js +311 -0
  91. package/dist/genai.js +232 -0
  92. package/dist/generated/browser.js +17 -0
  93. package/dist/generated/client.js +37 -0
  94. package/dist/generated/commonInputTypes.js +10 -0
  95. package/dist/generated/enums.js +52 -0
  96. package/dist/generated/internal/class.js +49 -0
  97. package/dist/generated/internal/prismaNamespace.js +253 -0
  98. package/dist/generated/internal/prismaNamespaceBrowser.js +223 -0
  99. package/dist/generated/models/bot_api_keys.js +1 -0
  100. package/dist/generated/models/bot_tokens.js +1 -0
  101. package/dist/generated/models/channel_agents.js +1 -0
  102. package/dist/generated/models/channel_directories.js +1 -0
  103. package/dist/generated/models/channel_mention_mode.js +1 -0
  104. package/dist/generated/models/channel_models.js +1 -0
  105. package/dist/generated/models/channel_verbosity.js +1 -0
  106. package/dist/generated/models/channel_worktrees.js +1 -0
  107. package/dist/generated/models/forum_sync_configs.js +1 -0
  108. package/dist/generated/models/global_models.js +1 -0
  109. package/dist/generated/models/ipc_requests.js +1 -0
  110. package/dist/generated/models/part_messages.js +1 -0
  111. package/dist/generated/models/scheduled_tasks.js +1 -0
  112. package/dist/generated/models/session_agents.js +1 -0
  113. package/dist/generated/models/session_events.js +1 -0
  114. package/dist/generated/models/session_models.js +1 -0
  115. package/dist/generated/models/session_start_sources.js +1 -0
  116. package/dist/generated/models/thread_sessions.js +1 -0
  117. package/dist/generated/models/thread_worktrees.js +1 -0
  118. package/dist/generated/models.js +1 -0
  119. package/dist/heap-monitor.js +122 -0
  120. package/dist/hrana-server.js +263 -0
  121. package/dist/hrana-server.test.js +370 -0
  122. package/dist/html-actions.js +123 -0
  123. package/dist/html-actions.test.js +70 -0
  124. package/dist/html-components.js +117 -0
  125. package/dist/html-components.test.js +34 -0
  126. package/dist/image-optimizer-plugin.js +153 -0
  127. package/dist/image-utils.js +112 -0
  128. package/dist/interaction-handler.js +397 -0
  129. package/dist/ipc-polling.js +252 -0
  130. package/dist/ipc-tools-plugin.js +193 -0
  131. package/dist/kimaki-digital-twin.e2e.test.js +161 -0
  132. package/dist/kimaki-opencode-plugin-loading.e2e.test.js +87 -0
  133. package/dist/kimaki-opencode-plugin.js +17 -0
  134. package/dist/kimaki-opencode-plugin.test.js +98 -0
  135. package/dist/limit-heading-depth.js +25 -0
  136. package/dist/limit-heading-depth.test.js +105 -0
  137. package/dist/logger.js +165 -0
  138. package/dist/markdown.js +342 -0
  139. package/dist/markdown.test.js +257 -0
  140. package/dist/message-finish-field.e2e.test.js +165 -0
  141. package/dist/message-formatting.js +413 -0
  142. package/dist/message-formatting.test.js +73 -0
  143. package/dist/message-preprocessing.js +330 -0
  144. package/dist/onboarding-tutorial.js +172 -0
  145. package/dist/onboarding-welcome.js +37 -0
  146. package/dist/openai-realtime.js +224 -0
  147. package/dist/opencode-command-detection.js +65 -0
  148. package/dist/opencode-command-detection.test.js +240 -0
  149. package/dist/opencode-command.js +129 -0
  150. package/dist/opencode-command.test.js +48 -0
  151. package/dist/opencode-interrupt-plugin.js +361 -0
  152. package/dist/opencode-interrupt-plugin.test.js +458 -0
  153. package/dist/opencode.js +861 -0
  154. package/dist/otto/branding.js +22 -0
  155. package/dist/otto/index.js +21 -0
  156. package/dist/parse-permission-rules.test.js +117 -0
  157. package/dist/patch-text-parser.js +97 -0
  158. package/dist/plugin-logger.js +59 -0
  159. package/dist/privacy-sanitizer.js +105 -0
  160. package/dist/queue-advanced-abort.e2e.test.js +293 -0
  161. package/dist/queue-advanced-action-buttons.e2e.test.js +206 -0
  162. package/dist/queue-advanced-e2e-setup.js +786 -0
  163. package/dist/queue-advanced-footer.e2e.test.js +472 -0
  164. package/dist/queue-advanced-model-switch.e2e.test.js +299 -0
  165. package/dist/queue-advanced-permissions-typing.e2e.test.js +180 -0
  166. package/dist/queue-advanced-question.e2e.test.js +261 -0
  167. package/dist/queue-advanced-typing-interrupt.e2e.test.js +114 -0
  168. package/dist/queue-advanced-typing.e2e.test.js +153 -0
  169. package/dist/queue-drain-after-interactive-ui.e2e.test.js +119 -0
  170. package/dist/queue-interrupt-drain.e2e.test.js +135 -0
  171. package/dist/queue-question-select-drain.e2e.test.js +120 -0
  172. package/dist/runtime-idle-sweeper.js +52 -0
  173. package/dist/runtime-lifecycle.e2e.test.js +508 -0
  174. package/dist/sentry.js +23 -0
  175. package/dist/session-handler/agent-utils.js +67 -0
  176. package/dist/session-handler/event-stream-state.js +420 -0
  177. package/dist/session-handler/event-stream-state.test.js +563 -0
  178. package/dist/session-handler/model-utils.js +124 -0
  179. package/dist/session-handler/opencode-session-event-log.js +94 -0
  180. package/dist/session-handler/thread-runtime-state.js +104 -0
  181. package/dist/session-handler/thread-session-runtime.js +3258 -0
  182. package/dist/session-handler.js +9 -0
  183. package/dist/session-search.js +100 -0
  184. package/dist/session-search.test.js +40 -0
  185. package/dist/session-title-rename.test.js +80 -0
  186. package/dist/startup-service.js +153 -0
  187. package/dist/startup-time.e2e.test.js +296 -0
  188. package/dist/store.js +17 -0
  189. package/dist/system-message.js +613 -0
  190. package/dist/system-message.test.js +602 -0
  191. package/dist/task-runner.js +295 -0
  192. package/dist/task-schedule.js +209 -0
  193. package/dist/task-schedule.test.js +71 -0
  194. package/dist/test-utils.js +299 -0
  195. package/dist/thinking-utils.js +35 -0
  196. package/dist/thread-message-queue.e2e.test.js +999 -0
  197. package/dist/tools.js +357 -0
  198. package/dist/undo-redo.e2e.test.js +161 -0
  199. package/dist/unnest-code-blocks.js +146 -0
  200. package/dist/unnest-code-blocks.test.js +673 -0
  201. package/dist/upgrade.js +114 -0
  202. package/dist/utils.js +144 -0
  203. package/dist/voice-attachment.js +34 -0
  204. package/dist/voice-handler.js +646 -0
  205. package/dist/voice-message.e2e.test.js +1021 -0
  206. package/dist/voice.js +447 -0
  207. package/dist/voice.test.js +235 -0
  208. package/dist/wait-session.js +94 -0
  209. package/dist/websockify.js +69 -0
  210. package/dist/worker-types.js +4 -0
  211. package/dist/worktree-lifecycle.e2e.test.js +308 -0
  212. package/dist/worktree-utils.js +3 -0
  213. package/dist/worktrees.js +929 -0
  214. package/dist/worktrees.test.js +189 -0
  215. package/dist/xml.js +92 -0
  216. package/dist/xml.test.js +32 -0
  217. package/package.json +98 -0
  218. package/schema.prisma +295 -0
  219. package/skills/batch/SKILL.md +87 -0
  220. package/skills/critique/SKILL.md +112 -0
  221. package/skills/egaki/SKILL.md +100 -0
  222. package/skills/errore/SKILL.md +647 -0
  223. package/skills/event-sourcing-state/SKILL.md +252 -0
  224. package/skills/gitchamber/SKILL.md +93 -0
  225. package/skills/goke/SKILL.md +644 -0
  226. package/skills/jitter/EDITOR.md +219 -0
  227. package/skills/jitter/EXPORT-INTERNALS.md +309 -0
  228. package/skills/jitter/SKILL.md +158 -0
  229. package/skills/jitter/jitter-clipboard.json +1042 -0
  230. package/skills/jitter/package.json +14 -0
  231. package/skills/jitter/tsconfig.json +15 -0
  232. package/skills/jitter/utils/actions.ts +212 -0
  233. package/skills/jitter/utils/export.ts +114 -0
  234. package/skills/jitter/utils/index.ts +141 -0
  235. package/skills/jitter/utils/snapshot.ts +154 -0
  236. package/skills/jitter/utils/traverse.ts +246 -0
  237. package/skills/jitter/utils/types.ts +279 -0
  238. package/skills/jitter/utils/wait.ts +133 -0
  239. package/skills/lintcn/SKILL.md +873 -0
  240. package/skills/new-skill/SKILL.md +211 -0
  241. package/skills/npm-package/SKILL.md +239 -0
  242. package/skills/playwriter/SKILL.md +35 -0
  243. package/skills/proxyman/SKILL.md +215 -0
  244. package/skills/security-review/SKILL.md +208 -0
  245. package/skills/simplify/SKILL.md +58 -0
  246. package/skills/spiceflow/SKILL.md +14 -0
  247. package/skills/termcast/SKILL.md +945 -0
  248. package/skills/tuistory/SKILL.md +250 -0
  249. package/skills/usecomputer/SKILL.md +264 -0
  250. package/skills/x-articles/SKILL.md +554 -0
  251. package/skills/zele/SKILL.md +112 -0
  252. package/skills/zustand-centralized-state/SKILL.md +1004 -0
  253. package/src/agent-model.e2e.test.ts +976 -0
  254. package/src/ai-tool-to-genai.test.ts +296 -0
  255. package/src/ai-tool-to-genai.ts +283 -0
  256. package/src/ai-tool.ts +39 -0
  257. package/src/anthropic-auth-plugin.test.ts +159 -0
  258. package/src/anthropic-auth-plugin.ts +861 -0
  259. package/src/anthropic-auth-state.ts +282 -0
  260. package/src/bin.ts +111 -0
  261. package/src/channel-management.ts +334 -0
  262. package/src/cli-parsing.test.ts +195 -0
  263. package/src/cli-send-thread.e2e.test.ts +464 -0
  264. package/src/cli.ts +4581 -0
  265. package/src/commands/abort.ts +89 -0
  266. package/src/commands/action-buttons.ts +364 -0
  267. package/src/commands/add-project.ts +149 -0
  268. package/src/commands/agent.ts +473 -0
  269. package/src/commands/ask-question.ts +390 -0
  270. package/src/commands/btw.ts +164 -0
  271. package/src/commands/compact.ts +157 -0
  272. package/src/commands/context-usage.ts +199 -0
  273. package/src/commands/create-new-project.ts +190 -0
  274. package/src/commands/diff.ts +91 -0
  275. package/src/commands/file-upload.ts +389 -0
  276. package/src/commands/fork.ts +321 -0
  277. package/src/commands/gemini-apikey.ts +104 -0
  278. package/src/commands/login.ts +1173 -0
  279. package/src/commands/mcp.ts +307 -0
  280. package/src/commands/memory-snapshot.ts +30 -0
  281. package/src/commands/mention-mode.ts +68 -0
  282. package/src/commands/merge-worktree.ts +223 -0
  283. package/src/commands/model-variant.ts +483 -0
  284. package/src/commands/model.ts +1053 -0
  285. package/src/commands/new-worktree.ts +510 -0
  286. package/src/commands/paginated-select.ts +81 -0
  287. package/src/commands/permissions.ts +397 -0
  288. package/src/commands/queue.ts +271 -0
  289. package/src/commands/remove-project.ts +155 -0
  290. package/src/commands/restart-opencode-server.ts +162 -0
  291. package/src/commands/resume.ts +230 -0
  292. package/src/commands/run-command.ts +123 -0
  293. package/src/commands/screenshare.test.ts +30 -0
  294. package/src/commands/screenshare.ts +366 -0
  295. package/src/commands/session-id.ts +109 -0
  296. package/src/commands/session.ts +227 -0
  297. package/src/commands/share.ts +106 -0
  298. package/src/commands/tasks.ts +293 -0
  299. package/src/commands/types.ts +25 -0
  300. package/src/commands/undo-redo.ts +386 -0
  301. package/src/commands/unset-model.ts +173 -0
  302. package/src/commands/upgrade.ts +52 -0
  303. package/src/commands/user-command.ts +198 -0
  304. package/src/commands/verbosity.ts +173 -0
  305. package/src/commands/worktree-settings.ts +70 -0
  306. package/src/commands/worktrees.ts +552 -0
  307. package/src/condense-memory.ts +36 -0
  308. package/src/config.ts +111 -0
  309. package/src/context-awareness-plugin.test.ts +142 -0
  310. package/src/context-awareness-plugin.ts +510 -0
  311. package/src/critique-utils.ts +139 -0
  312. package/src/database.ts +1876 -0
  313. package/src/db.test.ts +162 -0
  314. package/src/db.ts +286 -0
  315. package/src/debounce-timeout.ts +43 -0
  316. package/src/debounced-process-flush.ts +104 -0
  317. package/src/discord-bot.ts +1330 -0
  318. package/src/discord-command-registration.ts +693 -0
  319. package/src/discord-urls.ts +88 -0
  320. package/src/discord-utils.test.ts +153 -0
  321. package/src/discord-utils.ts +800 -0
  322. package/src/errors.ts +201 -0
  323. package/src/escape-backticks.test.ts +469 -0
  324. package/src/event-stream-real-capture.e2e.test.ts +692 -0
  325. package/src/eventsource-parser.test.ts +351 -0
  326. package/src/exec-async.ts +35 -0
  327. package/src/external-opencode-sync.ts +685 -0
  328. package/src/format-tables.test.ts +335 -0
  329. package/src/format-tables.ts +445 -0
  330. package/src/forum-sync/config.ts +92 -0
  331. package/src/forum-sync/discord-operations.ts +241 -0
  332. package/src/forum-sync/index.ts +9 -0
  333. package/src/forum-sync/markdown.ts +172 -0
  334. package/src/forum-sync/sync-to-discord.ts +595 -0
  335. package/src/forum-sync/sync-to-files.ts +294 -0
  336. package/src/forum-sync/types.ts +175 -0
  337. package/src/forum-sync/watchers.ts +454 -0
  338. package/src/gateway-proxy-reconnect.e2e.test.ts +523 -0
  339. package/src/gateway-proxy.e2e.test.ts +640 -0
  340. package/src/genai-worker-wrapper.ts +164 -0
  341. package/src/genai-worker.ts +386 -0
  342. package/src/genai.ts +321 -0
  343. package/src/generated/browser.ts +114 -0
  344. package/src/generated/client.ts +138 -0
  345. package/src/generated/commonInputTypes.ts +736 -0
  346. package/src/generated/enums.ts +88 -0
  347. package/src/generated/internal/class.ts +384 -0
  348. package/src/generated/internal/prismaNamespace.ts +2386 -0
  349. package/src/generated/internal/prismaNamespaceBrowser.ts +326 -0
  350. package/src/generated/models/bot_api_keys.ts +1288 -0
  351. package/src/generated/models/bot_tokens.ts +1656 -0
  352. package/src/generated/models/channel_agents.ts +1256 -0
  353. package/src/generated/models/channel_directories.ts +1859 -0
  354. package/src/generated/models/channel_mention_mode.ts +1300 -0
  355. package/src/generated/models/channel_models.ts +1288 -0
  356. package/src/generated/models/channel_verbosity.ts +1228 -0
  357. package/src/generated/models/channel_worktrees.ts +1300 -0
  358. package/src/generated/models/forum_sync_configs.ts +1452 -0
  359. package/src/generated/models/global_models.ts +1288 -0
  360. package/src/generated/models/ipc_requests.ts +1485 -0
  361. package/src/generated/models/part_messages.ts +1302 -0
  362. package/src/generated/models/scheduled_tasks.ts +2320 -0
  363. package/src/generated/models/session_agents.ts +1086 -0
  364. package/src/generated/models/session_events.ts +1439 -0
  365. package/src/generated/models/session_models.ts +1114 -0
  366. package/src/generated/models/session_start_sources.ts +1408 -0
  367. package/src/generated/models/thread_sessions.ts +1781 -0
  368. package/src/generated/models/thread_worktrees.ts +1356 -0
  369. package/src/generated/models.ts +30 -0
  370. package/src/heap-monitor.ts +152 -0
  371. package/src/hrana-server.test.ts +434 -0
  372. package/src/hrana-server.ts +314 -0
  373. package/src/html-actions.test.ts +87 -0
  374. package/src/html-actions.ts +174 -0
  375. package/src/html-components.test.ts +38 -0
  376. package/src/html-components.ts +181 -0
  377. package/src/image-optimizer-plugin.ts +194 -0
  378. package/src/image-utils.ts +149 -0
  379. package/src/interaction-handler.ts +576 -0
  380. package/src/ipc-polling.ts +326 -0
  381. package/src/ipc-tools-plugin.ts +236 -0
  382. package/src/kimaki-digital-twin.e2e.test.ts +199 -0
  383. package/src/kimaki-opencode-plugin-loading.e2e.test.ts +109 -0
  384. package/src/kimaki-opencode-plugin.test.ts +108 -0
  385. package/src/kimaki-opencode-plugin.ts +18 -0
  386. package/src/limit-heading-depth.test.ts +116 -0
  387. package/src/limit-heading-depth.ts +26 -0
  388. package/src/logger.ts +208 -0
  389. package/src/markdown.test.ts +308 -0
  390. package/src/markdown.ts +410 -0
  391. package/src/message-finish-field.e2e.test.ts +192 -0
  392. package/src/message-formatting.test.ts +81 -0
  393. package/src/message-formatting.ts +533 -0
  394. package/src/message-preprocessing.ts +455 -0
  395. package/src/onboarding-tutorial.ts +176 -0
  396. package/src/onboarding-welcome.ts +49 -0
  397. package/src/openai-realtime.ts +358 -0
  398. package/src/opencode-command-detection.test.ts +307 -0
  399. package/src/opencode-command-detection.ts +76 -0
  400. package/src/opencode-command.test.ts +70 -0
  401. package/src/opencode-command.ts +188 -0
  402. package/src/opencode-interrupt-plugin.test.ts +677 -0
  403. package/src/opencode-interrupt-plugin.ts +477 -0
  404. package/src/opencode.ts +1110 -0
  405. package/src/otto/branding.ts +23 -0
  406. package/src/otto/index.ts +22 -0
  407. package/src/parse-permission-rules.test.ts +127 -0
  408. package/src/patch-text-parser.ts +107 -0
  409. package/src/plugin-logger.ts +68 -0
  410. package/src/privacy-sanitizer.ts +142 -0
  411. package/src/queue-advanced-abort.e2e.test.ts +382 -0
  412. package/src/queue-advanced-action-buttons.e2e.test.ts +268 -0
  413. package/src/queue-advanced-e2e-setup.ts +873 -0
  414. package/src/queue-advanced-footer.e2e.test.ts +576 -0
  415. package/src/queue-advanced-model-switch.e2e.test.ts +383 -0
  416. package/src/queue-advanced-permissions-typing.e2e.test.ts +245 -0
  417. package/src/queue-advanced-question.e2e.test.ts +316 -0
  418. package/src/queue-advanced-typing-interrupt.e2e.test.ts +146 -0
  419. package/src/queue-advanced-typing.e2e.test.ts +199 -0
  420. package/src/queue-drain-after-interactive-ui.e2e.test.ts +151 -0
  421. package/src/queue-interrupt-drain.e2e.test.ts +166 -0
  422. package/src/queue-question-select-drain.e2e.test.ts +152 -0
  423. package/src/runtime-idle-sweeper.ts +76 -0
  424. package/src/runtime-lifecycle.e2e.test.ts +641 -0
  425. package/src/schema.sql +173 -0
  426. package/src/sentry.ts +26 -0
  427. package/src/session-handler/agent-utils.ts +97 -0
  428. package/src/session-handler/event-stream-fixtures/real-session-action-buttons.jsonl +45 -0
  429. package/src/session-handler/event-stream-fixtures/real-session-footer-suppressed-on-pre-idle-interrupt.jsonl +40 -0
  430. package/src/session-handler/event-stream-fixtures/real-session-permission-external-file.jsonl +23 -0
  431. package/src/session-handler/event-stream-fixtures/real-session-task-normal.jsonl +22 -0
  432. package/src/session-handler/event-stream-fixtures/real-session-task-three-parallel-sleeps.jsonl +277 -0
  433. package/src/session-handler/event-stream-fixtures/real-session-task-user-interruption.jsonl +46 -0
  434. package/src/session-handler/event-stream-fixtures/session-abort-after-idle-race.jsonl +21 -0
  435. package/src/session-handler/event-stream-fixtures/session-concurrent-messages-serialized.jsonl +56 -0
  436. package/src/session-handler/event-stream-fixtures/session-explicit-abort.jsonl +44 -0
  437. package/src/session-handler/event-stream-fixtures/session-normal-completion.jsonl +29 -0
  438. package/src/session-handler/event-stream-fixtures/session-tool-call-noisy-stream.jsonl +29 -0
  439. package/src/session-handler/event-stream-fixtures/session-two-completions-same-session.jsonl +50 -0
  440. package/src/session-handler/event-stream-fixtures/session-user-interruption.jsonl +59 -0
  441. package/src/session-handler/event-stream-fixtures/session-voice-queued-followup.jsonl +52 -0
  442. package/src/session-handler/event-stream-state.test.ts +645 -0
  443. package/src/session-handler/event-stream-state.ts +608 -0
  444. package/src/session-handler/model-utils.ts +183 -0
  445. package/src/session-handler/opencode-session-event-log.ts +130 -0
  446. package/src/session-handler/thread-runtime-state.ts +212 -0
  447. package/src/session-handler/thread-session-runtime.ts +4281 -0
  448. package/src/session-handler.ts +15 -0
  449. package/src/session-search.test.ts +50 -0
  450. package/src/session-search.ts +148 -0
  451. package/src/session-title-rename.test.ts +112 -0
  452. package/src/startup-service.ts +200 -0
  453. package/src/startup-time.e2e.test.ts +373 -0
  454. package/src/store.ts +122 -0
  455. package/src/system-message.test.ts +612 -0
  456. package/src/system-message.ts +723 -0
  457. package/src/task-runner.ts +421 -0
  458. package/src/task-schedule.test.ts +84 -0
  459. package/src/task-schedule.ts +311 -0
  460. package/src/test-utils.ts +435 -0
  461. package/src/thinking-utils.ts +61 -0
  462. package/src/thread-message-queue.e2e.test.ts +1219 -0
  463. package/src/tools.ts +430 -0
  464. package/src/undici.d.ts +12 -0
  465. package/src/undo-redo.e2e.test.ts +209 -0
  466. package/src/unnest-code-blocks.test.ts +713 -0
  467. package/src/unnest-code-blocks.ts +185 -0
  468. package/src/upgrade.ts +127 -0
  469. package/src/utils.ts +212 -0
  470. package/src/voice-attachment.ts +51 -0
  471. package/src/voice-handler.ts +908 -0
  472. package/src/voice-message.e2e.test.ts +1255 -0
  473. package/src/voice.test.ts +281 -0
  474. package/src/voice.ts +627 -0
  475. package/src/wait-session.ts +147 -0
  476. package/src/websockify.ts +101 -0
  477. package/src/worker-types.ts +64 -0
  478. package/src/worktree-lifecycle.e2e.test.ts +391 -0
  479. package/src/worktree-utils.ts +4 -0
  480. package/src/worktrees.test.ts +223 -0
  481. package/src/worktrees.ts +1294 -0
  482. package/src/xml.test.ts +38 -0
  483. package/src/xml.ts +121 -0
@@ -0,0 +1,1300 @@
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 `channel_mention_mode` 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.js"
13
+ import type * as Prisma from "../internal/prismaNamespace.js"
14
+
15
+ /**
16
+ * Model channel_mention_mode
17
+ *
18
+ */
19
+ export type channel_mention_modeModel = runtime.Types.Result.DefaultSelection<Prisma.$channel_mention_modePayload>
20
+
21
+ export type AggregateChannel_mention_mode = {
22
+ _count: Channel_mention_modeCountAggregateOutputType | null
23
+ _avg: Channel_mention_modeAvgAggregateOutputType | null
24
+ _sum: Channel_mention_modeSumAggregateOutputType | null
25
+ _min: Channel_mention_modeMinAggregateOutputType | null
26
+ _max: Channel_mention_modeMaxAggregateOutputType | null
27
+ }
28
+
29
+ export type Channel_mention_modeAvgAggregateOutputType = {
30
+ enabled: number | null
31
+ }
32
+
33
+ export type Channel_mention_modeSumAggregateOutputType = {
34
+ enabled: number | null
35
+ }
36
+
37
+ export type Channel_mention_modeMinAggregateOutputType = {
38
+ channel_id: string | null
39
+ enabled: number | null
40
+ created_at: Date | null
41
+ updated_at: Date | null
42
+ }
43
+
44
+ export type Channel_mention_modeMaxAggregateOutputType = {
45
+ channel_id: string | null
46
+ enabled: number | null
47
+ created_at: Date | null
48
+ updated_at: Date | null
49
+ }
50
+
51
+ export type Channel_mention_modeCountAggregateOutputType = {
52
+ channel_id: number
53
+ enabled: number
54
+ created_at: number
55
+ updated_at: number
56
+ _all: number
57
+ }
58
+
59
+
60
+ export type Channel_mention_modeAvgAggregateInputType = {
61
+ enabled?: true
62
+ }
63
+
64
+ export type Channel_mention_modeSumAggregateInputType = {
65
+ enabled?: true
66
+ }
67
+
68
+ export type Channel_mention_modeMinAggregateInputType = {
69
+ channel_id?: true
70
+ enabled?: true
71
+ created_at?: true
72
+ updated_at?: true
73
+ }
74
+
75
+ export type Channel_mention_modeMaxAggregateInputType = {
76
+ channel_id?: true
77
+ enabled?: true
78
+ created_at?: true
79
+ updated_at?: true
80
+ }
81
+
82
+ export type Channel_mention_modeCountAggregateInputType = {
83
+ channel_id?: true
84
+ enabled?: true
85
+ created_at?: true
86
+ updated_at?: true
87
+ _all?: true
88
+ }
89
+
90
+ export type Channel_mention_modeAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
91
+ /**
92
+ * Filter which channel_mention_mode to aggregate.
93
+ */
94
+ where?: Prisma.channel_mention_modeWhereInput
95
+ /**
96
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
97
+ *
98
+ * Determine the order of channel_mention_modes to fetch.
99
+ */
100
+ orderBy?: Prisma.channel_mention_modeOrderByWithRelationInput | Prisma.channel_mention_modeOrderByWithRelationInput[]
101
+ /**
102
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
103
+ *
104
+ * Sets the start position
105
+ */
106
+ cursor?: Prisma.channel_mention_modeWhereUniqueInput
107
+ /**
108
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
109
+ *
110
+ * Take `±n` channel_mention_modes from the position of the cursor.
111
+ */
112
+ take?: number
113
+ /**
114
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
115
+ *
116
+ * Skip the first `n` channel_mention_modes.
117
+ */
118
+ skip?: number
119
+ /**
120
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
121
+ *
122
+ * Count returned channel_mention_modes
123
+ **/
124
+ _count?: true | Channel_mention_modeCountAggregateInputType
125
+ /**
126
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
127
+ *
128
+ * Select which fields to average
129
+ **/
130
+ _avg?: Channel_mention_modeAvgAggregateInputType
131
+ /**
132
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
133
+ *
134
+ * Select which fields to sum
135
+ **/
136
+ _sum?: Channel_mention_modeSumAggregateInputType
137
+ /**
138
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
139
+ *
140
+ * Select which fields to find the minimum value
141
+ **/
142
+ _min?: Channel_mention_modeMinAggregateInputType
143
+ /**
144
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
145
+ *
146
+ * Select which fields to find the maximum value
147
+ **/
148
+ _max?: Channel_mention_modeMaxAggregateInputType
149
+ }
150
+
151
+ export type GetChannel_mention_modeAggregateType<T extends Channel_mention_modeAggregateArgs> = {
152
+ [P in keyof T & keyof AggregateChannel_mention_mode]: P extends '_count' | 'count'
153
+ ? T[P] extends true
154
+ ? number
155
+ : Prisma.GetScalarType<T[P], AggregateChannel_mention_mode[P]>
156
+ : Prisma.GetScalarType<T[P], AggregateChannel_mention_mode[P]>
157
+ }
158
+
159
+
160
+
161
+
162
+ export type channel_mention_modeGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
163
+ where?: Prisma.channel_mention_modeWhereInput
164
+ orderBy?: Prisma.channel_mention_modeOrderByWithAggregationInput | Prisma.channel_mention_modeOrderByWithAggregationInput[]
165
+ by: Prisma.Channel_mention_modeScalarFieldEnum[] | Prisma.Channel_mention_modeScalarFieldEnum
166
+ having?: Prisma.channel_mention_modeScalarWhereWithAggregatesInput
167
+ take?: number
168
+ skip?: number
169
+ _count?: Channel_mention_modeCountAggregateInputType | true
170
+ _avg?: Channel_mention_modeAvgAggregateInputType
171
+ _sum?: Channel_mention_modeSumAggregateInputType
172
+ _min?: Channel_mention_modeMinAggregateInputType
173
+ _max?: Channel_mention_modeMaxAggregateInputType
174
+ }
175
+
176
+ export type Channel_mention_modeGroupByOutputType = {
177
+ channel_id: string
178
+ enabled: number
179
+ created_at: Date | null
180
+ updated_at: Date | null
181
+ _count: Channel_mention_modeCountAggregateOutputType | null
182
+ _avg: Channel_mention_modeAvgAggregateOutputType | null
183
+ _sum: Channel_mention_modeSumAggregateOutputType | null
184
+ _min: Channel_mention_modeMinAggregateOutputType | null
185
+ _max: Channel_mention_modeMaxAggregateOutputType | null
186
+ }
187
+
188
+ type GetChannel_mention_modeGroupByPayload<T extends channel_mention_modeGroupByArgs> = Prisma.PrismaPromise<
189
+ Array<
190
+ Prisma.PickEnumerable<Channel_mention_modeGroupByOutputType, T['by']> &
191
+ {
192
+ [P in ((keyof T) & (keyof Channel_mention_modeGroupByOutputType))]: P extends '_count'
193
+ ? T[P] extends boolean
194
+ ? number
195
+ : Prisma.GetScalarType<T[P], Channel_mention_modeGroupByOutputType[P]>
196
+ : Prisma.GetScalarType<T[P], Channel_mention_modeGroupByOutputType[P]>
197
+ }
198
+ >
199
+ >
200
+
201
+
202
+
203
+ export type channel_mention_modeWhereInput = {
204
+ AND?: Prisma.channel_mention_modeWhereInput | Prisma.channel_mention_modeWhereInput[]
205
+ OR?: Prisma.channel_mention_modeWhereInput[]
206
+ NOT?: Prisma.channel_mention_modeWhereInput | Prisma.channel_mention_modeWhereInput[]
207
+ channel_id?: Prisma.StringFilter<"channel_mention_mode"> | string
208
+ enabled?: Prisma.IntFilter<"channel_mention_mode"> | number
209
+ created_at?: Prisma.DateTimeNullableFilter<"channel_mention_mode"> | Date | string | null
210
+ updated_at?: Prisma.DateTimeNullableFilter<"channel_mention_mode"> | Date | string | null
211
+ channel?: Prisma.XOR<Prisma.Channel_directoriesScalarRelationFilter, Prisma.channel_directoriesWhereInput>
212
+ }
213
+
214
+ export type channel_mention_modeOrderByWithRelationInput = {
215
+ channel_id?: Prisma.SortOrder
216
+ enabled?: Prisma.SortOrder
217
+ created_at?: Prisma.SortOrderInput | Prisma.SortOrder
218
+ updated_at?: Prisma.SortOrderInput | Prisma.SortOrder
219
+ channel?: Prisma.channel_directoriesOrderByWithRelationInput
220
+ }
221
+
222
+ export type channel_mention_modeWhereUniqueInput = Prisma.AtLeast<{
223
+ channel_id?: string
224
+ AND?: Prisma.channel_mention_modeWhereInput | Prisma.channel_mention_modeWhereInput[]
225
+ OR?: Prisma.channel_mention_modeWhereInput[]
226
+ NOT?: Prisma.channel_mention_modeWhereInput | Prisma.channel_mention_modeWhereInput[]
227
+ enabled?: Prisma.IntFilter<"channel_mention_mode"> | number
228
+ created_at?: Prisma.DateTimeNullableFilter<"channel_mention_mode"> | Date | string | null
229
+ updated_at?: Prisma.DateTimeNullableFilter<"channel_mention_mode"> | Date | string | null
230
+ channel?: Prisma.XOR<Prisma.Channel_directoriesScalarRelationFilter, Prisma.channel_directoriesWhereInput>
231
+ }, "channel_id">
232
+
233
+ export type channel_mention_modeOrderByWithAggregationInput = {
234
+ channel_id?: Prisma.SortOrder
235
+ enabled?: Prisma.SortOrder
236
+ created_at?: Prisma.SortOrderInput | Prisma.SortOrder
237
+ updated_at?: Prisma.SortOrderInput | Prisma.SortOrder
238
+ _count?: Prisma.channel_mention_modeCountOrderByAggregateInput
239
+ _avg?: Prisma.channel_mention_modeAvgOrderByAggregateInput
240
+ _max?: Prisma.channel_mention_modeMaxOrderByAggregateInput
241
+ _min?: Prisma.channel_mention_modeMinOrderByAggregateInput
242
+ _sum?: Prisma.channel_mention_modeSumOrderByAggregateInput
243
+ }
244
+
245
+ export type channel_mention_modeScalarWhereWithAggregatesInput = {
246
+ AND?: Prisma.channel_mention_modeScalarWhereWithAggregatesInput | Prisma.channel_mention_modeScalarWhereWithAggregatesInput[]
247
+ OR?: Prisma.channel_mention_modeScalarWhereWithAggregatesInput[]
248
+ NOT?: Prisma.channel_mention_modeScalarWhereWithAggregatesInput | Prisma.channel_mention_modeScalarWhereWithAggregatesInput[]
249
+ channel_id?: Prisma.StringWithAggregatesFilter<"channel_mention_mode"> | string
250
+ enabled?: Prisma.IntWithAggregatesFilter<"channel_mention_mode"> | number
251
+ created_at?: Prisma.DateTimeNullableWithAggregatesFilter<"channel_mention_mode"> | Date | string | null
252
+ updated_at?: Prisma.DateTimeNullableWithAggregatesFilter<"channel_mention_mode"> | Date | string | null
253
+ }
254
+
255
+ export type channel_mention_modeCreateInput = {
256
+ enabled?: number
257
+ created_at?: Date | string | null
258
+ updated_at?: Date | string | null
259
+ channel: Prisma.channel_directoriesCreateNestedOneWithoutChannel_mention_modeInput
260
+ }
261
+
262
+ export type channel_mention_modeUncheckedCreateInput = {
263
+ channel_id: string
264
+ enabled?: number
265
+ created_at?: Date | string | null
266
+ updated_at?: Date | string | null
267
+ }
268
+
269
+ export type channel_mention_modeUpdateInput = {
270
+ enabled?: Prisma.IntFieldUpdateOperationsInput | number
271
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
272
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
273
+ channel?: Prisma.channel_directoriesUpdateOneRequiredWithoutChannel_mention_modeNestedInput
274
+ }
275
+
276
+ export type channel_mention_modeUncheckedUpdateInput = {
277
+ channel_id?: Prisma.StringFieldUpdateOperationsInput | string
278
+ enabled?: Prisma.IntFieldUpdateOperationsInput | number
279
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
280
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
281
+ }
282
+
283
+ export type channel_mention_modeCreateManyInput = {
284
+ channel_id: string
285
+ enabled?: number
286
+ created_at?: Date | string | null
287
+ updated_at?: Date | string | null
288
+ }
289
+
290
+ export type channel_mention_modeUpdateManyMutationInput = {
291
+ enabled?: Prisma.IntFieldUpdateOperationsInput | number
292
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
293
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
294
+ }
295
+
296
+ export type channel_mention_modeUncheckedUpdateManyInput = {
297
+ channel_id?: Prisma.StringFieldUpdateOperationsInput | string
298
+ enabled?: Prisma.IntFieldUpdateOperationsInput | number
299
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
300
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
301
+ }
302
+
303
+ export type Channel_mention_modeNullableScalarRelationFilter = {
304
+ is?: Prisma.channel_mention_modeWhereInput | null
305
+ isNot?: Prisma.channel_mention_modeWhereInput | null
306
+ }
307
+
308
+ export type channel_mention_modeCountOrderByAggregateInput = {
309
+ channel_id?: Prisma.SortOrder
310
+ enabled?: Prisma.SortOrder
311
+ created_at?: Prisma.SortOrder
312
+ updated_at?: Prisma.SortOrder
313
+ }
314
+
315
+ export type channel_mention_modeAvgOrderByAggregateInput = {
316
+ enabled?: Prisma.SortOrder
317
+ }
318
+
319
+ export type channel_mention_modeMaxOrderByAggregateInput = {
320
+ channel_id?: Prisma.SortOrder
321
+ enabled?: Prisma.SortOrder
322
+ created_at?: Prisma.SortOrder
323
+ updated_at?: Prisma.SortOrder
324
+ }
325
+
326
+ export type channel_mention_modeMinOrderByAggregateInput = {
327
+ channel_id?: Prisma.SortOrder
328
+ enabled?: Prisma.SortOrder
329
+ created_at?: Prisma.SortOrder
330
+ updated_at?: Prisma.SortOrder
331
+ }
332
+
333
+ export type channel_mention_modeSumOrderByAggregateInput = {
334
+ enabled?: Prisma.SortOrder
335
+ }
336
+
337
+ export type channel_mention_modeCreateNestedOneWithoutChannelInput = {
338
+ create?: Prisma.XOR<Prisma.channel_mention_modeCreateWithoutChannelInput, Prisma.channel_mention_modeUncheckedCreateWithoutChannelInput>
339
+ connectOrCreate?: Prisma.channel_mention_modeCreateOrConnectWithoutChannelInput
340
+ connect?: Prisma.channel_mention_modeWhereUniqueInput
341
+ }
342
+
343
+ export type channel_mention_modeUncheckedCreateNestedOneWithoutChannelInput = {
344
+ create?: Prisma.XOR<Prisma.channel_mention_modeCreateWithoutChannelInput, Prisma.channel_mention_modeUncheckedCreateWithoutChannelInput>
345
+ connectOrCreate?: Prisma.channel_mention_modeCreateOrConnectWithoutChannelInput
346
+ connect?: Prisma.channel_mention_modeWhereUniqueInput
347
+ }
348
+
349
+ export type channel_mention_modeUpdateOneWithoutChannelNestedInput = {
350
+ create?: Prisma.XOR<Prisma.channel_mention_modeCreateWithoutChannelInput, Prisma.channel_mention_modeUncheckedCreateWithoutChannelInput>
351
+ connectOrCreate?: Prisma.channel_mention_modeCreateOrConnectWithoutChannelInput
352
+ upsert?: Prisma.channel_mention_modeUpsertWithoutChannelInput
353
+ disconnect?: Prisma.channel_mention_modeWhereInput | boolean
354
+ delete?: Prisma.channel_mention_modeWhereInput | boolean
355
+ connect?: Prisma.channel_mention_modeWhereUniqueInput
356
+ update?: Prisma.XOR<Prisma.XOR<Prisma.channel_mention_modeUpdateToOneWithWhereWithoutChannelInput, Prisma.channel_mention_modeUpdateWithoutChannelInput>, Prisma.channel_mention_modeUncheckedUpdateWithoutChannelInput>
357
+ }
358
+
359
+ export type channel_mention_modeUncheckedUpdateOneWithoutChannelNestedInput = {
360
+ create?: Prisma.XOR<Prisma.channel_mention_modeCreateWithoutChannelInput, Prisma.channel_mention_modeUncheckedCreateWithoutChannelInput>
361
+ connectOrCreate?: Prisma.channel_mention_modeCreateOrConnectWithoutChannelInput
362
+ upsert?: Prisma.channel_mention_modeUpsertWithoutChannelInput
363
+ disconnect?: Prisma.channel_mention_modeWhereInput | boolean
364
+ delete?: Prisma.channel_mention_modeWhereInput | boolean
365
+ connect?: Prisma.channel_mention_modeWhereUniqueInput
366
+ update?: Prisma.XOR<Prisma.XOR<Prisma.channel_mention_modeUpdateToOneWithWhereWithoutChannelInput, Prisma.channel_mention_modeUpdateWithoutChannelInput>, Prisma.channel_mention_modeUncheckedUpdateWithoutChannelInput>
367
+ }
368
+
369
+ export type channel_mention_modeCreateWithoutChannelInput = {
370
+ enabled?: number
371
+ created_at?: Date | string | null
372
+ updated_at?: Date | string | null
373
+ }
374
+
375
+ export type channel_mention_modeUncheckedCreateWithoutChannelInput = {
376
+ enabled?: number
377
+ created_at?: Date | string | null
378
+ updated_at?: Date | string | null
379
+ }
380
+
381
+ export type channel_mention_modeCreateOrConnectWithoutChannelInput = {
382
+ where: Prisma.channel_mention_modeWhereUniqueInput
383
+ create: Prisma.XOR<Prisma.channel_mention_modeCreateWithoutChannelInput, Prisma.channel_mention_modeUncheckedCreateWithoutChannelInput>
384
+ }
385
+
386
+ export type channel_mention_modeUpsertWithoutChannelInput = {
387
+ update: Prisma.XOR<Prisma.channel_mention_modeUpdateWithoutChannelInput, Prisma.channel_mention_modeUncheckedUpdateWithoutChannelInput>
388
+ create: Prisma.XOR<Prisma.channel_mention_modeCreateWithoutChannelInput, Prisma.channel_mention_modeUncheckedCreateWithoutChannelInput>
389
+ where?: Prisma.channel_mention_modeWhereInput
390
+ }
391
+
392
+ export type channel_mention_modeUpdateToOneWithWhereWithoutChannelInput = {
393
+ where?: Prisma.channel_mention_modeWhereInput
394
+ data: Prisma.XOR<Prisma.channel_mention_modeUpdateWithoutChannelInput, Prisma.channel_mention_modeUncheckedUpdateWithoutChannelInput>
395
+ }
396
+
397
+ export type channel_mention_modeUpdateWithoutChannelInput = {
398
+ enabled?: Prisma.IntFieldUpdateOperationsInput | number
399
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
400
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
401
+ }
402
+
403
+ export type channel_mention_modeUncheckedUpdateWithoutChannelInput = {
404
+ enabled?: Prisma.IntFieldUpdateOperationsInput | number
405
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
406
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
407
+ }
408
+
409
+
410
+
411
+ export type channel_mention_modeSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
412
+ channel_id?: boolean
413
+ enabled?: boolean
414
+ created_at?: boolean
415
+ updated_at?: boolean
416
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
417
+ }, ExtArgs["result"]["channel_mention_mode"]>
418
+
419
+ export type channel_mention_modeSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
420
+ channel_id?: boolean
421
+ enabled?: boolean
422
+ created_at?: boolean
423
+ updated_at?: boolean
424
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
425
+ }, ExtArgs["result"]["channel_mention_mode"]>
426
+
427
+ export type channel_mention_modeSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
428
+ channel_id?: boolean
429
+ enabled?: boolean
430
+ created_at?: boolean
431
+ updated_at?: boolean
432
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
433
+ }, ExtArgs["result"]["channel_mention_mode"]>
434
+
435
+ export type channel_mention_modeSelectScalar = {
436
+ channel_id?: boolean
437
+ enabled?: boolean
438
+ created_at?: boolean
439
+ updated_at?: boolean
440
+ }
441
+
442
+ export type channel_mention_modeOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"channel_id" | "enabled" | "created_at" | "updated_at", ExtArgs["result"]["channel_mention_mode"]>
443
+ export type channel_mention_modeInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
444
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
445
+ }
446
+ export type channel_mention_modeIncludeCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
447
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
448
+ }
449
+ export type channel_mention_modeIncludeUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
450
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
451
+ }
452
+
453
+ export type $channel_mention_modePayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
454
+ name: "channel_mention_mode"
455
+ objects: {
456
+ channel: Prisma.$channel_directoriesPayload<ExtArgs>
457
+ }
458
+ scalars: runtime.Types.Extensions.GetPayloadResult<{
459
+ channel_id: string
460
+ enabled: number
461
+ created_at: Date | null
462
+ updated_at: Date | null
463
+ }, ExtArgs["result"]["channel_mention_mode"]>
464
+ composites: {}
465
+ }
466
+
467
+ export type channel_mention_modeGetPayload<S extends boolean | null | undefined | channel_mention_modeDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload, S>
468
+
469
+ export type channel_mention_modeCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> =
470
+ Omit<channel_mention_modeFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
471
+ select?: Channel_mention_modeCountAggregateInputType | true
472
+ }
473
+
474
+ export interface channel_mention_modeDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
475
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['channel_mention_mode'], meta: { name: 'channel_mention_mode' } }
476
+ /**
477
+ * Find zero or one Channel_mention_mode that matches the filter.
478
+ * @param {channel_mention_modeFindUniqueArgs} args - Arguments to find a Channel_mention_mode
479
+ * @example
480
+ * // Get one Channel_mention_mode
481
+ * const channel_mention_mode = await prisma.channel_mention_mode.findUnique({
482
+ * where: {
483
+ * // ... provide filter here
484
+ * }
485
+ * })
486
+ */
487
+ findUnique<T extends channel_mention_modeFindUniqueArgs>(args: Prisma.SelectSubset<T, channel_mention_modeFindUniqueArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
488
+
489
+ /**
490
+ * Find one Channel_mention_mode that matches the filter or throw an error with `error.code='P2025'`
491
+ * if no matches were found.
492
+ * @param {channel_mention_modeFindUniqueOrThrowArgs} args - Arguments to find a Channel_mention_mode
493
+ * @example
494
+ * // Get one Channel_mention_mode
495
+ * const channel_mention_mode = await prisma.channel_mention_mode.findUniqueOrThrow({
496
+ * where: {
497
+ * // ... provide filter here
498
+ * }
499
+ * })
500
+ */
501
+ findUniqueOrThrow<T extends channel_mention_modeFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, channel_mention_modeFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
502
+
503
+ /**
504
+ * Find the first Channel_mention_mode that matches the filter.
505
+ * Note, that providing `undefined` is treated as the value not being there.
506
+ * Read more here: https://pris.ly/d/null-undefined
507
+ * @param {channel_mention_modeFindFirstArgs} args - Arguments to find a Channel_mention_mode
508
+ * @example
509
+ * // Get one Channel_mention_mode
510
+ * const channel_mention_mode = await prisma.channel_mention_mode.findFirst({
511
+ * where: {
512
+ * // ... provide filter here
513
+ * }
514
+ * })
515
+ */
516
+ findFirst<T extends channel_mention_modeFindFirstArgs>(args?: Prisma.SelectSubset<T, channel_mention_modeFindFirstArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
517
+
518
+ /**
519
+ * Find the first Channel_mention_mode that matches the filter or
520
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
521
+ * Note, that providing `undefined` is treated as the value not being there.
522
+ * Read more here: https://pris.ly/d/null-undefined
523
+ * @param {channel_mention_modeFindFirstOrThrowArgs} args - Arguments to find a Channel_mention_mode
524
+ * @example
525
+ * // Get one Channel_mention_mode
526
+ * const channel_mention_mode = await prisma.channel_mention_mode.findFirstOrThrow({
527
+ * where: {
528
+ * // ... provide filter here
529
+ * }
530
+ * })
531
+ */
532
+ findFirstOrThrow<T extends channel_mention_modeFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, channel_mention_modeFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
533
+
534
+ /**
535
+ * Find zero or more Channel_mention_modes that matches the filter.
536
+ * Note, that providing `undefined` is treated as the value not being there.
537
+ * Read more here: https://pris.ly/d/null-undefined
538
+ * @param {channel_mention_modeFindManyArgs} args - Arguments to filter and select certain fields only.
539
+ * @example
540
+ * // Get all Channel_mention_modes
541
+ * const channel_mention_modes = await prisma.channel_mention_mode.findMany()
542
+ *
543
+ * // Get first 10 Channel_mention_modes
544
+ * const channel_mention_modes = await prisma.channel_mention_mode.findMany({ take: 10 })
545
+ *
546
+ * // Only select the `channel_id`
547
+ * const channel_mention_modeWithChannel_idOnly = await prisma.channel_mention_mode.findMany({ select: { channel_id: true } })
548
+ *
549
+ */
550
+ findMany<T extends channel_mention_modeFindManyArgs>(args?: Prisma.SelectSubset<T, channel_mention_modeFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
551
+
552
+ /**
553
+ * Create a Channel_mention_mode.
554
+ * @param {channel_mention_modeCreateArgs} args - Arguments to create a Channel_mention_mode.
555
+ * @example
556
+ * // Create one Channel_mention_mode
557
+ * const Channel_mention_mode = await prisma.channel_mention_mode.create({
558
+ * data: {
559
+ * // ... data to create a Channel_mention_mode
560
+ * }
561
+ * })
562
+ *
563
+ */
564
+ create<T extends channel_mention_modeCreateArgs>(args: Prisma.SelectSubset<T, channel_mention_modeCreateArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
565
+
566
+ /**
567
+ * Create many Channel_mention_modes.
568
+ * @param {channel_mention_modeCreateManyArgs} args - Arguments to create many Channel_mention_modes.
569
+ * @example
570
+ * // Create many Channel_mention_modes
571
+ * const channel_mention_mode = await prisma.channel_mention_mode.createMany({
572
+ * data: [
573
+ * // ... provide data here
574
+ * ]
575
+ * })
576
+ *
577
+ */
578
+ createMany<T extends channel_mention_modeCreateManyArgs>(args?: Prisma.SelectSubset<T, channel_mention_modeCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
579
+
580
+ /**
581
+ * Create many Channel_mention_modes and returns the data saved in the database.
582
+ * @param {channel_mention_modeCreateManyAndReturnArgs} args - Arguments to create many Channel_mention_modes.
583
+ * @example
584
+ * // Create many Channel_mention_modes
585
+ * const channel_mention_mode = await prisma.channel_mention_mode.createManyAndReturn({
586
+ * data: [
587
+ * // ... provide data here
588
+ * ]
589
+ * })
590
+ *
591
+ * // Create many Channel_mention_modes and only return the `channel_id`
592
+ * const channel_mention_modeWithChannel_idOnly = await prisma.channel_mention_mode.createManyAndReturn({
593
+ * select: { channel_id: true },
594
+ * data: [
595
+ * // ... provide data here
596
+ * ]
597
+ * })
598
+ * Note, that providing `undefined` is treated as the value not being there.
599
+ * Read more here: https://pris.ly/d/null-undefined
600
+ *
601
+ */
602
+ createManyAndReturn<T extends channel_mention_modeCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, channel_mention_modeCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
603
+
604
+ /**
605
+ * Delete a Channel_mention_mode.
606
+ * @param {channel_mention_modeDeleteArgs} args - Arguments to delete one Channel_mention_mode.
607
+ * @example
608
+ * // Delete one Channel_mention_mode
609
+ * const Channel_mention_mode = await prisma.channel_mention_mode.delete({
610
+ * where: {
611
+ * // ... filter to delete one Channel_mention_mode
612
+ * }
613
+ * })
614
+ *
615
+ */
616
+ delete<T extends channel_mention_modeDeleteArgs>(args: Prisma.SelectSubset<T, channel_mention_modeDeleteArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
617
+
618
+ /**
619
+ * Update one Channel_mention_mode.
620
+ * @param {channel_mention_modeUpdateArgs} args - Arguments to update one Channel_mention_mode.
621
+ * @example
622
+ * // Update one Channel_mention_mode
623
+ * const channel_mention_mode = await prisma.channel_mention_mode.update({
624
+ * where: {
625
+ * // ... provide filter here
626
+ * },
627
+ * data: {
628
+ * // ... provide data here
629
+ * }
630
+ * })
631
+ *
632
+ */
633
+ update<T extends channel_mention_modeUpdateArgs>(args: Prisma.SelectSubset<T, channel_mention_modeUpdateArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
634
+
635
+ /**
636
+ * Delete zero or more Channel_mention_modes.
637
+ * @param {channel_mention_modeDeleteManyArgs} args - Arguments to filter Channel_mention_modes to delete.
638
+ * @example
639
+ * // Delete a few Channel_mention_modes
640
+ * const { count } = await prisma.channel_mention_mode.deleteMany({
641
+ * where: {
642
+ * // ... provide filter here
643
+ * }
644
+ * })
645
+ *
646
+ */
647
+ deleteMany<T extends channel_mention_modeDeleteManyArgs>(args?: Prisma.SelectSubset<T, channel_mention_modeDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
648
+
649
+ /**
650
+ * Update zero or more Channel_mention_modes.
651
+ * Note, that providing `undefined` is treated as the value not being there.
652
+ * Read more here: https://pris.ly/d/null-undefined
653
+ * @param {channel_mention_modeUpdateManyArgs} args - Arguments to update one or more rows.
654
+ * @example
655
+ * // Update many Channel_mention_modes
656
+ * const channel_mention_mode = await prisma.channel_mention_mode.updateMany({
657
+ * where: {
658
+ * // ... provide filter here
659
+ * },
660
+ * data: {
661
+ * // ... provide data here
662
+ * }
663
+ * })
664
+ *
665
+ */
666
+ updateMany<T extends channel_mention_modeUpdateManyArgs>(args: Prisma.SelectSubset<T, channel_mention_modeUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
667
+
668
+ /**
669
+ * Update zero or more Channel_mention_modes and returns the data updated in the database.
670
+ * @param {channel_mention_modeUpdateManyAndReturnArgs} args - Arguments to update many Channel_mention_modes.
671
+ * @example
672
+ * // Update many Channel_mention_modes
673
+ * const channel_mention_mode = await prisma.channel_mention_mode.updateManyAndReturn({
674
+ * where: {
675
+ * // ... provide filter here
676
+ * },
677
+ * data: [
678
+ * // ... provide data here
679
+ * ]
680
+ * })
681
+ *
682
+ * // Update zero or more Channel_mention_modes and only return the `channel_id`
683
+ * const channel_mention_modeWithChannel_idOnly = await prisma.channel_mention_mode.updateManyAndReturn({
684
+ * select: { channel_id: true },
685
+ * where: {
686
+ * // ... provide filter here
687
+ * },
688
+ * data: [
689
+ * // ... provide data here
690
+ * ]
691
+ * })
692
+ * Note, that providing `undefined` is treated as the value not being there.
693
+ * Read more here: https://pris.ly/d/null-undefined
694
+ *
695
+ */
696
+ updateManyAndReturn<T extends channel_mention_modeUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, channel_mention_modeUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
697
+
698
+ /**
699
+ * Create or update one Channel_mention_mode.
700
+ * @param {channel_mention_modeUpsertArgs} args - Arguments to update or create a Channel_mention_mode.
701
+ * @example
702
+ * // Update or create a Channel_mention_mode
703
+ * const channel_mention_mode = await prisma.channel_mention_mode.upsert({
704
+ * create: {
705
+ * // ... data to create a Channel_mention_mode
706
+ * },
707
+ * update: {
708
+ * // ... in case it already exists, update
709
+ * },
710
+ * where: {
711
+ * // ... the filter for the Channel_mention_mode we want to update
712
+ * }
713
+ * })
714
+ */
715
+ upsert<T extends channel_mention_modeUpsertArgs>(args: Prisma.SelectSubset<T, channel_mention_modeUpsertArgs<ExtArgs>>): Prisma.Prisma__channel_mention_modeClient<runtime.Types.Result.GetResult<Prisma.$channel_mention_modePayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
716
+
717
+
718
+ /**
719
+ * Count the number of Channel_mention_modes.
720
+ * Note, that providing `undefined` is treated as the value not being there.
721
+ * Read more here: https://pris.ly/d/null-undefined
722
+ * @param {channel_mention_modeCountArgs} args - Arguments to filter Channel_mention_modes to count.
723
+ * @example
724
+ * // Count the number of Channel_mention_modes
725
+ * const count = await prisma.channel_mention_mode.count({
726
+ * where: {
727
+ * // ... the filter for the Channel_mention_modes we want to count
728
+ * }
729
+ * })
730
+ **/
731
+ count<T extends channel_mention_modeCountArgs>(
732
+ args?: Prisma.Subset<T, channel_mention_modeCountArgs>,
733
+ ): Prisma.PrismaPromise<
734
+ T extends runtime.Types.Utils.Record<'select', any>
735
+ ? T['select'] extends true
736
+ ? number
737
+ : Prisma.GetScalarType<T['select'], Channel_mention_modeCountAggregateOutputType>
738
+ : number
739
+ >
740
+
741
+ /**
742
+ * Allows you to perform aggregations operations on a Channel_mention_mode.
743
+ * Note, that providing `undefined` is treated as the value not being there.
744
+ * Read more here: https://pris.ly/d/null-undefined
745
+ * @param {Channel_mention_modeAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
746
+ * @example
747
+ * // Ordered by age ascending
748
+ * // Where email contains prisma.io
749
+ * // Limited to the 10 users
750
+ * const aggregations = await prisma.user.aggregate({
751
+ * _avg: {
752
+ * age: true,
753
+ * },
754
+ * where: {
755
+ * email: {
756
+ * contains: "prisma.io",
757
+ * },
758
+ * },
759
+ * orderBy: {
760
+ * age: "asc",
761
+ * },
762
+ * take: 10,
763
+ * })
764
+ **/
765
+ aggregate<T extends Channel_mention_modeAggregateArgs>(args: Prisma.Subset<T, Channel_mention_modeAggregateArgs>): Prisma.PrismaPromise<GetChannel_mention_modeAggregateType<T>>
766
+
767
+ /**
768
+ * Group by Channel_mention_mode.
769
+ * Note, that providing `undefined` is treated as the value not being there.
770
+ * Read more here: https://pris.ly/d/null-undefined
771
+ * @param {channel_mention_modeGroupByArgs} args - Group by arguments.
772
+ * @example
773
+ * // Group by city, order by createdAt, get count
774
+ * const result = await prisma.user.groupBy({
775
+ * by: ['city', 'createdAt'],
776
+ * orderBy: {
777
+ * createdAt: true
778
+ * },
779
+ * _count: {
780
+ * _all: true
781
+ * },
782
+ * })
783
+ *
784
+ **/
785
+ groupBy<
786
+ T extends channel_mention_modeGroupByArgs,
787
+ HasSelectOrTake extends Prisma.Or<
788
+ Prisma.Extends<'skip', Prisma.Keys<T>>,
789
+ Prisma.Extends<'take', Prisma.Keys<T>>
790
+ >,
791
+ OrderByArg extends Prisma.True extends HasSelectOrTake
792
+ ? { orderBy: channel_mention_modeGroupByArgs['orderBy'] }
793
+ : { orderBy?: channel_mention_modeGroupByArgs['orderBy'] },
794
+ OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
795
+ ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
796
+ ByValid extends Prisma.Has<ByFields, OrderFields>,
797
+ HavingFields extends Prisma.GetHavingFields<T['having']>,
798
+ HavingValid extends Prisma.Has<ByFields, HavingFields>,
799
+ ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
800
+ InputErrors extends ByEmpty extends Prisma.True
801
+ ? `Error: "by" must not be empty.`
802
+ : HavingValid extends Prisma.False
803
+ ? {
804
+ [P in HavingFields]: P extends ByFields
805
+ ? never
806
+ : P extends string
807
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
808
+ : [
809
+ Error,
810
+ 'Field ',
811
+ P,
812
+ ` in "having" needs to be provided in "by"`,
813
+ ]
814
+ }[HavingFields]
815
+ : 'take' extends Prisma.Keys<T>
816
+ ? 'orderBy' extends Prisma.Keys<T>
817
+ ? ByValid extends Prisma.True
818
+ ? {}
819
+ : {
820
+ [P in OrderFields]: P extends ByFields
821
+ ? never
822
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
823
+ }[OrderFields]
824
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
825
+ : 'skip' extends Prisma.Keys<T>
826
+ ? 'orderBy' extends Prisma.Keys<T>
827
+ ? ByValid extends Prisma.True
828
+ ? {}
829
+ : {
830
+ [P in OrderFields]: P extends ByFields
831
+ ? never
832
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
833
+ }[OrderFields]
834
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
835
+ : ByValid extends Prisma.True
836
+ ? {}
837
+ : {
838
+ [P in OrderFields]: P extends ByFields
839
+ ? never
840
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
841
+ }[OrderFields]
842
+ >(args: Prisma.SubsetIntersection<T, channel_mention_modeGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetChannel_mention_modeGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
843
+ /**
844
+ * Fields of the channel_mention_mode model
845
+ */
846
+ readonly fields: channel_mention_modeFieldRefs;
847
+ }
848
+
849
+ /**
850
+ * The delegate class that acts as a "Promise-like" for channel_mention_mode.
851
+ * Why is this prefixed with `Prisma__`?
852
+ * Because we want to prevent naming conflicts as mentioned in
853
+ * https://github.com/prisma/prisma-client-js/issues/707
854
+ */
855
+ export interface Prisma__channel_mention_modeClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
856
+ readonly [Symbol.toStringTag]: "PrismaPromise"
857
+ channel<T extends Prisma.channel_directoriesDefaultArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.channel_directoriesDefaultArgs<ExtArgs>>): Prisma.Prisma__channel_directoriesClient<runtime.Types.Result.GetResult<Prisma.$channel_directoriesPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
858
+ /**
859
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
860
+ * @param onfulfilled The callback to execute when the Promise is resolved.
861
+ * @param onrejected The callback to execute when the Promise is rejected.
862
+ * @returns A Promise for the completion of which ever callback is executed.
863
+ */
864
+ 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>
865
+ /**
866
+ * Attaches a callback for only the rejection of the Promise.
867
+ * @param onrejected The callback to execute when the Promise is rejected.
868
+ * @returns A Promise for the completion of the callback.
869
+ */
870
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>
871
+ /**
872
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
873
+ * resolved value cannot be modified from the callback.
874
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
875
+ * @returns A Promise for the completion of the callback.
876
+ */
877
+ finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>
878
+ }
879
+
880
+
881
+
882
+
883
+ /**
884
+ * Fields of the channel_mention_mode model
885
+ */
886
+ export interface channel_mention_modeFieldRefs {
887
+ readonly channel_id: Prisma.FieldRef<"channel_mention_mode", 'String'>
888
+ readonly enabled: Prisma.FieldRef<"channel_mention_mode", 'Int'>
889
+ readonly created_at: Prisma.FieldRef<"channel_mention_mode", 'DateTime'>
890
+ readonly updated_at: Prisma.FieldRef<"channel_mention_mode", 'DateTime'>
891
+ }
892
+
893
+
894
+ // Custom InputTypes
895
+ /**
896
+ * channel_mention_mode findUnique
897
+ */
898
+ export type channel_mention_modeFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
899
+ /**
900
+ * Select specific fields to fetch from the channel_mention_mode
901
+ */
902
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
903
+ /**
904
+ * Omit specific fields from the channel_mention_mode
905
+ */
906
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
907
+ /**
908
+ * Choose, which related nodes to fetch as well
909
+ */
910
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
911
+ /**
912
+ * Filter, which channel_mention_mode to fetch.
913
+ */
914
+ where: Prisma.channel_mention_modeWhereUniqueInput
915
+ }
916
+
917
+ /**
918
+ * channel_mention_mode findUniqueOrThrow
919
+ */
920
+ export type channel_mention_modeFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
921
+ /**
922
+ * Select specific fields to fetch from the channel_mention_mode
923
+ */
924
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
925
+ /**
926
+ * Omit specific fields from the channel_mention_mode
927
+ */
928
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
929
+ /**
930
+ * Choose, which related nodes to fetch as well
931
+ */
932
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
933
+ /**
934
+ * Filter, which channel_mention_mode to fetch.
935
+ */
936
+ where: Prisma.channel_mention_modeWhereUniqueInput
937
+ }
938
+
939
+ /**
940
+ * channel_mention_mode findFirst
941
+ */
942
+ export type channel_mention_modeFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
943
+ /**
944
+ * Select specific fields to fetch from the channel_mention_mode
945
+ */
946
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
947
+ /**
948
+ * Omit specific fields from the channel_mention_mode
949
+ */
950
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
951
+ /**
952
+ * Choose, which related nodes to fetch as well
953
+ */
954
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
955
+ /**
956
+ * Filter, which channel_mention_mode to fetch.
957
+ */
958
+ where?: Prisma.channel_mention_modeWhereInput
959
+ /**
960
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
961
+ *
962
+ * Determine the order of channel_mention_modes to fetch.
963
+ */
964
+ orderBy?: Prisma.channel_mention_modeOrderByWithRelationInput | Prisma.channel_mention_modeOrderByWithRelationInput[]
965
+ /**
966
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
967
+ *
968
+ * Sets the position for searching for channel_mention_modes.
969
+ */
970
+ cursor?: Prisma.channel_mention_modeWhereUniqueInput
971
+ /**
972
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
973
+ *
974
+ * Take `±n` channel_mention_modes from the position of the cursor.
975
+ */
976
+ take?: number
977
+ /**
978
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
979
+ *
980
+ * Skip the first `n` channel_mention_modes.
981
+ */
982
+ skip?: number
983
+ /**
984
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
985
+ *
986
+ * Filter by unique combinations of channel_mention_modes.
987
+ */
988
+ distinct?: Prisma.Channel_mention_modeScalarFieldEnum | Prisma.Channel_mention_modeScalarFieldEnum[]
989
+ }
990
+
991
+ /**
992
+ * channel_mention_mode findFirstOrThrow
993
+ */
994
+ export type channel_mention_modeFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
995
+ /**
996
+ * Select specific fields to fetch from the channel_mention_mode
997
+ */
998
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
999
+ /**
1000
+ * Omit specific fields from the channel_mention_mode
1001
+ */
1002
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1003
+ /**
1004
+ * Choose, which related nodes to fetch as well
1005
+ */
1006
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1007
+ /**
1008
+ * Filter, which channel_mention_mode to fetch.
1009
+ */
1010
+ where?: Prisma.channel_mention_modeWhereInput
1011
+ /**
1012
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1013
+ *
1014
+ * Determine the order of channel_mention_modes to fetch.
1015
+ */
1016
+ orderBy?: Prisma.channel_mention_modeOrderByWithRelationInput | Prisma.channel_mention_modeOrderByWithRelationInput[]
1017
+ /**
1018
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1019
+ *
1020
+ * Sets the position for searching for channel_mention_modes.
1021
+ */
1022
+ cursor?: Prisma.channel_mention_modeWhereUniqueInput
1023
+ /**
1024
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1025
+ *
1026
+ * Take `±n` channel_mention_modes from the position of the cursor.
1027
+ */
1028
+ take?: number
1029
+ /**
1030
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1031
+ *
1032
+ * Skip the first `n` channel_mention_modes.
1033
+ */
1034
+ skip?: number
1035
+ /**
1036
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1037
+ *
1038
+ * Filter by unique combinations of channel_mention_modes.
1039
+ */
1040
+ distinct?: Prisma.Channel_mention_modeScalarFieldEnum | Prisma.Channel_mention_modeScalarFieldEnum[]
1041
+ }
1042
+
1043
+ /**
1044
+ * channel_mention_mode findMany
1045
+ */
1046
+ export type channel_mention_modeFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1047
+ /**
1048
+ * Select specific fields to fetch from the channel_mention_mode
1049
+ */
1050
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
1051
+ /**
1052
+ * Omit specific fields from the channel_mention_mode
1053
+ */
1054
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1055
+ /**
1056
+ * Choose, which related nodes to fetch as well
1057
+ */
1058
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1059
+ /**
1060
+ * Filter, which channel_mention_modes to fetch.
1061
+ */
1062
+ where?: Prisma.channel_mention_modeWhereInput
1063
+ /**
1064
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1065
+ *
1066
+ * Determine the order of channel_mention_modes to fetch.
1067
+ */
1068
+ orderBy?: Prisma.channel_mention_modeOrderByWithRelationInput | Prisma.channel_mention_modeOrderByWithRelationInput[]
1069
+ /**
1070
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1071
+ *
1072
+ * Sets the position for listing channel_mention_modes.
1073
+ */
1074
+ cursor?: Prisma.channel_mention_modeWhereUniqueInput
1075
+ /**
1076
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1077
+ *
1078
+ * Take `±n` channel_mention_modes from the position of the cursor.
1079
+ */
1080
+ take?: number
1081
+ /**
1082
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1083
+ *
1084
+ * Skip the first `n` channel_mention_modes.
1085
+ */
1086
+ skip?: number
1087
+ distinct?: Prisma.Channel_mention_modeScalarFieldEnum | Prisma.Channel_mention_modeScalarFieldEnum[]
1088
+ }
1089
+
1090
+ /**
1091
+ * channel_mention_mode create
1092
+ */
1093
+ export type channel_mention_modeCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1094
+ /**
1095
+ * Select specific fields to fetch from the channel_mention_mode
1096
+ */
1097
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
1098
+ /**
1099
+ * Omit specific fields from the channel_mention_mode
1100
+ */
1101
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1102
+ /**
1103
+ * Choose, which related nodes to fetch as well
1104
+ */
1105
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1106
+ /**
1107
+ * The data needed to create a channel_mention_mode.
1108
+ */
1109
+ data: Prisma.XOR<Prisma.channel_mention_modeCreateInput, Prisma.channel_mention_modeUncheckedCreateInput>
1110
+ }
1111
+
1112
+ /**
1113
+ * channel_mention_mode createMany
1114
+ */
1115
+ export type channel_mention_modeCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1116
+ /**
1117
+ * The data used to create many channel_mention_modes.
1118
+ */
1119
+ data: Prisma.channel_mention_modeCreateManyInput | Prisma.channel_mention_modeCreateManyInput[]
1120
+ }
1121
+
1122
+ /**
1123
+ * channel_mention_mode createManyAndReturn
1124
+ */
1125
+ export type channel_mention_modeCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1126
+ /**
1127
+ * Select specific fields to fetch from the channel_mention_mode
1128
+ */
1129
+ select?: Prisma.channel_mention_modeSelectCreateManyAndReturn<ExtArgs> | null
1130
+ /**
1131
+ * Omit specific fields from the channel_mention_mode
1132
+ */
1133
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1134
+ /**
1135
+ * The data used to create many channel_mention_modes.
1136
+ */
1137
+ data: Prisma.channel_mention_modeCreateManyInput | Prisma.channel_mention_modeCreateManyInput[]
1138
+ /**
1139
+ * Choose, which related nodes to fetch as well
1140
+ */
1141
+ include?: Prisma.channel_mention_modeIncludeCreateManyAndReturn<ExtArgs> | null
1142
+ }
1143
+
1144
+ /**
1145
+ * channel_mention_mode update
1146
+ */
1147
+ export type channel_mention_modeUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1148
+ /**
1149
+ * Select specific fields to fetch from the channel_mention_mode
1150
+ */
1151
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
1152
+ /**
1153
+ * Omit specific fields from the channel_mention_mode
1154
+ */
1155
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1156
+ /**
1157
+ * Choose, which related nodes to fetch as well
1158
+ */
1159
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1160
+ /**
1161
+ * The data needed to update a channel_mention_mode.
1162
+ */
1163
+ data: Prisma.XOR<Prisma.channel_mention_modeUpdateInput, Prisma.channel_mention_modeUncheckedUpdateInput>
1164
+ /**
1165
+ * Choose, which channel_mention_mode to update.
1166
+ */
1167
+ where: Prisma.channel_mention_modeWhereUniqueInput
1168
+ }
1169
+
1170
+ /**
1171
+ * channel_mention_mode updateMany
1172
+ */
1173
+ export type channel_mention_modeUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1174
+ /**
1175
+ * The data used to update channel_mention_modes.
1176
+ */
1177
+ data: Prisma.XOR<Prisma.channel_mention_modeUpdateManyMutationInput, Prisma.channel_mention_modeUncheckedUpdateManyInput>
1178
+ /**
1179
+ * Filter which channel_mention_modes to update
1180
+ */
1181
+ where?: Prisma.channel_mention_modeWhereInput
1182
+ /**
1183
+ * Limit how many channel_mention_modes to update.
1184
+ */
1185
+ limit?: number
1186
+ }
1187
+
1188
+ /**
1189
+ * channel_mention_mode updateManyAndReturn
1190
+ */
1191
+ export type channel_mention_modeUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1192
+ /**
1193
+ * Select specific fields to fetch from the channel_mention_mode
1194
+ */
1195
+ select?: Prisma.channel_mention_modeSelectUpdateManyAndReturn<ExtArgs> | null
1196
+ /**
1197
+ * Omit specific fields from the channel_mention_mode
1198
+ */
1199
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1200
+ /**
1201
+ * The data used to update channel_mention_modes.
1202
+ */
1203
+ data: Prisma.XOR<Prisma.channel_mention_modeUpdateManyMutationInput, Prisma.channel_mention_modeUncheckedUpdateManyInput>
1204
+ /**
1205
+ * Filter which channel_mention_modes to update
1206
+ */
1207
+ where?: Prisma.channel_mention_modeWhereInput
1208
+ /**
1209
+ * Limit how many channel_mention_modes to update.
1210
+ */
1211
+ limit?: number
1212
+ /**
1213
+ * Choose, which related nodes to fetch as well
1214
+ */
1215
+ include?: Prisma.channel_mention_modeIncludeUpdateManyAndReturn<ExtArgs> | null
1216
+ }
1217
+
1218
+ /**
1219
+ * channel_mention_mode upsert
1220
+ */
1221
+ export type channel_mention_modeUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1222
+ /**
1223
+ * Select specific fields to fetch from the channel_mention_mode
1224
+ */
1225
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
1226
+ /**
1227
+ * Omit specific fields from the channel_mention_mode
1228
+ */
1229
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1230
+ /**
1231
+ * Choose, which related nodes to fetch as well
1232
+ */
1233
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1234
+ /**
1235
+ * The filter to search for the channel_mention_mode to update in case it exists.
1236
+ */
1237
+ where: Prisma.channel_mention_modeWhereUniqueInput
1238
+ /**
1239
+ * In case the channel_mention_mode found by the `where` argument doesn't exist, create a new channel_mention_mode with this data.
1240
+ */
1241
+ create: Prisma.XOR<Prisma.channel_mention_modeCreateInput, Prisma.channel_mention_modeUncheckedCreateInput>
1242
+ /**
1243
+ * In case the channel_mention_mode was found with the provided `where` argument, update it with this data.
1244
+ */
1245
+ update: Prisma.XOR<Prisma.channel_mention_modeUpdateInput, Prisma.channel_mention_modeUncheckedUpdateInput>
1246
+ }
1247
+
1248
+ /**
1249
+ * channel_mention_mode delete
1250
+ */
1251
+ export type channel_mention_modeDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1252
+ /**
1253
+ * Select specific fields to fetch from the channel_mention_mode
1254
+ */
1255
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
1256
+ /**
1257
+ * Omit specific fields from the channel_mention_mode
1258
+ */
1259
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1260
+ /**
1261
+ * Choose, which related nodes to fetch as well
1262
+ */
1263
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1264
+ /**
1265
+ * Filter which channel_mention_mode to delete.
1266
+ */
1267
+ where: Prisma.channel_mention_modeWhereUniqueInput
1268
+ }
1269
+
1270
+ /**
1271
+ * channel_mention_mode deleteMany
1272
+ */
1273
+ export type channel_mention_modeDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1274
+ /**
1275
+ * Filter which channel_mention_modes to delete
1276
+ */
1277
+ where?: Prisma.channel_mention_modeWhereInput
1278
+ /**
1279
+ * Limit how many channel_mention_modes to delete.
1280
+ */
1281
+ limit?: number
1282
+ }
1283
+
1284
+ /**
1285
+ * channel_mention_mode without action
1286
+ */
1287
+ export type channel_mention_modeDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1288
+ /**
1289
+ * Select specific fields to fetch from the channel_mention_mode
1290
+ */
1291
+ select?: Prisma.channel_mention_modeSelect<ExtArgs> | null
1292
+ /**
1293
+ * Omit specific fields from the channel_mention_mode
1294
+ */
1295
+ omit?: Prisma.channel_mention_modeOmit<ExtArgs> | null
1296
+ /**
1297
+ * Choose, which related nodes to fetch as well
1298
+ */
1299
+ include?: Prisma.channel_mention_modeInclude<ExtArgs> | null
1300
+ }