@otto-assistant/otto 0.1.1 → 0.7.15

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 (637) 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-account-identity.js +62 -0
  7. package/dist/anthropic-account-identity.test.js +38 -0
  8. package/dist/anthropic-auth-plugin.js +917 -0
  9. package/dist/anthropic-auth-state.js +303 -0
  10. package/dist/anthropic-auth-state.test.js +150 -0
  11. package/dist/bin.js +152 -0
  12. package/dist/btw-prefix-detection.js +17 -0
  13. package/dist/btw-prefix-detection.test.js +63 -0
  14. package/dist/channel-management.js +259 -0
  15. package/dist/cli-parsing.test.js +142 -0
  16. package/dist/cli-send-thread.e2e.test.js +353 -0
  17. package/dist/cli-telegram-options.test.js +99 -0
  18. package/dist/cli.js +4210 -568
  19. package/dist/commands/abort.js +65 -0
  20. package/dist/commands/action-buttons.js +245 -0
  21. package/dist/commands/add-dir.js +124 -0
  22. package/dist/commands/add-dir.test.js +126 -0
  23. package/dist/commands/add-project.js +113 -0
  24. package/dist/commands/agent.js +355 -0
  25. package/dist/commands/ask-question.js +320 -0
  26. package/dist/commands/ask-question.test.js +92 -0
  27. package/dist/commands/btw.js +121 -0
  28. package/dist/commands/cli-commands-group-a.test.js +728 -0
  29. package/dist/commands/cli-commands-group-b.test.js +695 -0
  30. package/dist/commands/compact.js +120 -0
  31. package/dist/commands/context-usage.js +140 -0
  32. package/dist/commands/create-new-project.js +130 -0
  33. package/dist/commands/diff.js +63 -0
  34. package/dist/commands/discord-commands-group-a.test.js +621 -0
  35. package/dist/commands/discord-commands-group-b.test.js +595 -0
  36. package/dist/commands/discord-commands-group-c.test.js +739 -0
  37. package/dist/commands/file-upload.js +275 -0
  38. package/dist/commands/fork-subagent.js +177 -0
  39. package/dist/commands/fork.js +262 -0
  40. package/dist/commands/gemini-apikey.js +70 -0
  41. package/dist/commands/login.js +887 -0
  42. package/dist/commands/mcp.js +239 -0
  43. package/dist/commands/memory-snapshot.js +24 -0
  44. package/dist/commands/mention-mode.js +44 -0
  45. package/dist/commands/merge-worktree.js +162 -0
  46. package/dist/commands/model-variant.js +366 -0
  47. package/dist/commands/model.js +794 -0
  48. package/dist/commands/new-worktree.js +465 -0
  49. package/dist/commands/paginated-select.js +57 -0
  50. package/dist/commands/permissions.js +274 -0
  51. package/dist/commands/queue.js +223 -0
  52. package/dist/commands/remove-project.js +115 -0
  53. package/dist/commands/restart-opencode-server.js +127 -0
  54. package/dist/commands/resume.js +149 -0
  55. package/dist/commands/run-command.js +79 -0
  56. package/dist/commands/screenshare.js +303 -0
  57. package/dist/commands/screenshare.test.js +20 -0
  58. package/dist/commands/session-id.js +78 -0
  59. package/dist/commands/session.js +176 -0
  60. package/dist/commands/share.js +80 -0
  61. package/dist/commands/tasks.js +205 -0
  62. package/dist/commands/thread-deletion-sync.js +50 -0
  63. package/dist/commands/types.js +2 -0
  64. package/dist/commands/undo-redo.js +305 -0
  65. package/dist/commands/unset-model.js +139 -0
  66. package/dist/commands/upgrade.js +48 -0
  67. package/dist/commands/user-command.js +155 -0
  68. package/dist/commands/verbosity.js +125 -0
  69. package/dist/commands/vscode.js +269 -0
  70. package/dist/commands/worktree-settings.js +43 -0
  71. package/dist/commands/worktrees.js +468 -0
  72. package/dist/condense-memory.js +33 -0
  73. package/dist/config.js +100 -255
  74. package/dist/context-awareness-plugin.js +340 -0
  75. package/dist/context-awareness-plugin.test.js +126 -0
  76. package/dist/critique-utils.js +95 -0
  77. package/dist/database.js +1355 -0
  78. package/dist/db.js +260 -0
  79. package/dist/db.test.js +138 -0
  80. package/dist/debounce-timeout.js +28 -0
  81. package/dist/debounced-process-flush.js +77 -0
  82. package/dist/discord-bot.js +1124 -0
  83. package/dist/discord-command-registration.js +567 -0
  84. package/dist/discord-urls.js +82 -0
  85. package/dist/discord-utils.js +616 -0
  86. package/dist/discord-utils.test.js +134 -0
  87. package/dist/errors.js +157 -0
  88. package/dist/escape-backticks.test.js +429 -0
  89. package/dist/event-stream-real-capture.e2e.test.js +533 -0
  90. package/dist/eventsource-parser.test.js +327 -0
  91. package/dist/exec-async.js +26 -0
  92. package/dist/external-opencode-sync.js +480 -0
  93. package/dist/format-tables.js +491 -0
  94. package/dist/format-tables.test.js +478 -0
  95. package/dist/forum-sync/config.js +79 -0
  96. package/dist/forum-sync/discord-operations.js +154 -0
  97. package/dist/forum-sync/index.js +5 -0
  98. package/dist/forum-sync/markdown.js +113 -0
  99. package/dist/forum-sync/sync-to-discord.js +417 -0
  100. package/dist/forum-sync/sync-to-files.js +190 -0
  101. package/dist/forum-sync/types.js +53 -0
  102. package/dist/forum-sync/watchers.js +307 -0
  103. package/dist/gateway-proxy-reconnect.e2e.test.js +394 -0
  104. package/dist/gateway-proxy.e2e.test.js +485 -0
  105. package/dist/genai-worker-wrapper.js +111 -0
  106. package/dist/genai-worker.js +311 -0
  107. package/dist/genai.js +232 -0
  108. package/dist/generated/browser.js +17 -0
  109. package/dist/generated/client.js +37 -0
  110. package/dist/generated/commonInputTypes.js +10 -0
  111. package/dist/generated/enums.js +58 -0
  112. package/dist/generated/internal/class.js +49 -0
  113. package/dist/generated/internal/prismaNamespace.js +254 -0
  114. package/dist/generated/internal/prismaNamespaceBrowser.js +224 -0
  115. package/dist/generated/models/bot_api_keys.js +1 -0
  116. package/dist/generated/models/bot_tokens.js +1 -0
  117. package/dist/generated/models/channel_agents.js +1 -0
  118. package/dist/generated/models/channel_directories.js +1 -0
  119. package/dist/generated/models/channel_mention_mode.js +1 -0
  120. package/dist/generated/models/channel_models.js +1 -0
  121. package/dist/generated/models/channel_verbosity.js +1 -0
  122. package/dist/generated/models/channel_worktrees.js +1 -0
  123. package/dist/generated/models/forum_sync_configs.js +1 -0
  124. package/dist/generated/models/global_models.js +1 -0
  125. package/dist/generated/models/ipc_requests.js +1 -0
  126. package/dist/generated/models/part_messages.js +1 -0
  127. package/dist/generated/models/scheduled_tasks.js +1 -0
  128. package/dist/generated/models/session_agents.js +1 -0
  129. package/dist/generated/models/session_events.js +1 -0
  130. package/dist/generated/models/session_models.js +1 -0
  131. package/dist/generated/models/session_start_sources.js +1 -0
  132. package/dist/generated/models/thread_sessions.js +1 -0
  133. package/dist/generated/models/thread_worktrees.js +1 -0
  134. package/dist/generated/models.js +1 -0
  135. package/dist/heap-monitor.js +122 -0
  136. package/dist/hrana-server.js +251 -0
  137. package/dist/hrana-server.test.js +370 -0
  138. package/dist/html-actions.js +123 -0
  139. package/dist/html-actions.test.js +70 -0
  140. package/dist/html-components.js +117 -0
  141. package/dist/html-components.test.js +34 -0
  142. package/dist/image-optimizer-plugin.js +153 -0
  143. package/dist/image-utils.js +112 -0
  144. package/dist/interaction-handler.js +420 -0
  145. package/dist/ipc-polling.js +327 -0
  146. package/dist/ipc-tools-plugin.js +193 -0
  147. package/dist/ipc-utils.js +18 -0
  148. package/dist/limit-heading-depth.js +25 -0
  149. package/dist/limit-heading-depth.test.js +105 -0
  150. package/dist/logger.js +171 -0
  151. package/dist/markdown.js +342 -0
  152. package/dist/markdown.test.js +264 -0
  153. package/dist/memory-overview-plugin.js +128 -0
  154. package/dist/message-finish-field.e2e.test.js +168 -0
  155. package/dist/message-formatting.js +415 -0
  156. package/dist/message-formatting.test.js +115 -0
  157. package/dist/message-preprocessing.js +359 -0
  158. package/dist/onboarding-tutorial.js +163 -0
  159. package/dist/onboarding-welcome.js +37 -0
  160. package/dist/openai-realtime.js +224 -0
  161. package/dist/opencode-command-detection.js +65 -0
  162. package/dist/opencode-command-detection.test.js +240 -0
  163. package/dist/opencode-command.js +131 -0
  164. package/dist/opencode-command.test.js +48 -0
  165. package/dist/opencode-interrupt-plugin.js +388 -0
  166. package/dist/opencode-interrupt-plugin.test.js +463 -0
  167. package/dist/opencode.js +1117 -0
  168. package/dist/otto/branding.js +22 -0
  169. package/dist/otto/index.js +21 -0
  170. package/dist/otto-digital-twin.e2e.test.js +161 -0
  171. package/dist/otto-opencode-plugin-loading.e2e.test.js +94 -0
  172. package/dist/otto-opencode-plugin.js +21 -0
  173. package/dist/otto-opencode-plugin.test.js +98 -0
  174. package/dist/parse-permission-rules.test.js +117 -0
  175. package/dist/patch-text-parser.js +97 -0
  176. package/dist/plugin-logger.js +68 -0
  177. package/dist/privacy-sanitizer.js +105 -0
  178. package/dist/queue-advanced-abort.e2e.test.js +293 -0
  179. package/dist/queue-advanced-action-buttons.e2e.test.js +206 -0
  180. package/dist/queue-advanced-e2e-setup.js +790 -0
  181. package/dist/queue-advanced-footer.e2e.test.js +481 -0
  182. package/dist/queue-advanced-model-switch.e2e.test.js +299 -0
  183. package/dist/queue-advanced-permissions-typing.e2e.test.js +179 -0
  184. package/dist/queue-advanced-question.e2e.test.js +261 -0
  185. package/dist/queue-advanced-typing-interrupt.e2e.test.js +114 -0
  186. package/dist/queue-advanced-typing.e2e.test.js +153 -0
  187. package/dist/queue-drain-after-interactive-ui.e2e.test.js +119 -0
  188. package/dist/queue-interrupt-drain.e2e.test.js +135 -0
  189. package/dist/queue-question-select-drain.e2e.test.js +256 -0
  190. package/dist/runtime-idle-sweeper.js +52 -0
  191. package/dist/runtime-lifecycle.e2e.test.js +514 -0
  192. package/dist/sentry.js +23 -0
  193. package/dist/session-handler/agent-utils.js +67 -0
  194. package/dist/session-handler/event-stream-state.js +475 -0
  195. package/dist/session-handler/event-stream-state.test.js +632 -0
  196. package/dist/session-handler/model-utils.js +147 -0
  197. package/dist/session-handler/opencode-session-event-log.js +94 -0
  198. package/dist/session-handler/thread-runtime-state.js +131 -0
  199. package/dist/session-handler/thread-session-runtime.js +3390 -0
  200. package/dist/session-handler.js +9 -0
  201. package/dist/session-search.js +100 -0
  202. package/dist/session-search.test.js +40 -0
  203. package/dist/session-title-rename.test.js +92 -0
  204. package/dist/skill-filter.js +31 -0
  205. package/dist/skill-filter.test.js +65 -0
  206. package/dist/startup-service.js +153 -0
  207. package/dist/startup-time.e2e.test.js +296 -0
  208. package/dist/store.js +19 -0
  209. package/dist/subagent-rate-limit-plugin.js +175 -0
  210. package/dist/system-message.js +702 -0
  211. package/dist/system-message.test.js +697 -0
  212. package/dist/task-runner.js +530 -0
  213. package/dist/task-schedule.js +213 -0
  214. package/dist/task-schedule.test.js +71 -0
  215. package/dist/test-utils.js +313 -0
  216. package/dist/thinking-utils.js +35 -0
  217. package/dist/thread-message-queue.e2e.test.js +1111 -0
  218. package/dist/tools.js +357 -0
  219. package/dist/undo-redo.e2e.test.js +161 -0
  220. package/dist/unnest-code-blocks.js +146 -0
  221. package/dist/unnest-code-blocks.test.js +673 -0
  222. package/dist/upgrade.js +156 -0
  223. package/dist/utils.js +172 -0
  224. package/dist/utils.test.js +130 -0
  225. package/dist/voice-attachment.js +34 -0
  226. package/dist/voice-handler.js +646 -0
  227. package/dist/voice-message.e2e.test.js +1021 -0
  228. package/dist/voice.js +456 -0
  229. package/dist/voice.test.js +235 -0
  230. package/dist/wait-session.js +171 -0
  231. package/dist/websockify.js +69 -0
  232. package/dist/worker-types.js +4 -0
  233. package/dist/worktree-lifecycle.e2e.test.js +311 -0
  234. package/dist/worktree-utils.js +3 -0
  235. package/dist/worktrees.js +991 -0
  236. package/dist/worktrees.test.js +415 -0
  237. package/dist/xml.js +92 -0
  238. package/dist/xml.test.js +32 -0
  239. package/package.json +90 -38
  240. package/schema.prisma +303 -0
  241. package/skills/batch/SKILL.md +87 -0
  242. package/skills/critique/SKILL.md +112 -0
  243. package/skills/egaki/SKILL.md +100 -0
  244. package/skills/errore/SKILL.md +647 -0
  245. package/skills/event-sourcing-state/SKILL.md +252 -0
  246. package/skills/goke/SKILL.md +38 -0
  247. package/skills/jitter/EDITOR.md +219 -0
  248. package/skills/jitter/EXPORT-INTERNALS.md +309 -0
  249. package/skills/jitter/SKILL.md +158 -0
  250. package/skills/jitter/jitter-clipboard.json +1042 -0
  251. package/skills/jitter/package.json +14 -0
  252. package/skills/jitter/tsconfig.json +15 -0
  253. package/skills/jitter/utils/actions.ts +212 -0
  254. package/skills/jitter/utils/export.ts +114 -0
  255. package/skills/jitter/utils/index.ts +141 -0
  256. package/skills/jitter/utils/snapshot.ts +154 -0
  257. package/skills/jitter/utils/traverse.ts +246 -0
  258. package/skills/jitter/utils/types.ts +279 -0
  259. package/skills/jitter/utils/wait.ts +133 -0
  260. package/skills/lintcn/SKILL.md +873 -0
  261. package/skills/manual-kimaki-upstream-adapt/SKILL.md +114 -0
  262. package/skills/new-skill/SKILL.md +237 -0
  263. package/skills/npm-package/SKILL.md +617 -0
  264. package/skills/opensrc/SKILL.md +78 -0
  265. package/skills/otto-publish/SKILL.md +61 -0
  266. package/skills/playwriter/SKILL.md +35 -0
  267. package/skills/profano/SKILL.md +16 -0
  268. package/skills/proxyman/SKILL.md +215 -0
  269. package/skills/security-review/SKILL.md +208 -0
  270. package/skills/sigillo/SKILL.md +101 -0
  271. package/skills/simplify/SKILL.md +58 -0
  272. package/skills/spiceflow/SKILL.md +28 -0
  273. package/skills/termcast/SKILL.md +945 -0
  274. package/skills/tuistory/SKILL.md +98 -0
  275. package/skills/usecomputer/SKILL.md +264 -0
  276. package/skills/x-articles/SKILL.md +554 -0
  277. package/skills/zele/SKILL.md +49 -0
  278. package/skills/zustand-centralized-state/SKILL.md +1004 -0
  279. package/src/agent-model.e2e.test.ts +979 -0
  280. package/src/ai-tool-to-genai.test.ts +296 -0
  281. package/src/ai-tool-to-genai.ts +283 -0
  282. package/src/ai-tool.ts +39 -0
  283. package/src/anthropic-account-identity.test.ts +52 -0
  284. package/src/anthropic-account-identity.ts +77 -0
  285. package/src/anthropic-auth-plugin.ts +1139 -0
  286. package/src/anthropic-auth-state.test.ts +187 -0
  287. package/src/anthropic-auth-state.ts +386 -0
  288. package/src/bin.ts +182 -0
  289. package/src/btw-prefix-detection.test.ts +73 -0
  290. package/src/btw-prefix-detection.ts +23 -0
  291. package/src/channel-management.ts +376 -0
  292. package/src/cli-parsing.test.ts +197 -0
  293. package/src/cli-send-thread.e2e.test.ts +463 -0
  294. package/src/cli-telegram-options.test.ts +114 -0
  295. package/src/cli.ts +5718 -580
  296. package/src/commands/abort.ts +89 -0
  297. package/src/commands/action-buttons.ts +364 -0
  298. package/src/commands/add-dir.test.ts +154 -0
  299. package/src/commands/add-dir.ts +175 -0
  300. package/src/commands/add-project.ts +149 -0
  301. package/src/commands/agent.ts +496 -0
  302. package/src/commands/ask-question.test.ts +111 -0
  303. package/src/commands/ask-question.ts +455 -0
  304. package/src/commands/btw.ts +184 -0
  305. package/src/commands/cli-commands-group-a.test.ts +837 -0
  306. package/src/commands/cli-commands-group-b.test.ts +800 -0
  307. package/src/commands/compact.ts +157 -0
  308. package/src/commands/context-usage.ts +199 -0
  309. package/src/commands/create-new-project.ts +190 -0
  310. package/src/commands/diff.ts +91 -0
  311. package/src/commands/discord-commands-group-a.test.ts +751 -0
  312. package/src/commands/discord-commands-group-b.test.ts +648 -0
  313. package/src/commands/discord-commands-group-c.test.ts +882 -0
  314. package/src/commands/file-upload.ts +389 -0
  315. package/src/commands/fork-subagent.ts +263 -0
  316. package/src/commands/fork.ts +386 -0
  317. package/src/commands/gemini-apikey.ts +104 -0
  318. package/src/commands/login.ts +1175 -0
  319. package/src/commands/mcp.ts +307 -0
  320. package/src/commands/memory-snapshot.ts +30 -0
  321. package/src/commands/mention-mode.ts +68 -0
  322. package/src/commands/merge-worktree.ts +226 -0
  323. package/src/commands/model-variant.ts +485 -0
  324. package/src/commands/model.ts +1078 -0
  325. package/src/commands/new-worktree.ts +645 -0
  326. package/src/commands/paginated-select.ts +81 -0
  327. package/src/commands/permissions.ts +397 -0
  328. package/src/commands/queue.ts +293 -0
  329. package/src/commands/remove-project.ts +155 -0
  330. package/src/commands/restart-opencode-server.ts +162 -0
  331. package/src/commands/resume.ts +230 -0
  332. package/src/commands/run-command.ts +123 -0
  333. package/src/commands/screenshare.test.ts +30 -0
  334. package/src/commands/screenshare.ts +366 -0
  335. package/src/commands/session-id.ts +109 -0
  336. package/src/commands/session.ts +227 -0
  337. package/src/commands/share.ts +106 -0
  338. package/src/commands/tasks.ts +293 -0
  339. package/src/commands/thread-deletion-sync.ts +80 -0
  340. package/src/commands/types.ts +25 -0
  341. package/src/commands/undo-redo.ts +386 -0
  342. package/src/commands/unset-model.ts +174 -0
  343. package/src/commands/upgrade.ts +59 -0
  344. package/src/commands/user-command.ts +198 -0
  345. package/src/commands/verbosity.ts +173 -0
  346. package/src/commands/vscode.ts +342 -0
  347. package/src/commands/worktree-settings.ts +70 -0
  348. package/src/commands/worktrees.ts +645 -0
  349. package/src/condense-memory.ts +36 -0
  350. package/src/config.ts +103 -339
  351. package/src/context-awareness-plugin.test.ts +144 -0
  352. package/src/context-awareness-plugin.ts +469 -0
  353. package/src/critique-utils.ts +139 -0
  354. package/src/database.ts +1949 -0
  355. package/src/db.test.ts +162 -0
  356. package/src/db.ts +295 -0
  357. package/src/debounce-timeout.ts +43 -0
  358. package/src/debounced-process-flush.ts +104 -0
  359. package/src/discord-bot.ts +1505 -0
  360. package/src/discord-command-registration.ts +752 -0
  361. package/src/discord-urls.ts +89 -0
  362. package/src/discord-utils.test.ts +153 -0
  363. package/src/discord-utils.ts +846 -0
  364. package/src/errors.ts +201 -0
  365. package/src/escape-backticks.test.ts +469 -0
  366. package/src/event-stream-real-capture.e2e.test.ts +692 -0
  367. package/src/eventsource-parser.test.ts +351 -0
  368. package/src/exec-async.ts +35 -0
  369. package/src/external-opencode-sync.ts +685 -0
  370. package/src/format-tables.test.ts +515 -0
  371. package/src/format-tables.ts +718 -0
  372. package/src/forum-sync/config.ts +92 -0
  373. package/src/forum-sync/discord-operations.ts +241 -0
  374. package/src/forum-sync/index.ts +9 -0
  375. package/src/forum-sync/markdown.ts +172 -0
  376. package/src/forum-sync/sync-to-discord.ts +595 -0
  377. package/src/forum-sync/sync-to-files.ts +294 -0
  378. package/src/forum-sync/types.ts +175 -0
  379. package/src/forum-sync/watchers.ts +454 -0
  380. package/src/gateway-proxy-reconnect.e2e.test.ts +523 -0
  381. package/src/gateway-proxy.e2e.test.ts +644 -0
  382. package/src/genai-worker-wrapper.ts +164 -0
  383. package/src/genai-worker.ts +386 -0
  384. package/src/genai.ts +321 -0
  385. package/src/generated/browser.ts +114 -0
  386. package/src/generated/client.ts +138 -0
  387. package/src/generated/commonInputTypes.ts +770 -0
  388. package/src/generated/enums.ts +98 -0
  389. package/src/generated/internal/class.ts +384 -0
  390. package/src/generated/internal/prismaNamespace.ts +2394 -0
  391. package/src/generated/internal/prismaNamespaceBrowser.ts +327 -0
  392. package/src/generated/models/bot_api_keys.ts +1288 -0
  393. package/src/generated/models/bot_tokens.ts +1700 -0
  394. package/src/generated/models/channel_agents.ts +1256 -0
  395. package/src/generated/models/channel_directories.ts +1859 -0
  396. package/src/generated/models/channel_mention_mode.ts +1300 -0
  397. package/src/generated/models/channel_models.ts +1288 -0
  398. package/src/generated/models/channel_verbosity.ts +1228 -0
  399. package/src/generated/models/channel_worktrees.ts +1300 -0
  400. package/src/generated/models/forum_sync_configs.ts +1452 -0
  401. package/src/generated/models/global_models.ts +1288 -0
  402. package/src/generated/models/ipc_requests.ts +1485 -0
  403. package/src/generated/models/part_messages.ts +1302 -0
  404. package/src/generated/models/scheduled_tasks.ts +2320 -0
  405. package/src/generated/models/session_agents.ts +1086 -0
  406. package/src/generated/models/session_events.ts +1439 -0
  407. package/src/generated/models/session_models.ts +1114 -0
  408. package/src/generated/models/session_start_sources.ts +1408 -0
  409. package/src/generated/models/thread_sessions.ts +1781 -0
  410. package/src/generated/models/thread_worktrees.ts +1356 -0
  411. package/src/generated/models.ts +30 -0
  412. package/src/heap-monitor.ts +152 -0
  413. package/src/hrana-server.test.ts +434 -0
  414. package/src/hrana-server.ts +299 -0
  415. package/src/html-actions.test.ts +87 -0
  416. package/src/html-actions.ts +174 -0
  417. package/src/html-components.test.ts +38 -0
  418. package/src/html-components.ts +181 -0
  419. package/src/image-optimizer-plugin.ts +194 -0
  420. package/src/image-utils.ts +149 -0
  421. package/src/interaction-handler.ts +610 -0
  422. package/src/ipc-polling.ts +427 -0
  423. package/src/ipc-tools-plugin.ts +236 -0
  424. package/src/ipc-utils.ts +29 -0
  425. package/src/limit-heading-depth.test.ts +116 -0
  426. package/src/limit-heading-depth.ts +26 -0
  427. package/src/logger.ts +215 -0
  428. package/src/markdown.test.ts +315 -0
  429. package/src/markdown.ts +410 -0
  430. package/src/memory-overview-plugin.ts +163 -0
  431. package/src/message-finish-field.e2e.test.ts +195 -0
  432. package/src/message-formatting.test.ts +126 -0
  433. package/src/message-formatting.ts +535 -0
  434. package/src/message-preprocessing.ts +488 -0
  435. package/src/onboarding-tutorial.ts +167 -0
  436. package/src/onboarding-welcome.ts +49 -0
  437. package/src/openai-realtime.ts +358 -0
  438. package/src/opencode-command-detection.test.ts +307 -0
  439. package/src/opencode-command-detection.ts +76 -0
  440. package/src/opencode-command.test.ts +70 -0
  441. package/src/opencode-command.ts +191 -0
  442. package/src/opencode-interrupt-plugin.test.ts +682 -0
  443. package/src/opencode-interrupt-plugin.ts +507 -0
  444. package/src/opencode.ts +1453 -0
  445. package/src/otto/branding.ts +23 -0
  446. package/src/otto/index.ts +22 -0
  447. package/src/otto-digital-twin.e2e.test.ts +199 -0
  448. package/src/otto-opencode-plugin-loading.e2e.test.ts +117 -0
  449. package/src/otto-opencode-plugin.test.ts +108 -0
  450. package/src/otto-opencode-plugin.ts +22 -0
  451. package/src/parse-permission-rules.test.ts +127 -0
  452. package/src/patch-text-parser.ts +107 -0
  453. package/src/plugin-logger.ts +84 -0
  454. package/src/privacy-sanitizer.ts +142 -0
  455. package/src/queue-advanced-abort.e2e.test.ts +382 -0
  456. package/src/queue-advanced-action-buttons.e2e.test.ts +268 -0
  457. package/src/queue-advanced-e2e-setup.ts +877 -0
  458. package/src/queue-advanced-footer.e2e.test.ts +591 -0
  459. package/src/queue-advanced-model-switch.e2e.test.ts +383 -0
  460. package/src/queue-advanced-permissions-typing.e2e.test.ts +246 -0
  461. package/src/queue-advanced-question.e2e.test.ts +316 -0
  462. package/src/queue-advanced-typing-interrupt.e2e.test.ts +146 -0
  463. package/src/queue-advanced-typing.e2e.test.ts +199 -0
  464. package/src/queue-drain-after-interactive-ui.e2e.test.ts +151 -0
  465. package/src/queue-interrupt-drain.e2e.test.ts +166 -0
  466. package/src/queue-question-select-drain.e2e.test.ts +327 -0
  467. package/src/runtime-idle-sweeper.ts +76 -0
  468. package/src/runtime-lifecycle.e2e.test.ts +651 -0
  469. package/src/schema.sql +174 -0
  470. package/src/sentry.ts +26 -0
  471. package/src/session-handler/agent-utils.ts +99 -0
  472. package/src/session-handler/event-stream-fixtures/real-session-action-buttons.jsonl +45 -0
  473. package/src/session-handler/event-stream-fixtures/real-session-footer-suppressed-on-pre-idle-interrupt.jsonl +40 -0
  474. package/src/session-handler/event-stream-fixtures/real-session-permission-external-file.jsonl +23 -0
  475. package/src/session-handler/event-stream-fixtures/real-session-task-normal.jsonl +22 -0
  476. package/src/session-handler/event-stream-fixtures/real-session-task-three-parallel-sleeps.jsonl +277 -0
  477. package/src/session-handler/event-stream-fixtures/real-session-task-user-interruption.jsonl +46 -0
  478. package/src/session-handler/event-stream-fixtures/session-abort-after-idle-race.jsonl +21 -0
  479. package/src/session-handler/event-stream-fixtures/session-concurrent-messages-serialized.jsonl +56 -0
  480. package/src/session-handler/event-stream-fixtures/session-explicit-abort.jsonl +44 -0
  481. package/src/session-handler/event-stream-fixtures/session-normal-completion.jsonl +29 -0
  482. package/src/session-handler/event-stream-fixtures/session-tool-call-noisy-stream.jsonl +29 -0
  483. package/src/session-handler/event-stream-fixtures/session-two-completions-same-session.jsonl +50 -0
  484. package/src/session-handler/event-stream-fixtures/session-user-interruption.jsonl +59 -0
  485. package/src/session-handler/event-stream-fixtures/session-voice-queued-followup.jsonl +52 -0
  486. package/src/session-handler/event-stream-state.test.ts +717 -0
  487. package/src/session-handler/event-stream-state.ts +706 -0
  488. package/src/session-handler/model-utils.ts +217 -0
  489. package/src/session-handler/opencode-session-event-log.ts +130 -0
  490. package/src/session-handler/thread-runtime-state.ts +247 -0
  491. package/src/session-handler/thread-session-runtime.ts +4440 -0
  492. package/src/session-handler.ts +15 -0
  493. package/src/session-search.test.ts +50 -0
  494. package/src/session-search.ts +148 -0
  495. package/src/session-title-rename.test.ts +130 -0
  496. package/src/skill-filter.test.ts +83 -0
  497. package/src/skill-filter.ts +42 -0
  498. package/src/startup-service.ts +200 -0
  499. package/src/startup-time.e2e.test.ts +373 -0
  500. package/src/store.ts +139 -0
  501. package/src/subagent-rate-limit-plugin.ts +218 -0
  502. package/src/system-message.test.ts +710 -0
  503. package/src/system-message.ts +814 -0
  504. package/src/task-runner.ts +725 -0
  505. package/src/task-schedule.test.ts +84 -0
  506. package/src/task-schedule.ts +317 -0
  507. package/src/test-utils.ts +451 -0
  508. package/src/thinking-utils.ts +61 -0
  509. package/src/thread-message-queue.e2e.test.ts +1350 -0
  510. package/src/tools.ts +430 -0
  511. package/src/undici.d.ts +12 -0
  512. package/src/undo-redo.e2e.test.ts +209 -0
  513. package/src/unnest-code-blocks.test.ts +713 -0
  514. package/src/unnest-code-blocks.ts +185 -0
  515. package/src/upgrade.ts +185 -0
  516. package/src/utils.test.ts +155 -0
  517. package/src/utils.ts +265 -0
  518. package/src/voice-attachment.ts +51 -0
  519. package/src/voice-handler.ts +908 -0
  520. package/src/voice-message.e2e.test.ts +1255 -0
  521. package/src/voice.test.ts +281 -0
  522. package/src/voice.ts +638 -0
  523. package/src/wait-session.ts +273 -0
  524. package/src/websockify.ts +101 -0
  525. package/src/worker-types.ts +64 -0
  526. package/src/worktree-lifecycle.e2e.test.ts +396 -0
  527. package/src/worktree-utils.ts +4 -0
  528. package/src/worktrees.test.ts +489 -0
  529. package/src/worktrees.ts +1370 -0
  530. package/src/xml.test.ts +38 -0
  531. package/src/xml.ts +121 -0
  532. package/dist/cli.d.ts +0 -3
  533. package/dist/cli.d.ts.map +0 -1
  534. package/dist/cli.js.map +0 -1
  535. package/dist/config.d.ts +0 -39
  536. package/dist/config.d.ts.map +0 -1
  537. package/dist/config.js.map +0 -1
  538. package/dist/config.test.d.ts +0 -2
  539. package/dist/config.test.d.ts.map +0 -1
  540. package/dist/config.test.js +0 -202
  541. package/dist/config.test.js.map +0 -1
  542. package/dist/detect.d.ts +0 -9
  543. package/dist/detect.d.ts.map +0 -1
  544. package/dist/detect.js +0 -40
  545. package/dist/detect.js.map +0 -1
  546. package/dist/detect.test.d.ts +0 -2
  547. package/dist/detect.test.d.ts.map +0 -1
  548. package/dist/detect.test.js +0 -26
  549. package/dist/detect.test.js.map +0 -1
  550. package/dist/docker.d.ts +0 -7
  551. package/dist/docker.d.ts.map +0 -1
  552. package/dist/docker.js +0 -17
  553. package/dist/docker.js.map +0 -1
  554. package/dist/docker.test.d.ts +0 -2
  555. package/dist/docker.test.d.ts.map +0 -1
  556. package/dist/docker.test.js +0 -12
  557. package/dist/docker.test.js.map +0 -1
  558. package/dist/health.d.ts +0 -31
  559. package/dist/health.d.ts.map +0 -1
  560. package/dist/health.js +0 -117
  561. package/dist/health.js.map +0 -1
  562. package/dist/health.test.d.ts +0 -2
  563. package/dist/health.test.d.ts.map +0 -1
  564. package/dist/health.test.js +0 -52
  565. package/dist/health.test.js.map +0 -1
  566. package/dist/index.d.ts +0 -20
  567. package/dist/index.d.ts.map +0 -1
  568. package/dist/index.js +0 -15
  569. package/dist/index.js.map +0 -1
  570. package/dist/index.test.d.ts +0 -2
  571. package/dist/index.test.d.ts.map +0 -1
  572. package/dist/index.test.js +0 -8
  573. package/dist/index.test.js.map +0 -1
  574. package/dist/installer.d.ts +0 -10
  575. package/dist/installer.d.ts.map +0 -1
  576. package/dist/installer.js +0 -50
  577. package/dist/installer.js.map +0 -1
  578. package/dist/installer.test.d.ts +0 -2
  579. package/dist/installer.test.d.ts.map +0 -1
  580. package/dist/installer.test.js +0 -43
  581. package/dist/installer.test.js.map +0 -1
  582. package/dist/lifecycle.d.ts +0 -10
  583. package/dist/lifecycle.d.ts.map +0 -1
  584. package/dist/lifecycle.js +0 -45
  585. package/dist/lifecycle.js.map +0 -1
  586. package/dist/lifecycle.test.d.ts +0 -2
  587. package/dist/lifecycle.test.d.ts.map +0 -1
  588. package/dist/lifecycle.test.js +0 -20
  589. package/dist/lifecycle.test.js.map +0 -1
  590. package/dist/manifest.d.ts +0 -18
  591. package/dist/manifest.d.ts.map +0 -1
  592. package/dist/manifest.js +0 -30
  593. package/dist/manifest.js.map +0 -1
  594. package/dist/skills-baseline.d.ts +0 -7
  595. package/dist/skills-baseline.d.ts.map +0 -1
  596. package/dist/skills-baseline.js +0 -9
  597. package/dist/skills-baseline.js.map +0 -1
  598. package/dist/skills.d.ts +0 -110
  599. package/dist/skills.d.ts.map +0 -1
  600. package/dist/skills.js +0 -429
  601. package/dist/skills.js.map +0 -1
  602. package/dist/skills.test.d.ts +0 -2
  603. package/dist/skills.test.d.ts.map +0 -1
  604. package/dist/skills.test.js +0 -416
  605. package/dist/skills.test.js.map +0 -1
  606. package/dist/sync.d.ts +0 -10
  607. package/dist/sync.d.ts.map +0 -1
  608. package/dist/sync.js +0 -39
  609. package/dist/sync.js.map +0 -1
  610. package/dist/tenant.d.ts +0 -13
  611. package/dist/tenant.d.ts.map +0 -1
  612. package/dist/tenant.js +0 -105
  613. package/dist/tenant.js.map +0 -1
  614. package/dist/tenant.test.d.ts +0 -2
  615. package/dist/tenant.test.d.ts.map +0 -1
  616. package/dist/tenant.test.js +0 -37
  617. package/dist/tenant.test.js.map +0 -1
  618. package/src/config.test.ts +0 -237
  619. package/src/detect.test.ts +0 -29
  620. package/src/detect.ts +0 -52
  621. package/src/docker.test.ts +0 -12
  622. package/src/docker.ts +0 -23
  623. package/src/health.test.ts +0 -61
  624. package/src/health.ts +0 -158
  625. package/src/index.test.ts +0 -8
  626. package/src/index.ts +0 -62
  627. package/src/installer.test.ts +0 -52
  628. package/src/installer.ts +0 -62
  629. package/src/lifecycle.test.ts +0 -23
  630. package/src/lifecycle.ts +0 -49
  631. package/src/manifest.ts +0 -42
  632. package/src/skills-baseline.ts +0 -14
  633. package/src/skills.test.ts +0 -503
  634. package/src/skills.ts +0 -512
  635. package/src/sync.ts +0 -53
  636. package/src/tenant.test.ts +0 -49
  637. package/src/tenant.ts +0 -120
