@otto-assistant/bridge 0.4.92

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