@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,1288 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
+ /* eslint-disable */
4
+ // biome-ignore-all lint: generated file
5
+ // @ts-nocheck
6
+ /*
7
+ * This file exports the `channel_models` model and its related types.
8
+ *
9
+ * 🟢 You can import this file directly.
10
+ */
11
+ import type * as runtime from "@prisma/client/runtime/client"
12
+ import type * as $Enums from "../enums.js"
13
+ import type * as Prisma from "../internal/prismaNamespace.js"
14
+
15
+ /**
16
+ * Model channel_models
17
+ *
18
+ */
19
+ export type channel_modelsModel = runtime.Types.Result.DefaultSelection<Prisma.$channel_modelsPayload>
20
+
21
+ export type AggregateChannel_models = {
22
+ _count: Channel_modelsCountAggregateOutputType | null
23
+ _min: Channel_modelsMinAggregateOutputType | null
24
+ _max: Channel_modelsMaxAggregateOutputType | null
25
+ }
26
+
27
+ export type Channel_modelsMinAggregateOutputType = {
28
+ channel_id: string | null
29
+ model_id: string | null
30
+ variant: string | null
31
+ created_at: Date | null
32
+ updated_at: Date | null
33
+ }
34
+
35
+ export type Channel_modelsMaxAggregateOutputType = {
36
+ channel_id: string | null
37
+ model_id: string | null
38
+ variant: string | null
39
+ created_at: Date | null
40
+ updated_at: Date | null
41
+ }
42
+
43
+ export type Channel_modelsCountAggregateOutputType = {
44
+ channel_id: number
45
+ model_id: number
46
+ variant: number
47
+ created_at: number
48
+ updated_at: number
49
+ _all: number
50
+ }
51
+
52
+
53
+ export type Channel_modelsMinAggregateInputType = {
54
+ channel_id?: true
55
+ model_id?: true
56
+ variant?: true
57
+ created_at?: true
58
+ updated_at?: true
59
+ }
60
+
61
+ export type Channel_modelsMaxAggregateInputType = {
62
+ channel_id?: true
63
+ model_id?: true
64
+ variant?: true
65
+ created_at?: true
66
+ updated_at?: true
67
+ }
68
+
69
+ export type Channel_modelsCountAggregateInputType = {
70
+ channel_id?: true
71
+ model_id?: true
72
+ variant?: true
73
+ created_at?: true
74
+ updated_at?: true
75
+ _all?: true
76
+ }
77
+
78
+ export type Channel_modelsAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
79
+ /**
80
+ * Filter which channel_models to aggregate.
81
+ */
82
+ where?: Prisma.channel_modelsWhereInput
83
+ /**
84
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
85
+ *
86
+ * Determine the order of channel_models to fetch.
87
+ */
88
+ orderBy?: Prisma.channel_modelsOrderByWithRelationInput | Prisma.channel_modelsOrderByWithRelationInput[]
89
+ /**
90
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
91
+ *
92
+ * Sets the start position
93
+ */
94
+ cursor?: Prisma.channel_modelsWhereUniqueInput
95
+ /**
96
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
97
+ *
98
+ * Take `±n` channel_models from the position of the cursor.
99
+ */
100
+ take?: number
101
+ /**
102
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
103
+ *
104
+ * Skip the first `n` channel_models.
105
+ */
106
+ skip?: number
107
+ /**
108
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
109
+ *
110
+ * Count returned channel_models
111
+ **/
112
+ _count?: true | Channel_modelsCountAggregateInputType
113
+ /**
114
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
115
+ *
116
+ * Select which fields to find the minimum value
117
+ **/
118
+ _min?: Channel_modelsMinAggregateInputType
119
+ /**
120
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
121
+ *
122
+ * Select which fields to find the maximum value
123
+ **/
124
+ _max?: Channel_modelsMaxAggregateInputType
125
+ }
126
+
127
+ export type GetChannel_modelsAggregateType<T extends Channel_modelsAggregateArgs> = {
128
+ [P in keyof T & keyof AggregateChannel_models]: P extends '_count' | 'count'
129
+ ? T[P] extends true
130
+ ? number
131
+ : Prisma.GetScalarType<T[P], AggregateChannel_models[P]>
132
+ : Prisma.GetScalarType<T[P], AggregateChannel_models[P]>
133
+ }
134
+
135
+
136
+
137
+
138
+ export type channel_modelsGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
139
+ where?: Prisma.channel_modelsWhereInput
140
+ orderBy?: Prisma.channel_modelsOrderByWithAggregationInput | Prisma.channel_modelsOrderByWithAggregationInput[]
141
+ by: Prisma.Channel_modelsScalarFieldEnum[] | Prisma.Channel_modelsScalarFieldEnum
142
+ having?: Prisma.channel_modelsScalarWhereWithAggregatesInput
143
+ take?: number
144
+ skip?: number
145
+ _count?: Channel_modelsCountAggregateInputType | true
146
+ _min?: Channel_modelsMinAggregateInputType
147
+ _max?: Channel_modelsMaxAggregateInputType
148
+ }
149
+
150
+ export type Channel_modelsGroupByOutputType = {
151
+ channel_id: string
152
+ model_id: string
153
+ variant: string | null
154
+ created_at: Date | null
155
+ updated_at: Date | null
156
+ _count: Channel_modelsCountAggregateOutputType | null
157
+ _min: Channel_modelsMinAggregateOutputType | null
158
+ _max: Channel_modelsMaxAggregateOutputType | null
159
+ }
160
+
161
+ type GetChannel_modelsGroupByPayload<T extends channel_modelsGroupByArgs> = Prisma.PrismaPromise<
162
+ Array<
163
+ Prisma.PickEnumerable<Channel_modelsGroupByOutputType, T['by']> &
164
+ {
165
+ [P in ((keyof T) & (keyof Channel_modelsGroupByOutputType))]: P extends '_count'
166
+ ? T[P] extends boolean
167
+ ? number
168
+ : Prisma.GetScalarType<T[P], Channel_modelsGroupByOutputType[P]>
169
+ : Prisma.GetScalarType<T[P], Channel_modelsGroupByOutputType[P]>
170
+ }
171
+ >
172
+ >
173
+
174
+
175
+
176
+ export type channel_modelsWhereInput = {
177
+ AND?: Prisma.channel_modelsWhereInput | Prisma.channel_modelsWhereInput[]
178
+ OR?: Prisma.channel_modelsWhereInput[]
179
+ NOT?: Prisma.channel_modelsWhereInput | Prisma.channel_modelsWhereInput[]
180
+ channel_id?: Prisma.StringFilter<"channel_models"> | string
181
+ model_id?: Prisma.StringFilter<"channel_models"> | string
182
+ variant?: Prisma.StringNullableFilter<"channel_models"> | string | null
183
+ created_at?: Prisma.DateTimeNullableFilter<"channel_models"> | Date | string | null
184
+ updated_at?: Prisma.DateTimeNullableFilter<"channel_models"> | Date | string | null
185
+ channel?: Prisma.XOR<Prisma.Channel_directoriesScalarRelationFilter, Prisma.channel_directoriesWhereInput>
186
+ }
187
+
188
+ export type channel_modelsOrderByWithRelationInput = {
189
+ channel_id?: Prisma.SortOrder
190
+ model_id?: Prisma.SortOrder
191
+ variant?: Prisma.SortOrderInput | Prisma.SortOrder
192
+ created_at?: Prisma.SortOrderInput | Prisma.SortOrder
193
+ updated_at?: Prisma.SortOrderInput | Prisma.SortOrder
194
+ channel?: Prisma.channel_directoriesOrderByWithRelationInput
195
+ }
196
+
197
+ export type channel_modelsWhereUniqueInput = Prisma.AtLeast<{
198
+ channel_id?: string
199
+ AND?: Prisma.channel_modelsWhereInput | Prisma.channel_modelsWhereInput[]
200
+ OR?: Prisma.channel_modelsWhereInput[]
201
+ NOT?: Prisma.channel_modelsWhereInput | Prisma.channel_modelsWhereInput[]
202
+ model_id?: Prisma.StringFilter<"channel_models"> | string
203
+ variant?: Prisma.StringNullableFilter<"channel_models"> | string | null
204
+ created_at?: Prisma.DateTimeNullableFilter<"channel_models"> | Date | string | null
205
+ updated_at?: Prisma.DateTimeNullableFilter<"channel_models"> | Date | string | null
206
+ channel?: Prisma.XOR<Prisma.Channel_directoriesScalarRelationFilter, Prisma.channel_directoriesWhereInput>
207
+ }, "channel_id">
208
+
209
+ export type channel_modelsOrderByWithAggregationInput = {
210
+ channel_id?: Prisma.SortOrder
211
+ model_id?: Prisma.SortOrder
212
+ variant?: Prisma.SortOrderInput | Prisma.SortOrder
213
+ created_at?: Prisma.SortOrderInput | Prisma.SortOrder
214
+ updated_at?: Prisma.SortOrderInput | Prisma.SortOrder
215
+ _count?: Prisma.channel_modelsCountOrderByAggregateInput
216
+ _max?: Prisma.channel_modelsMaxOrderByAggregateInput
217
+ _min?: Prisma.channel_modelsMinOrderByAggregateInput
218
+ }
219
+
220
+ export type channel_modelsScalarWhereWithAggregatesInput = {
221
+ AND?: Prisma.channel_modelsScalarWhereWithAggregatesInput | Prisma.channel_modelsScalarWhereWithAggregatesInput[]
222
+ OR?: Prisma.channel_modelsScalarWhereWithAggregatesInput[]
223
+ NOT?: Prisma.channel_modelsScalarWhereWithAggregatesInput | Prisma.channel_modelsScalarWhereWithAggregatesInput[]
224
+ channel_id?: Prisma.StringWithAggregatesFilter<"channel_models"> | string
225
+ model_id?: Prisma.StringWithAggregatesFilter<"channel_models"> | string
226
+ variant?: Prisma.StringNullableWithAggregatesFilter<"channel_models"> | string | null
227
+ created_at?: Prisma.DateTimeNullableWithAggregatesFilter<"channel_models"> | Date | string | null
228
+ updated_at?: Prisma.DateTimeNullableWithAggregatesFilter<"channel_models"> | Date | string | null
229
+ }
230
+
231
+ export type channel_modelsCreateInput = {
232
+ model_id: string
233
+ variant?: string | null
234
+ created_at?: Date | string | null
235
+ updated_at?: Date | string | null
236
+ channel: Prisma.channel_directoriesCreateNestedOneWithoutChannel_modelInput
237
+ }
238
+
239
+ export type channel_modelsUncheckedCreateInput = {
240
+ channel_id: string
241
+ model_id: string
242
+ variant?: string | null
243
+ created_at?: Date | string | null
244
+ updated_at?: Date | string | null
245
+ }
246
+
247
+ export type channel_modelsUpdateInput = {
248
+ model_id?: Prisma.StringFieldUpdateOperationsInput | string
249
+ variant?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
250
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
251
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
252
+ channel?: Prisma.channel_directoriesUpdateOneRequiredWithoutChannel_modelNestedInput
253
+ }
254
+
255
+ export type channel_modelsUncheckedUpdateInput = {
256
+ channel_id?: Prisma.StringFieldUpdateOperationsInput | string
257
+ model_id?: Prisma.StringFieldUpdateOperationsInput | string
258
+ variant?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
259
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
260
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
261
+ }
262
+
263
+ export type channel_modelsCreateManyInput = {
264
+ channel_id: string
265
+ model_id: string
266
+ variant?: string | null
267
+ created_at?: Date | string | null
268
+ updated_at?: Date | string | null
269
+ }
270
+
271
+ export type channel_modelsUpdateManyMutationInput = {
272
+ model_id?: Prisma.StringFieldUpdateOperationsInput | string
273
+ variant?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
274
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
275
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
276
+ }
277
+
278
+ export type channel_modelsUncheckedUpdateManyInput = {
279
+ channel_id?: Prisma.StringFieldUpdateOperationsInput | string
280
+ model_id?: Prisma.StringFieldUpdateOperationsInput | string
281
+ variant?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
282
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
283
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
284
+ }
285
+
286
+ export type Channel_modelsNullableScalarRelationFilter = {
287
+ is?: Prisma.channel_modelsWhereInput | null
288
+ isNot?: Prisma.channel_modelsWhereInput | null
289
+ }
290
+
291
+ export type channel_modelsCountOrderByAggregateInput = {
292
+ channel_id?: Prisma.SortOrder
293
+ model_id?: Prisma.SortOrder
294
+ variant?: Prisma.SortOrder
295
+ created_at?: Prisma.SortOrder
296
+ updated_at?: Prisma.SortOrder
297
+ }
298
+
299
+ export type channel_modelsMaxOrderByAggregateInput = {
300
+ channel_id?: Prisma.SortOrder
301
+ model_id?: Prisma.SortOrder
302
+ variant?: Prisma.SortOrder
303
+ created_at?: Prisma.SortOrder
304
+ updated_at?: Prisma.SortOrder
305
+ }
306
+
307
+ export type channel_modelsMinOrderByAggregateInput = {
308
+ channel_id?: Prisma.SortOrder
309
+ model_id?: Prisma.SortOrder
310
+ variant?: Prisma.SortOrder
311
+ created_at?: Prisma.SortOrder
312
+ updated_at?: Prisma.SortOrder
313
+ }
314
+
315
+ export type channel_modelsCreateNestedOneWithoutChannelInput = {
316
+ create?: Prisma.XOR<Prisma.channel_modelsCreateWithoutChannelInput, Prisma.channel_modelsUncheckedCreateWithoutChannelInput>
317
+ connectOrCreate?: Prisma.channel_modelsCreateOrConnectWithoutChannelInput
318
+ connect?: Prisma.channel_modelsWhereUniqueInput
319
+ }
320
+
321
+ export type channel_modelsUncheckedCreateNestedOneWithoutChannelInput = {
322
+ create?: Prisma.XOR<Prisma.channel_modelsCreateWithoutChannelInput, Prisma.channel_modelsUncheckedCreateWithoutChannelInput>
323
+ connectOrCreate?: Prisma.channel_modelsCreateOrConnectWithoutChannelInput
324
+ connect?: Prisma.channel_modelsWhereUniqueInput
325
+ }
326
+
327
+ export type channel_modelsUpdateOneWithoutChannelNestedInput = {
328
+ create?: Prisma.XOR<Prisma.channel_modelsCreateWithoutChannelInput, Prisma.channel_modelsUncheckedCreateWithoutChannelInput>
329
+ connectOrCreate?: Prisma.channel_modelsCreateOrConnectWithoutChannelInput
330
+ upsert?: Prisma.channel_modelsUpsertWithoutChannelInput
331
+ disconnect?: Prisma.channel_modelsWhereInput | boolean
332
+ delete?: Prisma.channel_modelsWhereInput | boolean
333
+ connect?: Prisma.channel_modelsWhereUniqueInput
334
+ update?: Prisma.XOR<Prisma.XOR<Prisma.channel_modelsUpdateToOneWithWhereWithoutChannelInput, Prisma.channel_modelsUpdateWithoutChannelInput>, Prisma.channel_modelsUncheckedUpdateWithoutChannelInput>
335
+ }
336
+
337
+ export type channel_modelsUncheckedUpdateOneWithoutChannelNestedInput = {
338
+ create?: Prisma.XOR<Prisma.channel_modelsCreateWithoutChannelInput, Prisma.channel_modelsUncheckedCreateWithoutChannelInput>
339
+ connectOrCreate?: Prisma.channel_modelsCreateOrConnectWithoutChannelInput
340
+ upsert?: Prisma.channel_modelsUpsertWithoutChannelInput
341
+ disconnect?: Prisma.channel_modelsWhereInput | boolean
342
+ delete?: Prisma.channel_modelsWhereInput | boolean
343
+ connect?: Prisma.channel_modelsWhereUniqueInput
344
+ update?: Prisma.XOR<Prisma.XOR<Prisma.channel_modelsUpdateToOneWithWhereWithoutChannelInput, Prisma.channel_modelsUpdateWithoutChannelInput>, Prisma.channel_modelsUncheckedUpdateWithoutChannelInput>
345
+ }
346
+
347
+ export type channel_modelsCreateWithoutChannelInput = {
348
+ model_id: string
349
+ variant?: string | null
350
+ created_at?: Date | string | null
351
+ updated_at?: Date | string | null
352
+ }
353
+
354
+ export type channel_modelsUncheckedCreateWithoutChannelInput = {
355
+ model_id: string
356
+ variant?: string | null
357
+ created_at?: Date | string | null
358
+ updated_at?: Date | string | null
359
+ }
360
+
361
+ export type channel_modelsCreateOrConnectWithoutChannelInput = {
362
+ where: Prisma.channel_modelsWhereUniqueInput
363
+ create: Prisma.XOR<Prisma.channel_modelsCreateWithoutChannelInput, Prisma.channel_modelsUncheckedCreateWithoutChannelInput>
364
+ }
365
+
366
+ export type channel_modelsUpsertWithoutChannelInput = {
367
+ update: Prisma.XOR<Prisma.channel_modelsUpdateWithoutChannelInput, Prisma.channel_modelsUncheckedUpdateWithoutChannelInput>
368
+ create: Prisma.XOR<Prisma.channel_modelsCreateWithoutChannelInput, Prisma.channel_modelsUncheckedCreateWithoutChannelInput>
369
+ where?: Prisma.channel_modelsWhereInput
370
+ }
371
+
372
+ export type channel_modelsUpdateToOneWithWhereWithoutChannelInput = {
373
+ where?: Prisma.channel_modelsWhereInput
374
+ data: Prisma.XOR<Prisma.channel_modelsUpdateWithoutChannelInput, Prisma.channel_modelsUncheckedUpdateWithoutChannelInput>
375
+ }
376
+
377
+ export type channel_modelsUpdateWithoutChannelInput = {
378
+ model_id?: Prisma.StringFieldUpdateOperationsInput | string
379
+ variant?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
380
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
381
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
382
+ }
383
+
384
+ export type channel_modelsUncheckedUpdateWithoutChannelInput = {
385
+ model_id?: Prisma.StringFieldUpdateOperationsInput | string
386
+ variant?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
387
+ created_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
388
+ updated_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null
389
+ }
390
+
391
+
392
+
393
+ export type channel_modelsSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
394
+ channel_id?: boolean
395
+ model_id?: boolean
396
+ variant?: boolean
397
+ created_at?: boolean
398
+ updated_at?: boolean
399
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
400
+ }, ExtArgs["result"]["channel_models"]>
401
+
402
+ export type channel_modelsSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
403
+ channel_id?: boolean
404
+ model_id?: boolean
405
+ variant?: boolean
406
+ created_at?: boolean
407
+ updated_at?: boolean
408
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
409
+ }, ExtArgs["result"]["channel_models"]>
410
+
411
+ export type channel_modelsSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
412
+ channel_id?: boolean
413
+ model_id?: boolean
414
+ variant?: boolean
415
+ created_at?: boolean
416
+ updated_at?: boolean
417
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
418
+ }, ExtArgs["result"]["channel_models"]>
419
+
420
+ export type channel_modelsSelectScalar = {
421
+ channel_id?: boolean
422
+ model_id?: boolean
423
+ variant?: boolean
424
+ created_at?: boolean
425
+ updated_at?: boolean
426
+ }
427
+
428
+ export type channel_modelsOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"channel_id" | "model_id" | "variant" | "created_at" | "updated_at", ExtArgs["result"]["channel_models"]>
429
+ export type channel_modelsInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
430
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
431
+ }
432
+ export type channel_modelsIncludeCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
433
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
434
+ }
435
+ export type channel_modelsIncludeUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
436
+ channel?: boolean | Prisma.channel_directoriesDefaultArgs<ExtArgs>
437
+ }
438
+
439
+ export type $channel_modelsPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
440
+ name: "channel_models"
441
+ objects: {
442
+ channel: Prisma.$channel_directoriesPayload<ExtArgs>
443
+ }
444
+ scalars: runtime.Types.Extensions.GetPayloadResult<{
445
+ channel_id: string
446
+ model_id: string
447
+ variant: string | null
448
+ created_at: Date | null
449
+ updated_at: Date | null
450
+ }, ExtArgs["result"]["channel_models"]>
451
+ composites: {}
452
+ }
453
+
454
+ export type channel_modelsGetPayload<S extends boolean | null | undefined | channel_modelsDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload, S>
455
+
456
+ export type channel_modelsCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> =
457
+ Omit<channel_modelsFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
458
+ select?: Channel_modelsCountAggregateInputType | true
459
+ }
460
+
461
+ export interface channel_modelsDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
462
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['channel_models'], meta: { name: 'channel_models' } }
463
+ /**
464
+ * Find zero or one Channel_models that matches the filter.
465
+ * @param {channel_modelsFindUniqueArgs} args - Arguments to find a Channel_models
466
+ * @example
467
+ * // Get one Channel_models
468
+ * const channel_models = await prisma.channel_models.findUnique({
469
+ * where: {
470
+ * // ... provide filter here
471
+ * }
472
+ * })
473
+ */
474
+ findUnique<T extends channel_modelsFindUniqueArgs>(args: Prisma.SelectSubset<T, channel_modelsFindUniqueArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
475
+
476
+ /**
477
+ * Find one Channel_models that matches the filter or throw an error with `error.code='P2025'`
478
+ * if no matches were found.
479
+ * @param {channel_modelsFindUniqueOrThrowArgs} args - Arguments to find a Channel_models
480
+ * @example
481
+ * // Get one Channel_models
482
+ * const channel_models = await prisma.channel_models.findUniqueOrThrow({
483
+ * where: {
484
+ * // ... provide filter here
485
+ * }
486
+ * })
487
+ */
488
+ findUniqueOrThrow<T extends channel_modelsFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, channel_modelsFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
489
+
490
+ /**
491
+ * Find the first Channel_models that matches the filter.
492
+ * Note, that providing `undefined` is treated as the value not being there.
493
+ * Read more here: https://pris.ly/d/null-undefined
494
+ * @param {channel_modelsFindFirstArgs} args - Arguments to find a Channel_models
495
+ * @example
496
+ * // Get one Channel_models
497
+ * const channel_models = await prisma.channel_models.findFirst({
498
+ * where: {
499
+ * // ... provide filter here
500
+ * }
501
+ * })
502
+ */
503
+ findFirst<T extends channel_modelsFindFirstArgs>(args?: Prisma.SelectSubset<T, channel_modelsFindFirstArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
504
+
505
+ /**
506
+ * Find the first Channel_models that matches the filter or
507
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
508
+ * Note, that providing `undefined` is treated as the value not being there.
509
+ * Read more here: https://pris.ly/d/null-undefined
510
+ * @param {channel_modelsFindFirstOrThrowArgs} args - Arguments to find a Channel_models
511
+ * @example
512
+ * // Get one Channel_models
513
+ * const channel_models = await prisma.channel_models.findFirstOrThrow({
514
+ * where: {
515
+ * // ... provide filter here
516
+ * }
517
+ * })
518
+ */
519
+ findFirstOrThrow<T extends channel_modelsFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, channel_modelsFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
520
+
521
+ /**
522
+ * Find zero or more Channel_models that matches the filter.
523
+ * Note, that providing `undefined` is treated as the value not being there.
524
+ * Read more here: https://pris.ly/d/null-undefined
525
+ * @param {channel_modelsFindManyArgs} args - Arguments to filter and select certain fields only.
526
+ * @example
527
+ * // Get all Channel_models
528
+ * const channel_models = await prisma.channel_models.findMany()
529
+ *
530
+ * // Get first 10 Channel_models
531
+ * const channel_models = await prisma.channel_models.findMany({ take: 10 })
532
+ *
533
+ * // Only select the `channel_id`
534
+ * const channel_modelsWithChannel_idOnly = await prisma.channel_models.findMany({ select: { channel_id: true } })
535
+ *
536
+ */
537
+ findMany<T extends channel_modelsFindManyArgs>(args?: Prisma.SelectSubset<T, channel_modelsFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>
538
+
539
+ /**
540
+ * Create a Channel_models.
541
+ * @param {channel_modelsCreateArgs} args - Arguments to create a Channel_models.
542
+ * @example
543
+ * // Create one Channel_models
544
+ * const Channel_models = await prisma.channel_models.create({
545
+ * data: {
546
+ * // ... data to create a Channel_models
547
+ * }
548
+ * })
549
+ *
550
+ */
551
+ create<T extends channel_modelsCreateArgs>(args: Prisma.SelectSubset<T, channel_modelsCreateArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
552
+
553
+ /**
554
+ * Create many Channel_models.
555
+ * @param {channel_modelsCreateManyArgs} args - Arguments to create many Channel_models.
556
+ * @example
557
+ * // Create many Channel_models
558
+ * const channel_models = await prisma.channel_models.createMany({
559
+ * data: [
560
+ * // ... provide data here
561
+ * ]
562
+ * })
563
+ *
564
+ */
565
+ createMany<T extends channel_modelsCreateManyArgs>(args?: Prisma.SelectSubset<T, channel_modelsCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
566
+
567
+ /**
568
+ * Create many Channel_models and returns the data saved in the database.
569
+ * @param {channel_modelsCreateManyAndReturnArgs} args - Arguments to create many Channel_models.
570
+ * @example
571
+ * // Create many Channel_models
572
+ * const channel_models = await prisma.channel_models.createManyAndReturn({
573
+ * data: [
574
+ * // ... provide data here
575
+ * ]
576
+ * })
577
+ *
578
+ * // Create many Channel_models and only return the `channel_id`
579
+ * const channel_modelsWithChannel_idOnly = await prisma.channel_models.createManyAndReturn({
580
+ * select: { channel_id: true },
581
+ * data: [
582
+ * // ... provide data here
583
+ * ]
584
+ * })
585
+ * Note, that providing `undefined` is treated as the value not being there.
586
+ * Read more here: https://pris.ly/d/null-undefined
587
+ *
588
+ */
589
+ createManyAndReturn<T extends channel_modelsCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, channel_modelsCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>
590
+
591
+ /**
592
+ * Delete a Channel_models.
593
+ * @param {channel_modelsDeleteArgs} args - Arguments to delete one Channel_models.
594
+ * @example
595
+ * // Delete one Channel_models
596
+ * const Channel_models = await prisma.channel_models.delete({
597
+ * where: {
598
+ * // ... filter to delete one Channel_models
599
+ * }
600
+ * })
601
+ *
602
+ */
603
+ delete<T extends channel_modelsDeleteArgs>(args: Prisma.SelectSubset<T, channel_modelsDeleteArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
604
+
605
+ /**
606
+ * Update one Channel_models.
607
+ * @param {channel_modelsUpdateArgs} args - Arguments to update one Channel_models.
608
+ * @example
609
+ * // Update one Channel_models
610
+ * const channel_models = await prisma.channel_models.update({
611
+ * where: {
612
+ * // ... provide filter here
613
+ * },
614
+ * data: {
615
+ * // ... provide data here
616
+ * }
617
+ * })
618
+ *
619
+ */
620
+ update<T extends channel_modelsUpdateArgs>(args: Prisma.SelectSubset<T, channel_modelsUpdateArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
621
+
622
+ /**
623
+ * Delete zero or more Channel_models.
624
+ * @param {channel_modelsDeleteManyArgs} args - Arguments to filter Channel_models to delete.
625
+ * @example
626
+ * // Delete a few Channel_models
627
+ * const { count } = await prisma.channel_models.deleteMany({
628
+ * where: {
629
+ * // ... provide filter here
630
+ * }
631
+ * })
632
+ *
633
+ */
634
+ deleteMany<T extends channel_modelsDeleteManyArgs>(args?: Prisma.SelectSubset<T, channel_modelsDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
635
+
636
+ /**
637
+ * Update zero or more Channel_models.
638
+ * Note, that providing `undefined` is treated as the value not being there.
639
+ * Read more here: https://pris.ly/d/null-undefined
640
+ * @param {channel_modelsUpdateManyArgs} args - Arguments to update one or more rows.
641
+ * @example
642
+ * // Update many Channel_models
643
+ * const channel_models = await prisma.channel_models.updateMany({
644
+ * where: {
645
+ * // ... provide filter here
646
+ * },
647
+ * data: {
648
+ * // ... provide data here
649
+ * }
650
+ * })
651
+ *
652
+ */
653
+ updateMany<T extends channel_modelsUpdateManyArgs>(args: Prisma.SelectSubset<T, channel_modelsUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>
654
+
655
+ /**
656
+ * Update zero or more Channel_models and returns the data updated in the database.
657
+ * @param {channel_modelsUpdateManyAndReturnArgs} args - Arguments to update many Channel_models.
658
+ * @example
659
+ * // Update many Channel_models
660
+ * const channel_models = await prisma.channel_models.updateManyAndReturn({
661
+ * where: {
662
+ * // ... provide filter here
663
+ * },
664
+ * data: [
665
+ * // ... provide data here
666
+ * ]
667
+ * })
668
+ *
669
+ * // Update zero or more Channel_models and only return the `channel_id`
670
+ * const channel_modelsWithChannel_idOnly = await prisma.channel_models.updateManyAndReturn({
671
+ * select: { channel_id: true },
672
+ * where: {
673
+ * // ... provide filter here
674
+ * },
675
+ * data: [
676
+ * // ... provide data here
677
+ * ]
678
+ * })
679
+ * Note, that providing `undefined` is treated as the value not being there.
680
+ * Read more here: https://pris.ly/d/null-undefined
681
+ *
682
+ */
683
+ updateManyAndReturn<T extends channel_modelsUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, channel_modelsUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>
684
+
685
+ /**
686
+ * Create or update one Channel_models.
687
+ * @param {channel_modelsUpsertArgs} args - Arguments to update or create a Channel_models.
688
+ * @example
689
+ * // Update or create a Channel_models
690
+ * const channel_models = await prisma.channel_models.upsert({
691
+ * create: {
692
+ * // ... data to create a Channel_models
693
+ * },
694
+ * update: {
695
+ * // ... in case it already exists, update
696
+ * },
697
+ * where: {
698
+ * // ... the filter for the Channel_models we want to update
699
+ * }
700
+ * })
701
+ */
702
+ upsert<T extends channel_modelsUpsertArgs>(args: Prisma.SelectSubset<T, channel_modelsUpsertArgs<ExtArgs>>): Prisma.Prisma__channel_modelsClient<runtime.Types.Result.GetResult<Prisma.$channel_modelsPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
703
+
704
+
705
+ /**
706
+ * Count the number of Channel_models.
707
+ * Note, that providing `undefined` is treated as the value not being there.
708
+ * Read more here: https://pris.ly/d/null-undefined
709
+ * @param {channel_modelsCountArgs} args - Arguments to filter Channel_models to count.
710
+ * @example
711
+ * // Count the number of Channel_models
712
+ * const count = await prisma.channel_models.count({
713
+ * where: {
714
+ * // ... the filter for the Channel_models we want to count
715
+ * }
716
+ * })
717
+ **/
718
+ count<T extends channel_modelsCountArgs>(
719
+ args?: Prisma.Subset<T, channel_modelsCountArgs>,
720
+ ): Prisma.PrismaPromise<
721
+ T extends runtime.Types.Utils.Record<'select', any>
722
+ ? T['select'] extends true
723
+ ? number
724
+ : Prisma.GetScalarType<T['select'], Channel_modelsCountAggregateOutputType>
725
+ : number
726
+ >
727
+
728
+ /**
729
+ * Allows you to perform aggregations operations on a Channel_models.
730
+ * Note, that providing `undefined` is treated as the value not being there.
731
+ * Read more here: https://pris.ly/d/null-undefined
732
+ * @param {Channel_modelsAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
733
+ * @example
734
+ * // Ordered by age ascending
735
+ * // Where email contains prisma.io
736
+ * // Limited to the 10 users
737
+ * const aggregations = await prisma.user.aggregate({
738
+ * _avg: {
739
+ * age: true,
740
+ * },
741
+ * where: {
742
+ * email: {
743
+ * contains: "prisma.io",
744
+ * },
745
+ * },
746
+ * orderBy: {
747
+ * age: "asc",
748
+ * },
749
+ * take: 10,
750
+ * })
751
+ **/
752
+ aggregate<T extends Channel_modelsAggregateArgs>(args: Prisma.Subset<T, Channel_modelsAggregateArgs>): Prisma.PrismaPromise<GetChannel_modelsAggregateType<T>>
753
+
754
+ /**
755
+ * Group by Channel_models.
756
+ * Note, that providing `undefined` is treated as the value not being there.
757
+ * Read more here: https://pris.ly/d/null-undefined
758
+ * @param {channel_modelsGroupByArgs} args - Group by arguments.
759
+ * @example
760
+ * // Group by city, order by createdAt, get count
761
+ * const result = await prisma.user.groupBy({
762
+ * by: ['city', 'createdAt'],
763
+ * orderBy: {
764
+ * createdAt: true
765
+ * },
766
+ * _count: {
767
+ * _all: true
768
+ * },
769
+ * })
770
+ *
771
+ **/
772
+ groupBy<
773
+ T extends channel_modelsGroupByArgs,
774
+ HasSelectOrTake extends Prisma.Or<
775
+ Prisma.Extends<'skip', Prisma.Keys<T>>,
776
+ Prisma.Extends<'take', Prisma.Keys<T>>
777
+ >,
778
+ OrderByArg extends Prisma.True extends HasSelectOrTake
779
+ ? { orderBy: channel_modelsGroupByArgs['orderBy'] }
780
+ : { orderBy?: channel_modelsGroupByArgs['orderBy'] },
781
+ OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
782
+ ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
783
+ ByValid extends Prisma.Has<ByFields, OrderFields>,
784
+ HavingFields extends Prisma.GetHavingFields<T['having']>,
785
+ HavingValid extends Prisma.Has<ByFields, HavingFields>,
786
+ ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
787
+ InputErrors extends ByEmpty extends Prisma.True
788
+ ? `Error: "by" must not be empty.`
789
+ : HavingValid extends Prisma.False
790
+ ? {
791
+ [P in HavingFields]: P extends ByFields
792
+ ? never
793
+ : P extends string
794
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
795
+ : [
796
+ Error,
797
+ 'Field ',
798
+ P,
799
+ ` in "having" needs to be provided in "by"`,
800
+ ]
801
+ }[HavingFields]
802
+ : 'take' extends Prisma.Keys<T>
803
+ ? 'orderBy' extends Prisma.Keys<T>
804
+ ? ByValid extends Prisma.True
805
+ ? {}
806
+ : {
807
+ [P in OrderFields]: P extends ByFields
808
+ ? never
809
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
810
+ }[OrderFields]
811
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
812
+ : 'skip' extends Prisma.Keys<T>
813
+ ? 'orderBy' extends Prisma.Keys<T>
814
+ ? ByValid extends Prisma.True
815
+ ? {}
816
+ : {
817
+ [P in OrderFields]: P extends ByFields
818
+ ? never
819
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
820
+ }[OrderFields]
821
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
822
+ : ByValid extends Prisma.True
823
+ ? {}
824
+ : {
825
+ [P in OrderFields]: P extends ByFields
826
+ ? never
827
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
828
+ }[OrderFields]
829
+ >(args: Prisma.SubsetIntersection<T, channel_modelsGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetChannel_modelsGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
830
+ /**
831
+ * Fields of the channel_models model
832
+ */
833
+ readonly fields: channel_modelsFieldRefs;
834
+ }
835
+
836
+ /**
837
+ * The delegate class that acts as a "Promise-like" for channel_models.
838
+ * Why is this prefixed with `Prisma__`?
839
+ * Because we want to prevent naming conflicts as mentioned in
840
+ * https://github.com/prisma/prisma-client-js/issues/707
841
+ */
842
+ export interface Prisma__channel_modelsClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
843
+ readonly [Symbol.toStringTag]: "PrismaPromise"
844
+ channel<T extends Prisma.channel_directoriesDefaultArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.channel_directoriesDefaultArgs<ExtArgs>>): Prisma.Prisma__channel_directoriesClient<runtime.Types.Result.GetResult<Prisma.$channel_directoriesPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>
845
+ /**
846
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
847
+ * @param onfulfilled The callback to execute when the Promise is resolved.
848
+ * @param onrejected The callback to execute when the Promise is rejected.
849
+ * @returns A Promise for the completion of which ever callback is executed.
850
+ */
851
+ 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>
852
+ /**
853
+ * Attaches a callback for only the rejection of the Promise.
854
+ * @param onrejected The callback to execute when the Promise is rejected.
855
+ * @returns A Promise for the completion of the callback.
856
+ */
857
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>
858
+ /**
859
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
860
+ * resolved value cannot be modified from the callback.
861
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
862
+ * @returns A Promise for the completion of the callback.
863
+ */
864
+ finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>
865
+ }
866
+
867
+
868
+
869
+
870
+ /**
871
+ * Fields of the channel_models model
872
+ */
873
+ export interface channel_modelsFieldRefs {
874
+ readonly channel_id: Prisma.FieldRef<"channel_models", 'String'>
875
+ readonly model_id: Prisma.FieldRef<"channel_models", 'String'>
876
+ readonly variant: Prisma.FieldRef<"channel_models", 'String'>
877
+ readonly created_at: Prisma.FieldRef<"channel_models", 'DateTime'>
878
+ readonly updated_at: Prisma.FieldRef<"channel_models", 'DateTime'>
879
+ }
880
+
881
+
882
+ // Custom InputTypes
883
+ /**
884
+ * channel_models findUnique
885
+ */
886
+ export type channel_modelsFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
887
+ /**
888
+ * Select specific fields to fetch from the channel_models
889
+ */
890
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
891
+ /**
892
+ * Omit specific fields from the channel_models
893
+ */
894
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
895
+ /**
896
+ * Choose, which related nodes to fetch as well
897
+ */
898
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
899
+ /**
900
+ * Filter, which channel_models to fetch.
901
+ */
902
+ where: Prisma.channel_modelsWhereUniqueInput
903
+ }
904
+
905
+ /**
906
+ * channel_models findUniqueOrThrow
907
+ */
908
+ export type channel_modelsFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
909
+ /**
910
+ * Select specific fields to fetch from the channel_models
911
+ */
912
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
913
+ /**
914
+ * Omit specific fields from the channel_models
915
+ */
916
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
917
+ /**
918
+ * Choose, which related nodes to fetch as well
919
+ */
920
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
921
+ /**
922
+ * Filter, which channel_models to fetch.
923
+ */
924
+ where: Prisma.channel_modelsWhereUniqueInput
925
+ }
926
+
927
+ /**
928
+ * channel_models findFirst
929
+ */
930
+ export type channel_modelsFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
931
+ /**
932
+ * Select specific fields to fetch from the channel_models
933
+ */
934
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
935
+ /**
936
+ * Omit specific fields from the channel_models
937
+ */
938
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
939
+ /**
940
+ * Choose, which related nodes to fetch as well
941
+ */
942
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
943
+ /**
944
+ * Filter, which channel_models to fetch.
945
+ */
946
+ where?: Prisma.channel_modelsWhereInput
947
+ /**
948
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
949
+ *
950
+ * Determine the order of channel_models to fetch.
951
+ */
952
+ orderBy?: Prisma.channel_modelsOrderByWithRelationInput | Prisma.channel_modelsOrderByWithRelationInput[]
953
+ /**
954
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
955
+ *
956
+ * Sets the position for searching for channel_models.
957
+ */
958
+ cursor?: Prisma.channel_modelsWhereUniqueInput
959
+ /**
960
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
961
+ *
962
+ * Take `±n` channel_models from the position of the cursor.
963
+ */
964
+ take?: number
965
+ /**
966
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
967
+ *
968
+ * Skip the first `n` channel_models.
969
+ */
970
+ skip?: number
971
+ /**
972
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
973
+ *
974
+ * Filter by unique combinations of channel_models.
975
+ */
976
+ distinct?: Prisma.Channel_modelsScalarFieldEnum | Prisma.Channel_modelsScalarFieldEnum[]
977
+ }
978
+
979
+ /**
980
+ * channel_models findFirstOrThrow
981
+ */
982
+ export type channel_modelsFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
983
+ /**
984
+ * Select specific fields to fetch from the channel_models
985
+ */
986
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
987
+ /**
988
+ * Omit specific fields from the channel_models
989
+ */
990
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
991
+ /**
992
+ * Choose, which related nodes to fetch as well
993
+ */
994
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
995
+ /**
996
+ * Filter, which channel_models to fetch.
997
+ */
998
+ where?: Prisma.channel_modelsWhereInput
999
+ /**
1000
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1001
+ *
1002
+ * Determine the order of channel_models to fetch.
1003
+ */
1004
+ orderBy?: Prisma.channel_modelsOrderByWithRelationInput | Prisma.channel_modelsOrderByWithRelationInput[]
1005
+ /**
1006
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1007
+ *
1008
+ * Sets the position for searching for channel_models.
1009
+ */
1010
+ cursor?: Prisma.channel_modelsWhereUniqueInput
1011
+ /**
1012
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1013
+ *
1014
+ * Take `±n` channel_models from the position of the cursor.
1015
+ */
1016
+ take?: number
1017
+ /**
1018
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1019
+ *
1020
+ * Skip the first `n` channel_models.
1021
+ */
1022
+ skip?: number
1023
+ /**
1024
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
1025
+ *
1026
+ * Filter by unique combinations of channel_models.
1027
+ */
1028
+ distinct?: Prisma.Channel_modelsScalarFieldEnum | Prisma.Channel_modelsScalarFieldEnum[]
1029
+ }
1030
+
1031
+ /**
1032
+ * channel_models findMany
1033
+ */
1034
+ export type channel_modelsFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1035
+ /**
1036
+ * Select specific fields to fetch from the channel_models
1037
+ */
1038
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
1039
+ /**
1040
+ * Omit specific fields from the channel_models
1041
+ */
1042
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1043
+ /**
1044
+ * Choose, which related nodes to fetch as well
1045
+ */
1046
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
1047
+ /**
1048
+ * Filter, which channel_models to fetch.
1049
+ */
1050
+ where?: Prisma.channel_modelsWhereInput
1051
+ /**
1052
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
1053
+ *
1054
+ * Determine the order of channel_models to fetch.
1055
+ */
1056
+ orderBy?: Prisma.channel_modelsOrderByWithRelationInput | Prisma.channel_modelsOrderByWithRelationInput[]
1057
+ /**
1058
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
1059
+ *
1060
+ * Sets the position for listing channel_models.
1061
+ */
1062
+ cursor?: Prisma.channel_modelsWhereUniqueInput
1063
+ /**
1064
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1065
+ *
1066
+ * Take `±n` channel_models from the position of the cursor.
1067
+ */
1068
+ take?: number
1069
+ /**
1070
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
1071
+ *
1072
+ * Skip the first `n` channel_models.
1073
+ */
1074
+ skip?: number
1075
+ distinct?: Prisma.Channel_modelsScalarFieldEnum | Prisma.Channel_modelsScalarFieldEnum[]
1076
+ }
1077
+
1078
+ /**
1079
+ * channel_models create
1080
+ */
1081
+ export type channel_modelsCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1082
+ /**
1083
+ * Select specific fields to fetch from the channel_models
1084
+ */
1085
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
1086
+ /**
1087
+ * Omit specific fields from the channel_models
1088
+ */
1089
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1090
+ /**
1091
+ * Choose, which related nodes to fetch as well
1092
+ */
1093
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
1094
+ /**
1095
+ * The data needed to create a channel_models.
1096
+ */
1097
+ data: Prisma.XOR<Prisma.channel_modelsCreateInput, Prisma.channel_modelsUncheckedCreateInput>
1098
+ }
1099
+
1100
+ /**
1101
+ * channel_models createMany
1102
+ */
1103
+ export type channel_modelsCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1104
+ /**
1105
+ * The data used to create many channel_models.
1106
+ */
1107
+ data: Prisma.channel_modelsCreateManyInput | Prisma.channel_modelsCreateManyInput[]
1108
+ }
1109
+
1110
+ /**
1111
+ * channel_models createManyAndReturn
1112
+ */
1113
+ export type channel_modelsCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1114
+ /**
1115
+ * Select specific fields to fetch from the channel_models
1116
+ */
1117
+ select?: Prisma.channel_modelsSelectCreateManyAndReturn<ExtArgs> | null
1118
+ /**
1119
+ * Omit specific fields from the channel_models
1120
+ */
1121
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1122
+ /**
1123
+ * The data used to create many channel_models.
1124
+ */
1125
+ data: Prisma.channel_modelsCreateManyInput | Prisma.channel_modelsCreateManyInput[]
1126
+ /**
1127
+ * Choose, which related nodes to fetch as well
1128
+ */
1129
+ include?: Prisma.channel_modelsIncludeCreateManyAndReturn<ExtArgs> | null
1130
+ }
1131
+
1132
+ /**
1133
+ * channel_models update
1134
+ */
1135
+ export type channel_modelsUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1136
+ /**
1137
+ * Select specific fields to fetch from the channel_models
1138
+ */
1139
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
1140
+ /**
1141
+ * Omit specific fields from the channel_models
1142
+ */
1143
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1144
+ /**
1145
+ * Choose, which related nodes to fetch as well
1146
+ */
1147
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
1148
+ /**
1149
+ * The data needed to update a channel_models.
1150
+ */
1151
+ data: Prisma.XOR<Prisma.channel_modelsUpdateInput, Prisma.channel_modelsUncheckedUpdateInput>
1152
+ /**
1153
+ * Choose, which channel_models to update.
1154
+ */
1155
+ where: Prisma.channel_modelsWhereUniqueInput
1156
+ }
1157
+
1158
+ /**
1159
+ * channel_models updateMany
1160
+ */
1161
+ export type channel_modelsUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1162
+ /**
1163
+ * The data used to update channel_models.
1164
+ */
1165
+ data: Prisma.XOR<Prisma.channel_modelsUpdateManyMutationInput, Prisma.channel_modelsUncheckedUpdateManyInput>
1166
+ /**
1167
+ * Filter which channel_models to update
1168
+ */
1169
+ where?: Prisma.channel_modelsWhereInput
1170
+ /**
1171
+ * Limit how many channel_models to update.
1172
+ */
1173
+ limit?: number
1174
+ }
1175
+
1176
+ /**
1177
+ * channel_models updateManyAndReturn
1178
+ */
1179
+ export type channel_modelsUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1180
+ /**
1181
+ * Select specific fields to fetch from the channel_models
1182
+ */
1183
+ select?: Prisma.channel_modelsSelectUpdateManyAndReturn<ExtArgs> | null
1184
+ /**
1185
+ * Omit specific fields from the channel_models
1186
+ */
1187
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1188
+ /**
1189
+ * The data used to update channel_models.
1190
+ */
1191
+ data: Prisma.XOR<Prisma.channel_modelsUpdateManyMutationInput, Prisma.channel_modelsUncheckedUpdateManyInput>
1192
+ /**
1193
+ * Filter which channel_models to update
1194
+ */
1195
+ where?: Prisma.channel_modelsWhereInput
1196
+ /**
1197
+ * Limit how many channel_models to update.
1198
+ */
1199
+ limit?: number
1200
+ /**
1201
+ * Choose, which related nodes to fetch as well
1202
+ */
1203
+ include?: Prisma.channel_modelsIncludeUpdateManyAndReturn<ExtArgs> | null
1204
+ }
1205
+
1206
+ /**
1207
+ * channel_models upsert
1208
+ */
1209
+ export type channel_modelsUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1210
+ /**
1211
+ * Select specific fields to fetch from the channel_models
1212
+ */
1213
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
1214
+ /**
1215
+ * Omit specific fields from the channel_models
1216
+ */
1217
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1218
+ /**
1219
+ * Choose, which related nodes to fetch as well
1220
+ */
1221
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
1222
+ /**
1223
+ * The filter to search for the channel_models to update in case it exists.
1224
+ */
1225
+ where: Prisma.channel_modelsWhereUniqueInput
1226
+ /**
1227
+ * In case the channel_models found by the `where` argument doesn't exist, create a new channel_models with this data.
1228
+ */
1229
+ create: Prisma.XOR<Prisma.channel_modelsCreateInput, Prisma.channel_modelsUncheckedCreateInput>
1230
+ /**
1231
+ * In case the channel_models was found with the provided `where` argument, update it with this data.
1232
+ */
1233
+ update: Prisma.XOR<Prisma.channel_modelsUpdateInput, Prisma.channel_modelsUncheckedUpdateInput>
1234
+ }
1235
+
1236
+ /**
1237
+ * channel_models delete
1238
+ */
1239
+ export type channel_modelsDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1240
+ /**
1241
+ * Select specific fields to fetch from the channel_models
1242
+ */
1243
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
1244
+ /**
1245
+ * Omit specific fields from the channel_models
1246
+ */
1247
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1248
+ /**
1249
+ * Choose, which related nodes to fetch as well
1250
+ */
1251
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
1252
+ /**
1253
+ * Filter which channel_models to delete.
1254
+ */
1255
+ where: Prisma.channel_modelsWhereUniqueInput
1256
+ }
1257
+
1258
+ /**
1259
+ * channel_models deleteMany
1260
+ */
1261
+ export type channel_modelsDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1262
+ /**
1263
+ * Filter which channel_models to delete
1264
+ */
1265
+ where?: Prisma.channel_modelsWhereInput
1266
+ /**
1267
+ * Limit how many channel_models to delete.
1268
+ */
1269
+ limit?: number
1270
+ }
1271
+
1272
+ /**
1273
+ * channel_models without action
1274
+ */
1275
+ export type channel_modelsDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
1276
+ /**
1277
+ * Select specific fields to fetch from the channel_models
1278
+ */
1279
+ select?: Prisma.channel_modelsSelect<ExtArgs> | null
1280
+ /**
1281
+ * Omit specific fields from the channel_models
1282
+ */
1283
+ omit?: Prisma.channel_modelsOmit<ExtArgs> | null
1284
+ /**
1285
+ * Choose, which related nodes to fetch as well
1286
+ */
1287
+ include?: Prisma.channel_modelsInclude<ExtArgs> | null
1288
+ }