@@ -0,0 +1,1700 @@
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 `bot_tokens` 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 bot_tokens
17
+ *
18
+ */
19
+ export type bot_tokensModel = runtime.Types.Result.DefaultSelection<Prisma.$bot_tokensPayload>
20
+
21
+ export type AggregateBot_tokens = {
22
+ _count: Bot_tokensCountAggregateOutputType | null
23
+ _min: Bot_tokensMinAggregateOutputType | null
24
+ _max: Bot_tokensMaxAggregateOutputType | null
25
+ }
26
+
27
+ export type Bot_tokensMinAggregateOutputType = {
28
+ app_id: string | null
29
+ token: string | null
30
+ bot_mode: $Enums.BotMode | null
31
+ thread_deletion_sync_mode: $Enums.ThreadDeletionSyncMode | null
32
+ client_id: string | null
33
+ client_secret: string | null
34
+ proxy_url: string | null
35
+ created_at: Date | null
36
+ last_used_at: Date | null
37
+ }
38
+
39
+ export type Bot_tokensMaxAggregateOutputType = {
40
+ app_id: string | null
41
+ token: string | null
42
+ bot_mode: $Enums.BotMode | null
43
+ thread_deletion_sync_mode: $Enums.ThreadDeletionSyncMode | null
44
+ client_id: string | null
45
+ client_secret: string | null
46
+ proxy_url: string | null
47
+ created_at: Date | null
48
+ last_used_at: Date | null
49
+ }
50
+
51
+ export type Bot_tokensCountAggregateOutputType = {
52
+ app_id: number
53
+ token: number
54
+ bot_mode: number
55
+ thread_deletion_sync_mode: number
56
+ client_id: number
57
+ client_secret: number
58
+ proxy_url: number
59
+ created_at: number
60
+ last_used_at: number
61
+ _all: number
62
+ }
63
+
64
+
65
+ export type Bot_tokensMinAggregateInputType = {
66
+ app_id?: true
67
+ token?: true
68
+ bot_mode?: true
69
+ thread_deletion_sync_mode?: true
70
+ client_id?: true
71
+ client_secret?: true
72
+ proxy_url?: true
73
+ created_at?: true
74
+ last_used_at?: true
75
+ }
76
+
77
+ export type Bot_tokensMaxAggregateInputType = {
78
+ app_id?: true
79
+ token?: true
80
+ bot_mode?: true
81
+ thread_deletion_sync_mode?: true
82
+ client_id?: true
83
+ client_secret?: true
84
+ proxy_url?: true
85
+ created_at?: true
86
+ last_used_at?: true
87
+ }
88
+
89
+ export type Bot_tokensCountAggregateInputType = {
90
+ app_id?: true
91
+ token?: true
92
+ bot_mode?: true
93
+ thread_deletion_sync_mode?: true
94
+ client_id?: true
95
+ client_secret?: true
96
+ proxy_url?: true
97
+ created_at?: true
98
+ last_used_at?: true
99
+ _all?: true
100
+ }
101
+
102
+ export type Bot_tokensAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
103
+ /**
104
+ * Filter which bot_tokens to aggregate.
105
+ */
106
+ where?: Prisma.bot_tokensWhereInput
107
+ /**
108
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
109
+ *
110
+ * Determine the order of bot_tokens to fetch.
111
+ */
112
+ orderBy?: Prisma.bot_tokensOrderByWithRelationInput | Prisma.bot_tokensOrderByWithRelationInput[]
113
+ /**
114
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
115
+ *
116
+ * Sets the start position
117
+ */
118
+ cursor?: Prisma.bot_tokensWhereUniqueInput
119
+ /**
120
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
121
+ *
122
+ * Take `±n` bot_tokens from the position of the cursor.
123
+ */
124
+ take?: number
125
+ /**
126
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
127
+ *
128
+ * Skip the first `n` bot_tokens.
129
+ */
130
+ skip?: number
131
+ /**
132
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
133
+ *
134
+ * Count returned bot_tokens
135
+ **/
136
+ _count?: true | Bot_tokensCountAggregateInputType
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?: Bot_tokensMinAggregateInputType
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?: Bot_tokensMaxAggregateInputType
149
+ }
150
+
151
+ export type GetBot_tokensAggregateType<T extends Bot_tokensAggregateArgs> = {
152
+ [P in keyof T & keyof AggregateBot_tokens]: P extends '_count' | 'count'
153
+ ? T[P] extends true
154
+ ? number
155
+ : Prisma.GetScalarType<T[P], AggregateBot_tokens[P]>
156
+ : Prisma.GetScalarType<T[P], AggregateBot_tokens[P]>
157
+ }
158
+
159
+
160
+
161
+
162
+ export type bot_tokensGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
163
+ where?: Prisma.bot_tokensWhereInput
164
+ orderBy?: Prisma.bot_tokensOrderByWithAggregationInput | Prisma.bot_tokensOrderByWithAggregationInput[]
165
+ by: Prisma.Bot_tokensScalarFieldEnum[] | Prisma.Bot_tokensScalarFieldEnum
166
+ having?: Prisma.bot_tokensScalarWhereWithAggregatesInput
167
+ take?: number
168
+ skip?: number
169
+ _count?: Bot_tokensCountAggregateInputType | true
170
+ _min?: Bot_tokensMinAggregateInputType
171
+ _max?: Bot_tokensMaxAggregateInputType
172
+ }
173
+
174
+ export type Bot_tokensGroupByOutputType = {
175
+ app_id: string
176
+ token: string
177
+ bot_mode: $Enums.BotMode
178
+ thread_deletion_sync_mode: $Enums.ThreadDeletionSyncMode | null
179
+ client_id: string | null
180
+ client_secret: string | null
181
+ proxy_url: string | null
182
+ created_at: Date | null
183
+ last_used_at: Date | null
184
+ _count: Bot_tokensCountAggregateOutputType | null
185
+ _min: Bot_tokensMinAggregateOutputType | null
186
+ _max: Bot_tokensMaxAggregateOutputType | null
187
+ }
188
+
189
+ type GetBot_tokensGroupByPayload<T extends bot_tokensGroupByArgs> = Prisma.PrismaPromise<
190
+ Array<
191
+ Prisma.PickEnumerable<Bot_tokensGroupByOutputType, T['by']> &
192
+ {
193
+ [P in ((keyof T) & (keyof Bot_tokensGroupByOutputType))]: P extends '_count'
194
+ ? T[P] extends boolean
195
+ ? number
196
+ : Prisma.GetScalarType<T[P], Bot_tokensGroupByOutputType[P]>
197
+ : Prisma.GetScalarType<T[P], Bot_tokensGroupByOutputType[P]>
198
+ }
199
+ >
200
+ >
201
+
202
+
203
+
204
+ export type bot_tokensWhereInput = {
205
+ AND?: Prisma.bot_tokensWhereInput | Prisma.bot_tokensWhereInput[]
206
+ OR?: Prisma.bot_tokensWhereInput[]
207
+ NOT?: Prisma.bot_tokensWhereInput | Prisma.bot_tokensWhereInput[]
208
+ app_id?: Prisma.StringFilter<"bot_tokens"> | string
209
+ token?: Prisma.StringFilter<"bot_tokens"> | string
210
+ bot_mode?: Prisma.EnumBotModeFilter<"bot_tokens"> | $Enums.BotMode
211
+ thread_deletion_sync_mode?: Prisma.EnumThreadDeletionSyncModeNullableFilter<"bot_tokens"> | $Enums.ThreadDeletionSyncMode | null
212
+ client_id?: Prisma.StringNullableFilter<"bot_tokens"> | string | null
213
+ client_secret?: Prisma.StringNullableFilter<"bot_tokens"> | string | null
214
+ proxy_url?: Prisma.StringNullableFilter<"bot_tokens"> | string | null
215
+ created_at?: Prisma.DateTimeNullableFilter<"bot_tokens"> | Date | string | null
216
+ last_used_at?: Prisma.DateTimeNullableFilter<"bot_tokens"> | Date | string | null
217
+ api_keys?: Prisma.XOR<Prisma.Bot_api_keysNullableScalarRelationFilter, Prisma.bot_api_keysWhereInput> | null
218
+ forum_sync_configs?: Prisma.Forum_sync_configsListRelationFilter
219
+ global_model?: Prisma.XOR<Prisma.Global_modelsNullableScalarRelationFilter, Prisma.global_modelsWhereInput> | null
220
+ }
221
+
222
+ export type bot_tokensOrderByWithRelationInput = {
223
+ app_id?: Prisma.SortOrder
224
+ token?: Prisma.SortOrder
225
+ bot_mode?: Prisma.SortOrder
226
+ thread_deletion_sync_mode?: Prisma.SortOrderInput | Prisma.SortOrder
227
+ client_id?: Prisma.SortOrderInput | Prisma.SortOrder
228
+ client_secret?: Prisma.SortOrderInput | Prisma.SortOrder
229
+ proxy_url?: Prisma.SortOrderInput | Prisma.SortOrder
230
+ created_at?: Prisma.SortOrderInput | Prisma.SortOrder
231
+ last_used_at?: Prisma.SortOrderInput | Prisma.SortOrder
232
+ api_keys?: Prisma.bot_api_keysOrderByWithRelationInput
233
+ forum_sync_configs?: Prisma.forum_sync_configsOrderByRelationAggregateInput
234
+ global_model?: Prisma.global_modelsOrderByWithRelationInput
235
+ }
236
+
237
+ export type bot_tokensWhereUniqueInput = Prisma.AtLeast<{
238
+ app_id?: string
239
+ AND?: Prisma.bot_tokensWhereInput | Prisma.bot_tokensWhereInput[]
240
+ OR?: Prisma.bot_tokensWhereInput[]
241
+ NOT?: Prisma.bot_tokensWhereInput | Prisma.bot_tokensWhereInput[]
242
+ token?: Prisma.StringFilter<"bot_tokens"> | string
243
+ bot_mode?: Prisma.EnumBotModeFilter<"bot_tokens"> | $Enums.BotMode
244
+ thread_deletion_sync_mode?: Prisma.EnumThreadDeletionSyncModeNullableFilter<"bot_tokens"> | $Enums.ThreadDeletionSyncMode | null
245
+ client_id?: Prisma.StringNullableFilter<"bot_tokens"> | string | null
246
+ client_secret?: Prisma.StringNullableFilter<"bot_tokens"> | string | null
247
+ proxy_url?: Prisma.StringNullableFilter<"bot_tokens"> | string | null
248
+ created_at?: Prisma.DateTimeNullableFilter<"bot_tokens"> | Date | string | null
249
+ last_used_at?: Prisma.DateTimeNullableFilter<"bot_tokens"> | Date | string | null
250
+ api_keys?: Prisma.XOR<Prisma.Bot_api_keysNullableScalarRelationFilter, Prisma.bot_api_keysWhereInput> | null
251
+ forum_sync_configs?: Prisma.Forum_sync_configsListRelationFilter
252
+ global_model?: Prisma.XOR<Prisma.Global_modelsNullableScalarRelationFilter, Prisma.global_modelsWhereInput> | null
253
+ }, "app_id">
254
+
255
+ export type bot_tokensOrderByWithAggregationInput = {
256
+ app_id?: Prisma.SortOrder
257
+ token?: Prisma.SortOrder
258
+ bot_mode?: Prisma.SortOrder
259
+ thread_deletion_sync_mode?: Prisma.SortOrderInput | Prisma.SortOrder
260
+ client_id?: Prisma.SortOrderInput | Prisma.SortOrder
261
+ client_secret?: Prisma.SortOrderInput | Prisma.SortOrder
262
+ proxy_url?: Prisma.SortOrderInput | Prisma.SortOrder
263
+ created_at?: Prisma.SortOrderInput | Prisma.SortOrder
264
+ last_used_at?: Prisma.SortOrderInput | Prisma.SortOrder
265
+ _count?: Prisma.bot_tokensCountOrderByAggregateInput
266
+ _max?: Prisma.bot_tokensMaxOrderByAggregateInput
267
+ _min?: Prisma.bot_tokensMinOrderByAggregateInput
268
+ }
269
+
270
+ export type bot_tokensScalarWhereWithAggregatesInput = {
271
+ AND?: Prisma.bot_tokensScalarWhereWithAggregatesInput | Prisma.bot_tokensScalarWhereWithAggregatesInput[]
272
+ OR?: Prisma.bot_tokensScalarWhereWithAggregatesInput[]
273
+ NOT?: Prisma.bot_tokensScalarWhereWithAggregatesInput | Prisma.bot_tokensScalarWhereWithAggregatesInput[]
274
+ app_id?: Prisma.StringWithAggregatesFilter<"bot_tokens"> | string
275
+ token?: Prisma.StringWithAggregatesFilter<"bot_tokens"> | string
276
+ bot_mode?: Prisma.EnumBotModeWithAggregatesFilter<"bot_tokens"> | $Enums.BotMode
277
+ thread_deletion_sync_mode?: Prisma.EnumThreadDeletionSyncModeNullableWithAggregatesFilter<"bot_tokens"> | $Enums.ThreadDeletionSyncMode | null
278
+ client_id?: Prisma.StringNullableWithAggregatesFilter<"bot_tokens"> | string | null
279
+ client_secret?: Prisma.StringNullableWithAggregatesFilter<"bot_tokens"> | string | null
280
+ proxy_url?: Prisma.StringNullableWithAggregatesFilter<"bot_tokens"> | string | null
281
+ created_at?: Prisma.DateTimeNullableWithAggregatesFilter<"bot_tokens"> | Date | string | null
282
+ last_used_at?: Prisma.DateTimeNullableWithAggregatesFilter<"bot_tokens"> | Date | string | null
283
+ }
284
+
285
+ export type bot_tokensCreateInput = {
286
+ app_id: string
287
+ token: string
288
+ bot_mode?: $Enums.BotMode
289
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
290
+ client_id?: string | null
291
+ client_secret?: string | null
292
+ proxy_url?: string | null
293
+ created_at?: Date | string | null
294
+ last_used_at?: Date | string | null
295
+ api_keys?: Prisma.bot_api_keysCreateNestedOneWithoutBotInput
296
+ forum_sync_configs?: Prisma.forum_sync_configsCreateNestedManyWithoutBotInput
297
+ global_model?: Prisma.global_modelsCreateNestedOneWithoutBotInput
298
+ }
299
+
300
+ export type bot_tokensUncheckedCreateInput = {
301
+ app_id: string
302
+ token: string
303
+ bot_mode?: $Enums.BotMode
304
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
305
+ client_id?: string | null
306
+ client_secret?: string | null
307
+ proxy_url?: string | null
308
+ created_at?: Date | string | null
309
+ last_used_at?: Date | string | null
310
+ api_keys?: Prisma.bot_api_keysUncheckedCreateNestedOneWithoutBotInput
311
+ forum_sync_configs?: Prisma.forum_sync_configsUncheckedCreateNestedManyWithoutBotInput
312
+ global_model?: Prisma.global_modelsUncheckedCreateNestedOneWithoutBotInput
313
+ }
314
+
315
+ export type bot_tokensUpdateInput = {
316
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
317
+ token?: Prisma.StringFieldUpdateOperationsInput | string
318
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
319
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
320
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
321
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
322
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
323
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
324
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
325
+ api_keys?: Prisma.bot_api_keysUpdateOneWithoutBotNestedInput
326
+ forum_sync_configs?: Prisma.forum_sync_configsUpdateManyWithoutBotNestedInput
327
+ global_model?: Prisma.global_modelsUpdateOneWithoutBotNestedInput
328
+ }
329
+
330
+ export type bot_tokensUncheckedUpdateInput = {
331
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
332
+ token?: Prisma.StringFieldUpdateOperationsInput | string
333
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
334
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
335
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
336
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
337
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
338
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
339
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
340
+ api_keys?: Prisma.bot_api_keysUncheckedUpdateOneWithoutBotNestedInput
341
+ forum_sync_configs?: Prisma.forum_sync_configsUncheckedUpdateManyWithoutBotNestedInput
342
+ global_model?: Prisma.global_modelsUncheckedUpdateOneWithoutBotNestedInput
343
+ }
344
+
345
+ export type bot_tokensCreateManyInput = {
346
+ app_id: string
347
+ token: string
348
+ bot_mode?: $Enums.BotMode
349
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
350
+ client_id?: string | null
351
+ client_secret?: string | null
352
+ proxy_url?: string | null
353
+ created_at?: Date | string | null
354
+ last_used_at?: Date | string | null
355
+ }
356
+
357
+ export type bot_tokensUpdateManyMutationInput = {
358
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
359
+ token?: Prisma.StringFieldUpdateOperationsInput | string
360
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
361
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
362
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
363
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
364
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
365
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
366
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
367
+ }
368
+
369
+ export type bot_tokensUncheckedUpdateManyInput = {
370
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
371
+ token?: Prisma.StringFieldUpdateOperationsInput | string
372
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
373
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
374
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
375
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
376
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
377
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
378
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
379
+ }
380
+
381
+ export type bot_tokensCountOrderByAggregateInput = {
382
+ app_id?: Prisma.SortOrder
383
+ token?: Prisma.SortOrder
384
+ bot_mode?: Prisma.SortOrder
385
+ thread_deletion_sync_mode?: Prisma.SortOrder
386
+ client_id?: Prisma.SortOrder
387
+ client_secret?: Prisma.SortOrder
388
+ proxy_url?: Prisma.SortOrder
389
+ created_at?: Prisma.SortOrder
390
+ last_used_at?: Prisma.SortOrder
391
+ }
392
+
393
+ export type bot_tokensMaxOrderByAggregateInput = {
394
+ app_id?: Prisma.SortOrder
395
+ token?: Prisma.SortOrder
396
+ bot_mode?: Prisma.SortOrder
397
+ thread_deletion_sync_mode?: Prisma.SortOrder
398
+ client_id?: Prisma.SortOrder
399
+ client_secret?: Prisma.SortOrder
400
+ proxy_url?: Prisma.SortOrder
401
+ created_at?: Prisma.SortOrder
402
+ last_used_at?: Prisma.SortOrder
403
+ }
404
+
405
+ export type bot_tokensMinOrderByAggregateInput = {
406
+ app_id?: Prisma.SortOrder
407
+ token?: Prisma.SortOrder
408
+ bot_mode?: Prisma.SortOrder
409
+ thread_deletion_sync_mode?: Prisma.SortOrder
410
+ client_id?: Prisma.SortOrder
411
+ client_secret?: Prisma.SortOrder
412
+ proxy_url?: Prisma.SortOrder
413
+ created_at?: Prisma.SortOrder
414
+ last_used_at?: Prisma.SortOrder
415
+ }
416
+
417
+ export type Bot_tokensScalarRelationFilter = {
418
+ is?: Prisma.bot_tokensWhereInput
419
+ isNot?: Prisma.bot_tokensWhereInput
420
+ }
421
+
422
+ export type EnumBotModeFieldUpdateOperationsInput = {
423
+ set?: $Enums.BotMode
424
+ }
425
+
426
+ export type NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput = {
427
+ set?: $Enums.ThreadDeletionSyncMode | null
428
+ }
429
+
430
+ export type NullableStringFieldUpdateOperationsInput = {
431
+ set?: string | null
432
+ }
433
+
434
+ export type bot_tokensCreateNestedOneWithoutApi_keysInput = {
435
+ create?: Prisma.XOR<Prisma.bot_tokensCreateWithoutApi_keysInput, Prisma.bot_tokensUncheckedCreateWithoutApi_keysInput>
436
+ connectOrCreate?: Prisma.bot_tokensCreateOrConnectWithoutApi_keysInput
437
+ connect?: Prisma.bot_tokensWhereUniqueInput
438
+ }
439
+
440
+ export type bot_tokensUpdateOneRequiredWithoutApi_keysNestedInput = {
441
+ create?: Prisma.XOR<Prisma.bot_tokensCreateWithoutApi_keysInput, Prisma.bot_tokensUncheckedCreateWithoutApi_keysInput>
442
+ connectOrCreate?: Prisma.bot_tokensCreateOrConnectWithoutApi_keysInput
443
+ upsert?: Prisma.bot_tokensUpsertWithoutApi_keysInput
444
+ connect?: Prisma.bot_tokensWhereUniqueInput
445
+ update?: Prisma.XOR<Prisma.XOR<Prisma.bot_tokensUpdateToOneWithWhereWithoutApi_keysInput, Prisma.bot_tokensUpdateWithoutApi_keysInput>, Prisma.bot_tokensUncheckedUpdateWithoutApi_keysInput>
446
+ }
447
+
448
+ export type bot_tokensCreateNestedOneWithoutGlobal_modelInput = {
449
+ create?: Prisma.XOR<Prisma.bot_tokensCreateWithoutGlobal_modelInput, Prisma.bot_tokensUncheckedCreateWithoutGlobal_modelInput>
450
+ connectOrCreate?: Prisma.bot_tokensCreateOrConnectWithoutGlobal_modelInput
451
+ connect?: Prisma.bot_tokensWhereUniqueInput
452
+ }
453
+
454
+ export type bot_tokensUpdateOneRequiredWithoutGlobal_modelNestedInput = {
455
+ create?: Prisma.XOR<Prisma.bot_tokensCreateWithoutGlobal_modelInput, Prisma.bot_tokensUncheckedCreateWithoutGlobal_modelInput>
456
+ connectOrCreate?: Prisma.bot_tokensCreateOrConnectWithoutGlobal_modelInput
457
+ upsert?: Prisma.bot_tokensUpsertWithoutGlobal_modelInput
458
+ connect?: Prisma.bot_tokensWhereUniqueInput
459
+ update?: Prisma.XOR<Prisma.XOR<Prisma.bot_tokensUpdateToOneWithWhereWithoutGlobal_modelInput, Prisma.bot_tokensUpdateWithoutGlobal_modelInput>, Prisma.bot_tokensUncheckedUpdateWithoutGlobal_modelInput>
460
+ }
461
+
462
+ export type bot_tokensCreateNestedOneWithoutForum_sync_configsInput = {
463
+ create?: Prisma.XOR<Prisma.bot_tokensCreateWithoutForum_sync_configsInput, Prisma.bot_tokensUncheckedCreateWithoutForum_sync_configsInput>
464
+ connectOrCreate?: Prisma.bot_tokensCreateOrConnectWithoutForum_sync_configsInput
465
+ connect?: Prisma.bot_tokensWhereUniqueInput
466
+ }
467
+
468
+ export type bot_tokensUpdateOneRequiredWithoutForum_sync_configsNestedInput = {
469
+ create?: Prisma.XOR<Prisma.bot_tokensCreateWithoutForum_sync_configsInput, Prisma.bot_tokensUncheckedCreateWithoutForum_sync_configsInput>
470
+ connectOrCreate?: Prisma.bot_tokensCreateOrConnectWithoutForum_sync_configsInput
471
+ upsert?: Prisma.bot_tokensUpsertWithoutForum_sync_configsInput
472
+ connect?: Prisma.bot_tokensWhereUniqueInput
473
+ update?: Prisma.XOR<Prisma.XOR<Prisma.bot_tokensUpdateToOneWithWhereWithoutForum_sync_configsInput, Prisma.bot_tokensUpdateWithoutForum_sync_configsInput>, Prisma.bot_tokensUncheckedUpdateWithoutForum_sync_configsInput>
474
+ }
475
+
476
+ export type bot_tokensCreateWithoutApi_keysInput = {
477
+ app_id: string
478
+ token: string
479
+ bot_mode?: $Enums.BotMode
480
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
481
+ client_id?: string | null
482
+ client_secret?: string | null
483
+ proxy_url?: string | null
484
+ created_at?: Date | string | null
485
+ last_used_at?: Date | string | null
486
+ forum_sync_configs?: Prisma.forum_sync_configsCreateNestedManyWithoutBotInput
487
+ global_model?: Prisma.global_modelsCreateNestedOneWithoutBotInput
488
+ }
489
+
490
+ export type bot_tokensUncheckedCreateWithoutApi_keysInput = {
491
+ app_id: string
492
+ token: string
493
+ bot_mode?: $Enums.BotMode
494
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
495
+ client_id?: string | null
496
+ client_secret?: string | null
497
+ proxy_url?: string | null
498
+ created_at?: Date | string | null
499
+ last_used_at?: Date | string | null
500
+ forum_sync_configs?: Prisma.forum_sync_configsUncheckedCreateNestedManyWithoutBotInput
501
+ global_model?: Prisma.global_modelsUncheckedCreateNestedOneWithoutBotInput
502
+ }
503
+
504
+ export type bot_tokensCreateOrConnectWithoutApi_keysInput = {
505
+ where: Prisma.bot_tokensWhereUniqueInput
506
+ create: Prisma.XOR<Prisma.bot_tokensCreateWithoutApi_keysInput, Prisma.bot_tokensUncheckedCreateWithoutApi_keysInput>
507
+ }
508
+
509
+ export type bot_tokensUpsertWithoutApi_keysInput = {
510
+ update: Prisma.XOR<Prisma.bot_tokensUpdateWithoutApi_keysInput, Prisma.bot_tokensUncheckedUpdateWithoutApi_keysInput>
511
+ create: Prisma.XOR<Prisma.bot_tokensCreateWithoutApi_keysInput, Prisma.bot_tokensUncheckedCreateWithoutApi_keysInput>
512
+ where?: Prisma.bot_tokensWhereInput
513
+ }
514
+
515
+ export type bot_tokensUpdateToOneWithWhereWithoutApi_keysInput = {
516
+ where?: Prisma.bot_tokensWhereInput
517
+ data: Prisma.XOR<Prisma.bot_tokensUpdateWithoutApi_keysInput, Prisma.bot_tokensUncheckedUpdateWithoutApi_keysInput>
518
+ }
519
+
520
+ export type bot_tokensUpdateWithoutApi_keysInput = {
521
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
522
+ token?: Prisma.StringFieldUpdateOperationsInput | string
523
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
524
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
525
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
526
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
527
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
528
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
529
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
530
+ forum_sync_configs?: Prisma.forum_sync_configsUpdateManyWithoutBotNestedInput
531
+ global_model?: Prisma.global_modelsUpdateOneWithoutBotNestedInput
532
+ }
533
+
534
+ export type bot_tokensUncheckedUpdateWithoutApi_keysInput = {
535
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
536
+ token?: Prisma.StringFieldUpdateOperationsInput | string
537
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
538
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
539
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
540
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
541
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
542
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
543
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
544
+ forum_sync_configs?: Prisma.forum_sync_configsUncheckedUpdateManyWithoutBotNestedInput
545
+ global_model?: Prisma.global_modelsUncheckedUpdateOneWithoutBotNestedInput
546
+ }
547
+
548
+ export type bot_tokensCreateWithoutGlobal_modelInput = {
549
+ app_id: string
550
+ token: string
551
+ bot_mode?: $Enums.BotMode
552
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
553
+ client_id?: string | null
554
+ client_secret?: string | null
555
+ proxy_url?: string | null
556
+ created_at?: Date | string | null
557
+ last_used_at?: Date | string | null
558
+ api_keys?: Prisma.bot_api_keysCreateNestedOneWithoutBotInput
559
+ forum_sync_configs?: Prisma.forum_sync_configsCreateNestedManyWithoutBotInput
560
+ }
561
+
562
+ export type bot_tokensUncheckedCreateWithoutGlobal_modelInput = {
563
+ app_id: string
564
+ token: string
565
+ bot_mode?: $Enums.BotMode
566
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
567
+ client_id?: string | null
568
+ client_secret?: string | null
569
+ proxy_url?: string | null
570
+ created_at?: Date | string | null
571
+ last_used_at?: Date | string | null
572
+ api_keys?: Prisma.bot_api_keysUncheckedCreateNestedOneWithoutBotInput
573
+ forum_sync_configs?: Prisma.forum_sync_configsUncheckedCreateNestedManyWithoutBotInput
574
+ }
575
+
576
+ export type bot_tokensCreateOrConnectWithoutGlobal_modelInput = {
577
+ where: Prisma.bot_tokensWhereUniqueInput
578
+ create: Prisma.XOR<Prisma.bot_tokensCreateWithoutGlobal_modelInput, Prisma.bot_tokensUncheckedCreateWithoutGlobal_modelInput>
579
+ }
580
+
581
+ export type bot_tokensUpsertWithoutGlobal_modelInput = {
582
+ update: Prisma.XOR<Prisma.bot_tokensUpdateWithoutGlobal_modelInput, Prisma.bot_tokensUncheckedUpdateWithoutGlobal_modelInput>
583
+ create: Prisma.XOR<Prisma.bot_tokensCreateWithoutGlobal_modelInput, Prisma.bot_tokensUncheckedCreateWithoutGlobal_modelInput>
584
+ where?: Prisma.bot_tokensWhereInput
585
+ }
586
+
587
+ export type bot_tokensUpdateToOneWithWhereWithoutGlobal_modelInput = {
588
+ where?: Prisma.bot_tokensWhereInput
589
+ data: Prisma.XOR<Prisma.bot_tokensUpdateWithoutGlobal_modelInput, Prisma.bot_tokensUncheckedUpdateWithoutGlobal_modelInput>
590
+ }
591
+
592
+ export type bot_tokensUpdateWithoutGlobal_modelInput = {
593
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
594
+ token?: Prisma.StringFieldUpdateOperationsInput | string
595
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
596
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
597
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
598
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
599
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
600
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
601
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
602
+ api_keys?: Prisma.bot_api_keysUpdateOneWithoutBotNestedInput
603
+ forum_sync_configs?: Prisma.forum_sync_configsUpdateManyWithoutBotNestedInput
604
+ }
605
+
606
+ export type bot_tokensUncheckedUpdateWithoutGlobal_modelInput = {
607
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
608
+ token?: Prisma.StringFieldUpdateOperationsInput | string
609
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
610
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
611
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
612
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
613
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
614
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
615
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
616
+ api_keys?: Prisma.bot_api_keysUncheckedUpdateOneWithoutBotNestedInput
617
+ forum_sync_configs?: Prisma.forum_sync_configsUncheckedUpdateManyWithoutBotNestedInput
618
+ }
619
+
620
+ export type bot_tokensCreateWithoutForum_sync_configsInput = {
621
+ app_id: string
622
+ token: string
623
+ bot_mode?: $Enums.BotMode
624
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
625
+ client_id?: string | null
626
+ client_secret?: string | null
627
+ proxy_url?: string | null
628
+ created_at?: Date | string | null
629
+ last_used_at?: Date | string | null
630
+ api_keys?: Prisma.bot_api_keysCreateNestedOneWithoutBotInput
631
+ global_model?: Prisma.global_modelsCreateNestedOneWithoutBotInput
632
+ }
633
+
634
+ export type bot_tokensUncheckedCreateWithoutForum_sync_configsInput = {
635
+ app_id: string
636
+ token: string
637
+ bot_mode?: $Enums.BotMode
638
+ thread_deletion_sync_mode?: $Enums.ThreadDeletionSyncMode | null
639
+ client_id?: string | null
640
+ client_secret?: string | null
641
+ proxy_url?: string | null
642
+ created_at?: Date | string | null
643
+ last_used_at?: Date | string | null
644
+ api_keys?: Prisma.bot_api_keysUncheckedCreateNestedOneWithoutBotInput
645
+ global_model?: Prisma.global_modelsUncheckedCreateNestedOneWithoutBotInput
646
+ }
647
+
648
+ export type bot_tokensCreateOrConnectWithoutForum_sync_configsInput = {
649
+ where: Prisma.bot_tokensWhereUniqueInput
650
+ create: Prisma.XOR<Prisma.bot_tokensCreateWithoutForum_sync_configsInput, Prisma.bot_tokensUncheckedCreateWithoutForum_sync_configsInput>
651
+ }
652
+
653
+ export type bot_tokensUpsertWithoutForum_sync_configsInput = {
654
+ update: Prisma.XOR<Prisma.bot_tokensUpdateWithoutForum_sync_configsInput, Prisma.bot_tokensUncheckedUpdateWithoutForum_sync_configsInput>
655
+ create: Prisma.XOR<Prisma.bot_tokensCreateWithoutForum_sync_configsInput, Prisma.bot_tokensUncheckedCreateWithoutForum_sync_configsInput>
656
+ where?: Prisma.bot_tokensWhereInput
657
+ }
658
+
659
+ export type bot_tokensUpdateToOneWithWhereWithoutForum_sync_configsInput = {
660
+ where?: Prisma.bot_tokensWhereInput
661
+ data: Prisma.XOR<Prisma.bot_tokensUpdateWithoutForum_sync_configsInput, Prisma.bot_tokensUncheckedUpdateWithoutForum_sync_configsInput>
662
+ }
663
+
664
+ export type bot_tokensUpdateWithoutForum_sync_configsInput = {
665
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
666
+ token?: Prisma.StringFieldUpdateOperationsInput | string
667
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
668
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
669
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
670
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
671
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
672
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
673
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
674
+ api_keys?: Prisma.bot_api_keysUpdateOneWithoutBotNestedInput
675
+ global_model?: Prisma.global_modelsUpdateOneWithoutBotNestedInput
676
+ }
677
+
678
+ export type bot_tokensUncheckedUpdateWithoutForum_sync_configsInput = {
679
+ app_id?: Prisma.StringFieldUpdateOperationsInput | string
680
+ token?: Prisma.StringFieldUpdateOperationsInput | string
681
+ bot_mode?: Prisma.EnumBotModeFieldUpdateOperationsInput | $Enums.BotMode
682
+ thread_deletion_sync_mode?: Prisma.NullableEnumThreadDeletionSyncModeFieldUpdateOperationsInput | $Enums.ThreadDeletionSyncMode | null
683
+ client_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
684
+ client_secret?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
685
+ proxy_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
686
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
687
+ last_used_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
688
+ api_keys?: Prisma.bot_api_keysUncheckedUpdateOneWithoutBotNestedInput
689
+ global_model?: Prisma.global_modelsUncheckedUpdateOneWithoutBotNestedInput
690
+ }
691
+
692
+
693
+ /**
694
+ * Count Type Bot_tokensCountOutputType
695
+ */
696
+
697
+ export type Bot_tokensCountOutputType = {
698
+ forum_sync_configs: number
699
+ }
700
+
701
+ export type Bot_tokensCountOutputTypeSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
702
+ forum_sync_configs?: boolean | Bot_tokensCountOutputTypeCountForum_sync_configsArgs
703
+ }
704
+
705
+ /**
706
+ * Bot_tokensCountOutputType without action
707
+ */
708
+ export type Bot_tokensCountOutputTypeDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
709
+ /**
710
+ * Select specific fields to fetch from the Bot_tokensCountOutputType
711
+ */
712
+ select?: Prisma.Bot_tokensCountOutputTypeSelect<ExtArgs> | null
713
+ }
714
+
715
+ /**
716
+ * Bot_tokensCountOutputType without action
717
+ */
718
+ export type Bot_tokensCountOutputTypeCountForum_sync_configsArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
719
+ where?: Prisma.forum_sync_configsWhereInput
720
+ }
721
+
722
+
723
+ export type bot_tokensSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
724
+ app_id?: boolean
725
+ token?: boolean
726
+ bot_mode?: boolean
727
+ thread_deletion_sync_mode?: boolean
728
+ client_id?: boolean
729
+ client_secret?: boolean
730
+ proxy_url?: boolean
731
+ created_at?: boolean
732
+ last_used_at?: boolean
733
+ api_keys?: boolean | Prisma.bot_tokens$api_keysArgs<ExtArgs>
734
+ forum_sync_configs?: boolean | Prisma.bot_tokens$forum_sync_configsArgs<ExtArgs>
735
+ global_model?: boolean | Prisma.bot_tokens$global_modelArgs<ExtArgs>
736
+ _count?: boolean | Prisma.Bot_tokensCountOutputTypeDefaultArgs<ExtArgs>
737
+ }, ExtArgs["result"]["bot_tokens"]>
738
+
739
+ export type bot_tokensSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
740
+ app_id?: boolean
741
+ token?: boolean
742
+ bot_mode?: boolean
743
+ thread_deletion_sync_mode?: boolean
744
+ client_id?: boolean
745
+ client_secret?: boolean
746
+ proxy_url?: boolean
747
+ created_at?: boolean
748
+ last_used_at?: boolean
749
+ }, ExtArgs["result"]["bot_tokens"]>
750
+
751
+ export type bot_tokensSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
752
+ app_id?: boolean
753
+ token?: boolean
754
+ bot_mode?: boolean
755
+ thread_deletion_sync_mode?: boolean
756
+ client_id?: boolean
757
+ client_secret?: boolean
758
+ proxy_url?: boolean
759
+ created_at?: boolean
760
+ last_used_at?: boolean
761
+ }, ExtArgs["result"]["bot_tokens"]>
762
+
763
+ export type bot_tokensSelectScalar = {
764
+ app_id?: boolean
765
+ token?: boolean
766
+ bot_mode?: boolean
767
+ thread_deletion_sync_mode?: boolean
768
+ client_id?: boolean
769
+ client_secret?: boolean
770
+ proxy_url?: boolean
771
+ created_at?: boolean
772
+ last_used_at?: boolean
773
+ }
774
+
775
+ export type bot_tokensOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"app_id" | "token" | "bot_mode" | "thread_deletion_sync_mode" | "client_id" | "client_secret" | "proxy_url" | "created_at" | "last_used_at", ExtArgs["result"]["bot_tokens"]>
776
+ export type bot_tokensInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
777
+ api_keys?: boolean | Prisma.bot_tokens$api_keysArgs<ExtArgs>
778
+ forum_sync_configs?: boolean | Prisma.bot_tokens$forum_sync_configsArgs<ExtArgs>
779
+ global_model?: boolean | Prisma.bot_tokens$global_modelArgs<ExtArgs>
780
+ _count?: boolean | Prisma.Bot_tokensCountOutputTypeDefaultArgs<ExtArgs>
781
+ }
782
+ export type bot_tokensIncludeCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {}
783
+ export type bot_tokensIncludeUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {}
784
+
785
+ export type $bot_tokensPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
786
+ name: "bot_tokens"
787
+ objects: {
788
+ api_keys: Prisma.$bot_api_keysPayload<ExtArgs> | null
789
+ forum_sync_configs: Prisma.$forum_sync_configsPayload<ExtArgs>[]
790
+ global_model: Prisma.$global_modelsPayload<ExtArgs> | null
791
+ }
792
+ scalars: runtime.Types.Extensions.GetPayloadResult<{
793
+ app_id: string
794
+ token: string
795
+ bot_mode: $Enums.BotMode
796
+ thread_deletion_sync_mode: $Enums.ThreadDeletionSyncMode | null
797
+ client_id: string | null
798
+ client_secret: string | null
799
+ proxy_url: string | null
800
+ created_at: Date | null
801
+ last_used_at: Date | null
802
+ }, ExtArgs["result"]["bot_tokens"]>
803
+ composites: {}
804
+ }
805
+
806
+ export type bot_tokensGetPayload<S extends boolean | null | undefined | bot_tokensDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload, S>
807
+
808
+ export type bot_tokensCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> =
809
+ Omit<bot_tokensFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
810
+ select?: Bot_tokensCountAggregateInputType | true
811
+ }
812
+
813
+ export interface bot_tokensDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
814
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['bot_tokens'], meta: { name: 'bot_tokens' } }
815
+ /**
816
+ * Find zero or one Bot_tokens that matches the filter.
817
+ * @param {bot_tokensFindUniqueArgs} args - Arguments to find a Bot_tokens
818
+ * @example
819
+ * // Get one Bot_tokens
820
+ * const bot_tokens = await prisma.bot_tokens.findUnique({
821
+ * where: {
822
+ * // ... provide filter here
823
+ * }
824
+ * })
825
+ */
826
+ findUnique<T extends bot_tokensFindUniqueArgs>(args: Prisma.SelectSubset<T, bot_tokensFindUniqueArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
827
+
828
+ /**
829
+ * Find one Bot_tokens that matches the filter or throw an error with `error.code='P2025'`
830
+ * if no matches were found.
831
+ * @param {bot_tokensFindUniqueOrThrowArgs} args - Arguments to find a Bot_tokens
832
+ * @example
833
+ * // Get one Bot_tokens
834
+ * const bot_tokens = await prisma.bot_tokens.findUniqueOrThrow({
835
+ * where: {
836
+ * // ... provide filter here
837
+ * }
838
+ * })
839
+ */
840
+ findUniqueOrThrow<T extends bot_tokensFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, bot_tokensFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
841
+
842
+ /**
843
+ * Find the first Bot_tokens that matches the filter.
844
+ * Note, that providing `undefined` is treated as the value not being there.
845
+ * Read more here: https://pris.ly/d/null-undefined
846
+ * @param {bot_tokensFindFirstArgs} args - Arguments to find a Bot_tokens
847
+ * @example
848
+ * // Get one Bot_tokens
849
+ * const bot_tokens = await prisma.bot_tokens.findFirst({
850
+ * where: {
851
+ * // ... provide filter here
852
+ * }
853
+ * })
854
+ */
855
+ findFirst<T extends bot_tokensFindFirstArgs>(args?: Prisma.SelectSubset<T, bot_tokensFindFirstArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
856
+
857
+ /**
858
+ * Find the first Bot_tokens that matches the filter or
859
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
860
+ * Note, that providing `undefined` is treated as the value not being there.
861
+ * Read more here: https://pris.ly/d/null-undefined
862
+ * @param {bot_tokensFindFirstOrThrowArgs} args - Arguments to find a Bot_tokens
863
+ * @example
864
+ * // Get one Bot_tokens
865
+ * const bot_tokens = await prisma.bot_tokens.findFirstOrThrow({
866
+ * where: {
867
+ * // ... provide filter here
868
+ * }
869
+ * })
870
+ */
871
+ findFirstOrThrow<T extends bot_tokensFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, bot_tokensFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
872
+
873
+ /**
874
+ * Find zero or more Bot_tokens that matches the filter.
875
+ * Note, that providing `undefined` is treated as the value not being there.
876
+ * Read more here: https://pris.ly/d/null-undefined
877
+ * @param {bot_tokensFindManyArgs} args - Arguments to filter and select certain fields only.
878
+ * @example
879
+ * // Get all Bot_tokens
880
+ * const bot_tokens = await prisma.bot_tokens.findMany()
881
+ *
882
+ * // Get first 10 Bot_tokens
883
+ * const bot_tokens = await prisma.bot_tokens.findMany({ take: 10 })
884
+ *
885
+ * // Only select the `app_id`
886
+ * const bot_tokensWithApp_idOnly = await prisma.bot_tokens.findMany({ select: { app_id: true } })
887
+ *
888
+ */
889
+ findMany<T extends bot_tokensFindManyArgs>(args?: Prisma.SelectSubset<T, bot_tokensFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
890
+
891
+ /**
892
+ * Create a Bot_tokens.
893
+ * @param {bot_tokensCreateArgs} args - Arguments to create a Bot_tokens.
894
+ * @example
895
+ * // Create one Bot_tokens
896
+ * const Bot_tokens = await prisma.bot_tokens.create({
897
+ * data: {
898
+ * // ... data to create a Bot_tokens
899
+ * }
900
+ * })
901
+ *
902
+ */
903
+ create<T extends bot_tokensCreateArgs>(args: Prisma.SelectSubset<T, bot_tokensCreateArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
904
+
905
+ /**
906
+ * Create many Bot_tokens.
907
+ * @param {bot_tokensCreateManyArgs} args - Arguments to create many Bot_tokens.
908
+ * @example
909
+ * // Create many Bot_tokens
910
+ * const bot_tokens = await prisma.bot_tokens.createMany({
911
+ * data: [
912
+ * // ... provide data here
913
+ * ]
914
+ * })
915
+ *
916
+ */
917
+ createMany<T extends bot_tokensCreateManyArgs>(args?: Prisma.SelectSubset<T, bot_tokensCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
918
+
919
+ /**
920
+ * Create many Bot_tokens and returns the data saved in the database.
921
+ * @param {bot_tokensCreateManyAndReturnArgs} args - Arguments to create many Bot_tokens.
922
+ * @example
923
+ * // Create many Bot_tokens
924
+ * const bot_tokens = await prisma.bot_tokens.createManyAndReturn({
925
+ * data: [
926
+ * // ... provide data here
927
+ * ]
928
+ * })
929
+ *
930
+ * // Create many Bot_tokens and only return the `app_id`
931
+ * const bot_tokensWithApp_idOnly = await prisma.bot_tokens.createManyAndReturn({
932
+ * select: { app_id: true },
933
+ * data: [
934
+ * // ... provide data here
935
+ * ]
936
+ * })
937
+ * Note, that providing `undefined` is treated as the value not being there.
938
+ * Read more here: https://pris.ly/d/null-undefined
939
+ *
940
+ */
941
+ createManyAndReturn<T extends bot_tokensCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, bot_tokensCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
942
+
943
+ /**
944
+ * Delete a Bot_tokens.
945
+ * @param {bot_tokensDeleteArgs} args - Arguments to delete one Bot_tokens.
946
+ * @example
947
+ * // Delete one Bot_tokens
948
+ * const Bot_tokens = await prisma.bot_tokens.delete({
949
+ * where: {
950
+ * // ... filter to delete one Bot_tokens
951
+ * }
952
+ * })
953
+ *
954
+ */
955
+ delete<T extends bot_tokensDeleteArgs>(args: Prisma.SelectSubset<T, bot_tokensDeleteArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
956
+
957
+ /**
958
+ * Update one Bot_tokens.
959
+ * @param {bot_tokensUpdateArgs} args - Arguments to update one Bot_tokens.
960
+ * @example
961
+ * // Update one Bot_tokens
962
+ * const bot_tokens = await prisma.bot_tokens.update({
963
+ * where: {
964
+ * // ... provide filter here
965
+ * },
966
+ * data: {
967
+ * // ... provide data here
968
+ * }
969
+ * })
970
+ *
971
+ */
972
+ update<T extends bot_tokensUpdateArgs>(args: Prisma.SelectSubset<T, bot_tokensUpdateArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
973
+
974
+ /**
975
+ * Delete zero or more Bot_tokens.
976
+ * @param {bot_tokensDeleteManyArgs} args - Arguments to filter Bot_tokens to delete.
977
+ * @example
978
+ * // Delete a few Bot_tokens
979
+ * const { count } = await prisma.bot_tokens.deleteMany({
980
+ * where: {
981
+ * // ... provide filter here
982
+ * }
983
+ * })
984
+ *
985
+ */
986
+ deleteMany<T extends bot_tokensDeleteManyArgs>(args?: Prisma.SelectSubset<T, bot_tokensDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
987
+
988
+ /**
989
+ * Update zero or more Bot_tokens.
990
+ * Note, that providing `undefined` is treated as the value not being there.
991
+ * Read more here: https://pris.ly/d/null-undefined
992
+ * @param {bot_tokensUpdateManyArgs} args - Arguments to update one or more rows.
993
+ * @example
994
+ * // Update many Bot_tokens
995
+ * const bot_tokens = await prisma.bot_tokens.updateMany({
996
+ * where: {
997
+ * // ... provide filter here
998
+ * },
999
+ * data: {
1000
+ * // ... provide data here
1001
+ * }
1002
+ * })
1003
+ *
1004
+ */
1005
+ updateMany<T extends bot_tokensUpdateManyArgs>(args: Prisma.SelectSubset<T, bot_tokensUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
1006
+
1007
+ /**
1008
+ * Update zero or more Bot_tokens and returns the data updated in the database.
1009
+ * @param {bot_tokensUpdateManyAndReturnArgs} args - Arguments to update many Bot_tokens.
1010
+ * @example
1011
+ * // Update many Bot_tokens
1012
+ * const bot_tokens = await prisma.bot_tokens.updateManyAndReturn({
1013
+ * where: {
1014
+ * // ... provide filter here
1015
+ * },
1016
+ * data: [
1017
+ * // ... provide data here
1018
+ * ]
1019
+ * })
1020
+ *
1021
+ * // Update zero or more Bot_tokens and only return the `app_id`
1022
+ * const bot_tokensWithApp_idOnly = await prisma.bot_tokens.updateManyAndReturn({
1023
+ * select: { app_id: true },
1024
+ * where: {
1025
+ * // ... provide filter here
1026
+ * },
1027
+ * data: [
1028
+ * // ... provide data here
1029
+ * ]
1030
+ * })
1031
+ * Note, that providing `undefined` is treated as the value not being there.
1032
+ * Read more here: https://pris.ly/d/null-undefined
1033
+ *
1034
+ */
1035
+ updateManyAndReturn<T extends bot_tokensUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, bot_tokensUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
1036
+
1037
+ /**
1038
+ * Create or update one Bot_tokens.
1039
+ * @param {bot_tokensUpsertArgs} args - Arguments to update or create a Bot_tokens.
1040
+ * @example
1041
+ * // Update or create a Bot_tokens
1042
+ * const bot_tokens = await prisma.bot_tokens.upsert({
1043
+ * create: {
1044
+ * // ... data to create a Bot_tokens
1045
+ * },
1046
+ * update: {
1047
+ * // ... in case it already exists, update
1048
+ * },
1049
+ * where: {
1050
+ * // ... the filter for the Bot_tokens we want to update
1051
+ * }
1052
+ * })
1053
+ */
1054
+ upsert<T extends bot_tokensUpsertArgs>(args: Prisma.SelectSubset<T, bot_tokensUpsertArgs<ExtArgs>>): Prisma.Prisma__bot_tokensClient<runtime.Types.Result.GetResult<Prisma.$bot_tokensPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
1055
+
1056
+
1057
+ /**
1058
+ * Count the number of Bot_tokens.
1059
+ * Note, that providing `undefined` is treated as the value not being there.
1060
+ * Read more here: https://pris.ly/d/null-undefined
1061
+ * @param {bot_tokensCountArgs} args - Arguments to filter Bot_tokens to count.
1062
+ * @example
1063
+ * // Count the number of Bot_tokens
1064
+ * const count = await prisma.bot_tokens.count({
1065
+ * where: {
1066
+ * // ... the filter for the Bot_tokens we want to count
1067
+ * }
1068
+ * })
1069
+ **/
1070
+ count<T extends bot_tokensCountArgs>(
1071
+ args?: Prisma.Subset<T, bot_tokensCountArgs>,
1072
+ ): Prisma.PrismaPromise<
1073
+ T extends runtime.Types.Utils.Record<'select', any>
1074
+ ? T['select'] extends true
1075
+ ? number
1076
+ : Prisma.GetScalarType<T['select'], Bot_tokensCountAggregateOutputType>
1077
+ : number
1078
+ >
1079
+
1080
+ /**
1081
+ * Allows you to perform aggregations operations on a Bot_tokens.
1082
+ * Note, that providing `undefined` is treated as the value not being there.
1083
+ * Read more here: https://pris.ly/d/null-undefined
1084
+ * @param {Bot_tokensAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
1085
+ * @example
1086
+ * // Ordered by age ascending
1087
+ * // Where email contains prisma.io
1088
+ * // Limited to the 10 users
1089
+ * const aggregations = await prisma.user.aggregate({
1090
+ * _avg: {
1091
+ * age: true,
1092
+ * },
1093
+ * where: {
1094
+ * email: {
1095
+ * contains: "prisma.io",
1096
+ * },
1097
+ * },
1098
+ * orderBy: {
1099
+ * age: "asc",
1100
+ * },
1101
+ * take: 10,
1102
+ * })
1103
+ **/
1104
+ aggregate<T extends Bot_tokensAggregateArgs>(args: Prisma.Subset<T, Bot_tokensAggregateArgs>): Prisma.PrismaPromise<GetBot_tokensAggregateType<T>>
1105
+
1106
+ /**
1107
+ * Group by Bot_tokens.
1108
+ * Note, that providing `undefined` is treated as the value not being there.
1109
+ * Read more here: https://pris.ly/d/null-undefined
1110
+ * @param {bot_tokensGroupByArgs} args - Group by arguments.
1111
+ * @example
1112
+ * // Group by city, order by createdAt, get count
1113
+ * const result = await prisma.user.groupBy({
1114
+ * by: ['city', 'createdAt'],
1115
+ * orderBy: {
1116
+ * createdAt: true
1117
+ * },
1118
+ * _count: {
1119
+ * _all: true
1120
+ * },
1121
+ * })
1122
+ *
1123
+ **/
1124
+ groupBy<
1125
+ T extends bot_tokensGroupByArgs,
1126
+ HasSelectOrTake extends Prisma.Or<
1127
+ Prisma.Extends<'skip', Prisma.Keys<T>>,
1128
+ Prisma.Extends<'take', Prisma.Keys<T>>
1129
+ >,
1130
+ OrderByArg extends Prisma.True extends HasSelectOrTake
1131
+ ? { orderBy: bot_tokensGroupByArgs['orderBy'] }
1132
+ : { orderBy?: bot_tokensGroupByArgs['orderBy'] },
1133
+ OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
1134
+ ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
1135
+ ByValid extends Prisma.Has<ByFields, OrderFields>,
1136
+ HavingFields extends Prisma.GetHavingFields<T['having']>,
1137
+ HavingValid extends Prisma.Has<ByFields, HavingFields>,
1138
+ ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
1139
+ InputErrors extends ByEmpty extends Prisma.True
1140
+ ? `Error: "by" must not be empty.`
1141
+ : HavingValid extends Prisma.False
1142
+ ? {
1143
+ [P in HavingFields]: P extends ByFields
1144
+ ? never
1145
+ : P extends string
1146
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
1147
+ : [
1148
+ Error,
1149
+ 'Field ',
1150
+ P,
1151
+ ` in "having" needs to be provided in "by"`,
1152
+ ]
1153
+ }[HavingFields]
1154
+ : 'take' extends Prisma.Keys<T>
1155
+ ? 'orderBy' extends Prisma.Keys<T>
1156
+ ? ByValid extends Prisma.True
1157
+ ? {}
1158
+ : {
1159
+ [P in OrderFields]: P extends ByFields
1160
+ ? never
1161
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1162
+ }[OrderFields]
1163
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
1164
+ : 'skip' extends Prisma.Keys<T>
1165
+ ? 'orderBy' extends Prisma.Keys<T>
1166
+ ? ByValid extends Prisma.True
1167
+ ? {}
1168
+ : {
1169
+ [P in OrderFields]: P extends ByFields
1170
+ ? never
1171
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1172
+ }[OrderFields]
1173
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
1174
+ : ByValid extends Prisma.True
1175
+ ? {}
1176
+ : {
1177
+ [P in OrderFields]: P extends ByFields
1178
+ ? never
1179
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
1180
+ }[OrderFields]
1181
+ >(args: Prisma.SubsetIntersection<T, bot_tokensGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetBot_tokensGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
1182
+ /**
1183
+ * Fields of the bot_tokens model
1184
+ */
1185
+ readonly fields: bot_tokensFieldRefs;
1186
+ }
1187
+
1188
+ /**
1189
+ * The delegate class that acts as a "Promise-like" for bot_tokens.
1190
+ * Why is this prefixed with `Prisma__`?
1191
+ * Because we want to prevent naming conflicts as mentioned in
1192
+ * https://github.com/prisma/prisma-client-js/issues/707
1193
+ */
1194
+ export interface Prisma__bot_tokensClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
1195
+ readonly [Symbol.toStringTag]: "PrismaPromise"
1196
+ api_keys<T extends Prisma.bot_tokens$api_keysArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.bot_tokens$api_keysArgs<ExtArgs>>): Prisma.Prisma__bot_api_keysClient<runtime.Types.Result.GetResult<Prisma.$bot_api_keysPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
1197
+ forum_sync_configs<T extends Prisma.bot_tokens$forum_sync_configsArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.bot_tokens$forum_sync_configsArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$forum_sync_configsPayload<ExtArgs>, T, "findMany", GlobalOmitOptions> | Null>
1198
+ global_model<T extends Prisma.bot_tokens$global_modelArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.bot_tokens$global_modelArgs<ExtArgs>>): Prisma.Prisma__global_modelsClient<runtime.Types.Result.GetResult<Prisma.$global_modelsPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
1199
+ /**
1200
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
1201
+ * @param onfulfilled The callback to execute when the Promise is resolved.
1202
+ * @param onrejected The callback to execute when the Promise is rejected.
1203
+ * @returns A Promise for the completion of which ever callback is executed.
1204
+ */
1205
+ 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>
1206
+ /**
1207
+ * Attaches a callback for only the rejection of the Promise.
1208
+ * @param onrejected The callback to execute when the Promise is rejected.
1209
+ * @returns A Promise for the completion of the callback.
1210
+ */
1211
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>
1212
+ /**
1213
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
1214
+ * resolved value cannot be modified from the callback.
1215
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
1216
+ * @returns A Promise for the completion of the callback.
1217
+ */
1218
+ finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>
1219
+ }
1220
+
1221
+
1222
+
1223
+
1224
+ /**
1225
+ * Fields of the bot_tokens model
1226
+ */
1227
+ export interface bot_tokensFieldRefs {
1228
+ readonly app_id: Prisma.FieldRef<"bot_tokens", 'String'>
1229
+ readonly token: Prisma.FieldRef<"bot_tokens", 'String'>
1230
+ readonly bot_mode: Prisma.FieldRef<"bot_tokens", 'BotMode'>
1231
+ readonly thread_deletion_sync_mode: Prisma.FieldRef<"bot_tokens", 'ThreadDeletionSyncMode'>
1232
+ readonly client_id: Prisma.FieldRef<"bot_tokens", 'String'>
1233
+ readonly client_secret: Prisma.FieldRef<"bot_tokens", 'String'>
1234
+ readonly proxy_url: Prisma.FieldRef<"bot_tokens", 'String'>
1235
+ readonly created_at: Prisma.FieldRef<"bot_tokens", 'DateTime'>
1236
+ readonly last_used_at: Prisma.FieldRef<"bot_tokens", 'DateTime'>
1237
+ }
1238
+
1239
+
1240
+ // Custom InputTypes
1241
+ /**
1242
+ * bot_tokens findUnique
1243
+ */
1244
+ export type bot_tokensFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1245
+ /**
1246
+ * Select specific fields to fetch from the bot_tokens
1247
+ */
1248
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1249
+ /**
1250
+ * Omit specific fields from the bot_tokens
1251
+ */
1252
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1253
+ /**
1254
+ * Choose, which related nodes to fetch as well
1255
+ */
1256
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1257
+ /**
1258
+ * Filter, which bot_tokens to fetch.
1259
+ */
1260
+ where: Prisma.bot_tokensWhereUniqueInput
1261
+ }
1262
+
1263
+ /**
1264
+ * bot_tokens findUniqueOrThrow
1265
+ */
1266
+ export type bot_tokensFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1267
+ /**
1268
+ * Select specific fields to fetch from the bot_tokens
1269
+ */
1270
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1271
+ /**
1272
+ * Omit specific fields from the bot_tokens
1273
+ */
1274
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1275
+ /**
1276
+ * Choose, which related nodes to fetch as well
1277
+ */
1278
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1279
+ /**
1280
+ * Filter, which bot_tokens to fetch.
1281
+ */
1282
+ where: Prisma.bot_tokensWhereUniqueInput
1283
+ }
1284
+
1285
+ /**
1286
+ * bot_tokens findFirst
1287
+ */
1288
+ export type bot_tokensFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1289
+ /**
1290
+ * Select specific fields to fetch from the bot_tokens
1291
+ */
1292
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1293
+ /**
1294
+ * Omit specific fields from the bot_tokens
1295
+ */
1296
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1297
+ /**
1298
+ * Choose, which related nodes to fetch as well
1299
+ */
1300
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1301
+ /**
1302
+ * Filter, which bot_tokens to fetch.
1303
+ */
1304
+ where?: Prisma.bot_tokensWhereInput
1305
+ /**
1306
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1307
+ *
1308
+ * Determine the order of bot_tokens to fetch.
1309
+ */
1310
+ orderBy?: Prisma.bot_tokensOrderByWithRelationInput | Prisma.bot_tokensOrderByWithRelationInput[]
1311
+ /**
1312
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1313
+ *
1314
+ * Sets the position for searching for bot_tokens.
1315
+ */
1316
+ cursor?: Prisma.bot_tokensWhereUniqueInput
1317
+ /**
1318
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1319
+ *
1320
+ * Take `±n` bot_tokens from the position of the cursor.
1321
+ */
1322
+ take?: number
1323
+ /**
1324
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1325
+ *
1326
+ * Skip the first `n` bot_tokens.
1327
+ */
1328
+ skip?: number
1329
+ /**
1330
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1331
+ *
1332
+ * Filter by unique combinations of bot_tokens.
1333
+ */
1334
+ distinct?: Prisma.Bot_tokensScalarFieldEnum | Prisma.Bot_tokensScalarFieldEnum[]
1335
+ }
1336
+
1337
+ /**
1338
+ * bot_tokens findFirstOrThrow
1339
+ */
1340
+ export type bot_tokensFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1341
+ /**
1342
+ * Select specific fields to fetch from the bot_tokens
1343
+ */
1344
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1345
+ /**
1346
+ * Omit specific fields from the bot_tokens
1347
+ */
1348
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1349
+ /**
1350
+ * Choose, which related nodes to fetch as well
1351
+ */
1352
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1353
+ /**
1354
+ * Filter, which bot_tokens to fetch.
1355
+ */
1356
+ where?: Prisma.bot_tokensWhereInput
1357
+ /**
1358
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1359
+ *
1360
+ * Determine the order of bot_tokens to fetch.
1361
+ */
1362
+ orderBy?: Prisma.bot_tokensOrderByWithRelationInput | Prisma.bot_tokensOrderByWithRelationInput[]
1363
+ /**
1364
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1365
+ *
1366
+ * Sets the position for searching for bot_tokens.
1367
+ */
1368
+ cursor?: Prisma.bot_tokensWhereUniqueInput
1369
+ /**
1370
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1371
+ *
1372
+ * Take `±n` bot_tokens from the position of the cursor.
1373
+ */
1374
+ take?: number
1375
+ /**
1376
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1377
+ *
1378
+ * Skip the first `n` bot_tokens.
1379
+ */
1380
+ skip?: number
1381
+ /**
1382
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1383
+ *
1384
+ * Filter by unique combinations of bot_tokens.
1385
+ */
1386
+ distinct?: Prisma.Bot_tokensScalarFieldEnum | Prisma.Bot_tokensScalarFieldEnum[]
1387
+ }
1388
+
1389
+ /**
1390
+ * bot_tokens findMany
1391
+ */
1392
+ export type bot_tokensFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1393
+ /**
1394
+ * Select specific fields to fetch from the bot_tokens
1395
+ */
1396
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1397
+ /**
1398
+ * Omit specific fields from the bot_tokens
1399
+ */
1400
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1401
+ /**
1402
+ * Choose, which related nodes to fetch as well
1403
+ */
1404
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1405
+ /**
1406
+ * Filter, which bot_tokens to fetch.
1407
+ */
1408
+ where?: Prisma.bot_tokensWhereInput
1409
+ /**
1410
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1411
+ *
1412
+ * Determine the order of bot_tokens to fetch.
1413
+ */
1414
+ orderBy?: Prisma.bot_tokensOrderByWithRelationInput | Prisma.bot_tokensOrderByWithRelationInput[]
1415
+ /**
1416
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1417
+ *
1418
+ * Sets the position for listing bot_tokens.
1419
+ */
1420
+ cursor?: Prisma.bot_tokensWhereUniqueInput
1421
+ /**
1422
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1423
+ *
1424
+ * Take `±n` bot_tokens from the position of the cursor.
1425
+ */
1426
+ take?: number
1427
+ /**
1428
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1429
+ *
1430
+ * Skip the first `n` bot_tokens.
1431
+ */
1432
+ skip?: number
1433
+ distinct?: Prisma.Bot_tokensScalarFieldEnum | Prisma.Bot_tokensScalarFieldEnum[]
1434
+ }
1435
+
1436
+ /**
1437
+ * bot_tokens create
1438
+ */
1439
+ export type bot_tokensCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1440
+ /**
1441
+ * Select specific fields to fetch from the bot_tokens
1442
+ */
1443
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1444
+ /**
1445
+ * Omit specific fields from the bot_tokens
1446
+ */
1447
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1448
+ /**
1449
+ * Choose, which related nodes to fetch as well
1450
+ */
1451
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1452
+ /**
1453
+ * The data needed to create a bot_tokens.
1454
+ */
1455
+ data: Prisma.XOR<Prisma.bot_tokensCreateInput, Prisma.bot_tokensUncheckedCreateInput>
1456
+ }
1457
+
1458
+ /**
1459
+ * bot_tokens createMany
1460
+ */
1461
+ export type bot_tokensCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1462
+ /**
1463
+ * The data used to create many bot_tokens.
1464
+ */
1465
+ data: Prisma.bot_tokensCreateManyInput | Prisma.bot_tokensCreateManyInput[]
1466
+ }
1467
+
1468
+ /**
1469
+ * bot_tokens createManyAndReturn
1470
+ */
1471
+ export type bot_tokensCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1472
+ /**
1473
+ * Select specific fields to fetch from the bot_tokens
1474
+ */
1475
+ select?: Prisma.bot_tokensSelectCreateManyAndReturn<ExtArgs> | null
1476
+ /**
1477
+ * Omit specific fields from the bot_tokens
1478
+ */
1479
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1480
+ /**
1481
+ * The data used to create many bot_tokens.
1482
+ */
1483
+ data: Prisma.bot_tokensCreateManyInput | Prisma.bot_tokensCreateManyInput[]
1484
+ }
1485
+
1486
+ /**
1487
+ * bot_tokens update
1488
+ */
1489
+ export type bot_tokensUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1490
+ /**
1491
+ * Select specific fields to fetch from the bot_tokens
1492
+ */
1493
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1494
+ /**
1495
+ * Omit specific fields from the bot_tokens
1496
+ */
1497
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1498
+ /**
1499
+ * Choose, which related nodes to fetch as well
1500
+ */
1501
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1502
+ /**
1503
+ * The data needed to update a bot_tokens.
1504
+ */
1505
+ data: Prisma.XOR<Prisma.bot_tokensUpdateInput, Prisma.bot_tokensUncheckedUpdateInput>
1506
+ /**
1507
+ * Choose, which bot_tokens to update.
1508
+ */
1509
+ where: Prisma.bot_tokensWhereUniqueInput
1510
+ }
1511
+
1512
+ /**
1513
+ * bot_tokens updateMany
1514
+ */
1515
+ export type bot_tokensUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1516
+ /**
1517
+ * The data used to update bot_tokens.
1518
+ */
1519
+ data: Prisma.XOR<Prisma.bot_tokensUpdateManyMutationInput, Prisma.bot_tokensUncheckedUpdateManyInput>
1520
+ /**
1521
+ * Filter which bot_tokens to update
1522
+ */
1523
+ where?: Prisma.bot_tokensWhereInput
1524
+ /**
1525
+ * Limit how many bot_tokens to update.
1526
+ */
1527
+ limit?: number
1528
+ }
1529
+
1530
+ /**
1531
+ * bot_tokens updateManyAndReturn
1532
+ */
1533
+ export type bot_tokensUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1534
+ /**
1535
+ * Select specific fields to fetch from the bot_tokens
1536
+ */
1537
+ select?: Prisma.bot_tokensSelectUpdateManyAndReturn<ExtArgs> | null
1538
+ /**
1539
+ * Omit specific fields from the bot_tokens
1540
+ */
1541
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1542
+ /**
1543
+ * The data used to update bot_tokens.
1544
+ */
1545
+ data: Prisma.XOR<Prisma.bot_tokensUpdateManyMutationInput, Prisma.bot_tokensUncheckedUpdateManyInput>
1546
+ /**
1547
+ * Filter which bot_tokens to update
1548
+ */
1549
+ where?: Prisma.bot_tokensWhereInput
1550
+ /**
1551
+ * Limit how many bot_tokens to update.
1552
+ */
1553
+ limit?: number
1554
+ }
1555
+
1556
+ /**
1557
+ * bot_tokens upsert
1558
+ */
1559
+ export type bot_tokensUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1560
+ /**
1561
+ * Select specific fields to fetch from the bot_tokens
1562
+ */
1563
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1564
+ /**
1565
+ * Omit specific fields from the bot_tokens
1566
+ */
1567
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1568
+ /**
1569
+ * Choose, which related nodes to fetch as well
1570
+ */
1571
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1572
+ /**
1573
+ * The filter to search for the bot_tokens to update in case it exists.
1574
+ */
1575
+ where: Prisma.bot_tokensWhereUniqueInput
1576
+ /**
1577
+ * In case the bot_tokens found by the `where` argument doesn't exist, create a new bot_tokens with this data.
1578
+ */
1579
+ create: Prisma.XOR<Prisma.bot_tokensCreateInput, Prisma.bot_tokensUncheckedCreateInput>
1580
+ /**
1581
+ * In case the bot_tokens was found with the provided `where` argument, update it with this data.
1582
+ */
1583
+ update: Prisma.XOR<Prisma.bot_tokensUpdateInput, Prisma.bot_tokensUncheckedUpdateInput>
1584
+ }
1585
+
1586
+ /**
1587
+ * bot_tokens delete
1588
+ */
1589
+ export type bot_tokensDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1590
+ /**
1591
+ * Select specific fields to fetch from the bot_tokens
1592
+ */
1593
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1594
+ /**
1595
+ * Omit specific fields from the bot_tokens
1596
+ */
1597
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1598
+ /**
1599
+ * Choose, which related nodes to fetch as well
1600
+ */
1601
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1602
+ /**
1603
+ * Filter which bot_tokens to delete.
1604
+ */
1605
+ where: Prisma.bot_tokensWhereUniqueInput
1606
+ }
1607
+
1608
+ /**
1609
+ * bot_tokens deleteMany
1610
+ */
1611
+ export type bot_tokensDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1612
+ /**
1613
+ * Filter which bot_tokens to delete
1614
+ */
1615
+ where?: Prisma.bot_tokensWhereInput
1616
+ /**
1617
+ * Limit how many bot_tokens to delete.
1618
+ */
1619
+ limit?: number
1620
+ }
1621
+
1622
+ /**
1623
+ * bot_tokens.api_keys
1624
+ */
1625
+ export type bot_tokens$api_keysArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1626
+ /**
1627
+ * Select specific fields to fetch from the bot_api_keys
1628
+ */
1629
+ select?: Prisma.bot_api_keysSelect<ExtArgs> | null
1630
+ /**
1631
+ * Omit specific fields from the bot_api_keys
1632
+ */
1633
+ omit?: Prisma.bot_api_keysOmit<ExtArgs> | null
1634
+ /**
1635
+ * Choose, which related nodes to fetch as well
1636
+ */
1637
+ include?: Prisma.bot_api_keysInclude<ExtArgs> | null
1638
+ where?: Prisma.bot_api_keysWhereInput
1639
+ }
1640
+
1641
+ /**
1642
+ * bot_tokens.forum_sync_configs
1643
+ */
1644
+ export type bot_tokens$forum_sync_configsArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1645
+ /**
1646
+ * Select specific fields to fetch from the forum_sync_configs
1647
+ */
1648
+ select?: Prisma.forum_sync_configsSelect<ExtArgs> | null
1649
+ /**
1650
+ * Omit specific fields from the forum_sync_configs
1651
+ */
1652
+ omit?: Prisma.forum_sync_configsOmit<ExtArgs> | null
1653
+ /**
1654
+ * Choose, which related nodes to fetch as well
1655
+ */
1656
+ include?: Prisma.forum_sync_configsInclude<ExtArgs> | null
1657
+ where?: Prisma.forum_sync_configsWhereInput
1658
+ orderBy?: Prisma.forum_sync_configsOrderByWithRelationInput | Prisma.forum_sync_configsOrderByWithRelationInput[]
1659
+ cursor?: Prisma.forum_sync_configsWhereUniqueInput
1660
+ take?: number
1661
+ skip?: number
1662
+ distinct?: Prisma.Forum_sync_configsScalarFieldEnum | Prisma.Forum_sync_configsScalarFieldEnum[]
1663
+ }
1664
+
1665
+ /**
1666
+ * bot_tokens.global_model
1667
+ */
1668
+ export type bot_tokens$global_modelArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1669
+ /**
1670
+ * Select specific fields to fetch from the global_models
1671
+ */
1672
+ select?: Prisma.global_modelsSelect<ExtArgs> | null
1673
+ /**
1674
+ * Omit specific fields from the global_models
1675
+ */
1676
+ omit?: Prisma.global_modelsOmit<ExtArgs> | null
1677
+ /**
1678
+ * Choose, which related nodes to fetch as well
1679
+ */
1680
+ include?: Prisma.global_modelsInclude<ExtArgs> | null
1681
+ where?: Prisma.global_modelsWhereInput
1682
+ }
1683
+
1684
+ /**
1685
+ * bot_tokens without action
1686
+ */
1687
+ export type bot_tokensDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1688
+ /**
1689
+ * Select specific fields to fetch from the bot_tokens
1690
+ */
1691
+ select?: Prisma.bot_tokensSelect<ExtArgs> | null
1692
+ /**
1693
+ * Omit specific fields from the bot_tokens
1694
+ */
1695
+ omit?: Prisma.bot_tokensOmit<ExtArgs> | null
1696
+ /**
1697
+ * Choose, which related nodes to fetch as well
1698
+ */
1699
+ include?: Prisma.bot_tokensInclude<ExtArgs> | null
1700
+ }