monday-cli 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (479) hide show
  1. package/CHANGELOG.md +675 -2
  2. package/README.md +223 -31
  3. package/dist/api/assets.d.ts +326 -0
  4. package/dist/api/assets.d.ts.map +1 -0
  5. package/dist/api/assets.js +519 -0
  6. package/dist/api/assets.js.map +1 -0
  7. package/dist/api/board-favorites.d.ts +329 -0
  8. package/dist/api/board-favorites.d.ts.map +1 -0
  9. package/dist/api/board-favorites.js +353 -0
  10. package/dist/api/board-favorites.js.map +1 -0
  11. package/dist/api/board-mutation-result.d.ts +9 -5
  12. package/dist/api/board-mutation-result.d.ts.map +1 -1
  13. package/dist/api/board-mutation-result.js +9 -5
  14. package/dist/api/board-mutation-result.js.map +1 -1
  15. package/dist/api/board-relation-validation.d.ts +161 -0
  16. package/dist/api/board-relation-validation.d.ts.map +1 -0
  17. package/dist/api/board-relation-validation.js +317 -0
  18. package/dist/api/board-relation-validation.js.map +1 -0
  19. package/dist/api/cache.d.ts +14 -5
  20. package/dist/api/cache.d.ts.map +1 -1
  21. package/dist/api/cache.js +8 -10
  22. package/dist/api/cache.js.map +1 -1
  23. package/dist/api/column-mapping.js +2 -2
  24. package/dist/api/column-mapping.js.map +1 -1
  25. package/dist/api/column-mutation-result.d.ts +9 -5
  26. package/dist/api/column-mutation-result.d.ts.map +1 -1
  27. package/dist/api/column-mutation-result.js +9 -5
  28. package/dist/api/column-mutation-result.js.map +1 -1
  29. package/dist/api/column-types.d.ts +37 -14
  30. package/dist/api/column-types.d.ts.map +1 -1
  31. package/dist/api/column-types.js +47 -6
  32. package/dist/api/column-types.js.map +1 -1
  33. package/dist/api/column-values.d.ts +234 -31
  34. package/dist/api/column-values.d.ts.map +1 -1
  35. package/dist/api/column-values.js +560 -124
  36. package/dist/api/column-values.js.map +1 -1
  37. package/dist/api/cross-board-search.d.ts +501 -0
  38. package/dist/api/cross-board-search.d.ts.map +1 -0
  39. package/dist/api/cross-board-search.js +547 -0
  40. package/dist/api/cross-board-search.js.map +1 -0
  41. package/dist/api/dev-conventions.d.ts +1038 -0
  42. package/dist/api/dev-conventions.d.ts.map +1 -0
  43. package/dist/api/dev-conventions.js +1556 -0
  44. package/dist/api/dev-conventions.js.map +1 -0
  45. package/dist/api/documents.d.ts +519 -0
  46. package/dist/api/documents.d.ts.map +1 -0
  47. package/dist/api/documents.js +586 -0
  48. package/dist/api/documents.js.map +1 -0
  49. package/dist/api/dry-run.d.ts +32 -5
  50. package/dist/api/dry-run.d.ts.map +1 -1
  51. package/dist/api/dry-run.js +149 -32
  52. package/dist/api/dry-run.js.map +1 -1
  53. package/dist/api/errors.d.ts.map +1 -1
  54. package/dist/api/errors.js +28 -7
  55. package/dist/api/errors.js.map +1 -1
  56. package/dist/api/group-mutation-result.d.ts +9 -5
  57. package/dist/api/group-mutation-result.d.ts.map +1 -1
  58. package/dist/api/group-mutation-result.js +9 -5
  59. package/dist/api/group-mutation-result.js.map +1 -1
  60. package/dist/api/item-history-projection.d.ts +919 -0
  61. package/dist/api/item-history-projection.d.ts.map +1 -0
  62. package/dist/api/item-history-projection.js +1104 -0
  63. package/dist/api/item-history-projection.js.map +1 -0
  64. package/dist/api/item-mutation-execute.d.ts +82 -0
  65. package/dist/api/item-mutation-execute.d.ts.map +1 -0
  66. package/dist/api/item-mutation-execute.js +199 -0
  67. package/dist/api/item-mutation-execute.js.map +1 -0
  68. package/dist/api/item-watch.d.ts +263 -0
  69. package/dist/api/item-watch.d.ts.map +1 -0
  70. package/dist/api/item-watch.js +709 -0
  71. package/dist/api/item-watch.js.map +1 -0
  72. package/dist/api/multipart-transport.d.ts +223 -0
  73. package/dist/api/multipart-transport.d.ts.map +1 -0
  74. package/dist/api/multipart-transport.js +274 -0
  75. package/dist/api/multipart-transport.js.map +1 -0
  76. package/dist/api/notifications.d.ts +156 -0
  77. package/dist/api/notifications.d.ts.map +1 -0
  78. package/dist/api/notifications.js +215 -0
  79. package/dist/api/notifications.js.map +1 -0
  80. package/dist/api/oauth-test-helper.d.ts +64 -0
  81. package/dist/api/oauth-test-helper.d.ts.map +1 -0
  82. package/dist/api/oauth-test-helper.js +179 -0
  83. package/dist/api/oauth-test-helper.js.map +1 -0
  84. package/dist/api/oauth.d.ts +198 -0
  85. package/dist/api/oauth.d.ts.map +1 -0
  86. package/dist/api/oauth.js +471 -0
  87. package/dist/api/oauth.js.map +1 -0
  88. package/dist/api/parallel-dispatch.d.ts +155 -0
  89. package/dist/api/parallel-dispatch.d.ts.map +1 -0
  90. package/dist/api/parallel-dispatch.js +243 -0
  91. package/dist/api/parallel-dispatch.js.map +1 -0
  92. package/dist/api/partial-success-bulk.d.ts +480 -0
  93. package/dist/api/partial-success-bulk.d.ts.map +1 -0
  94. package/dist/api/partial-success-bulk.js +436 -0
  95. package/dist/api/partial-success-bulk.js.map +1 -0
  96. package/dist/api/partial-success-mutation.d.ts +13 -1
  97. package/dist/api/partial-success-mutation.d.ts.map +1 -1
  98. package/dist/api/partial-success-mutation.js +5 -1
  99. package/dist/api/partial-success-mutation.js.map +1 -1
  100. package/dist/api/people.d.ts +54 -1
  101. package/dist/api/people.d.ts.map +1 -1
  102. package/dist/api/people.js +27 -3
  103. package/dist/api/people.js.map +1 -1
  104. package/dist/api/probes.d.ts +487 -0
  105. package/dist/api/probes.d.ts.map +1 -0
  106. package/dist/api/probes.js +881 -0
  107. package/dist/api/probes.js.map +1 -0
  108. package/dist/api/raw-document.d.ts.map +1 -1
  109. package/dist/api/raw-document.js +2 -2
  110. package/dist/api/raw-document.js.map +1 -1
  111. package/dist/api/raw-write.d.ts +12 -4
  112. package/dist/api/raw-write.d.ts.map +1 -1
  113. package/dist/api/raw-write.js +32 -14
  114. package/dist/api/raw-write.js.map +1 -1
  115. package/dist/api/resolution-context.d.ts +23 -11
  116. package/dist/api/resolution-context.d.ts.map +1 -1
  117. package/dist/api/resolution-context.js +53 -12
  118. package/dist/api/resolution-context.js.map +1 -1
  119. package/dist/api/resolution-pass.d.ts +30 -1
  120. package/dist/api/resolution-pass.d.ts.map +1 -1
  121. package/dist/api/resolution-pass.js +36 -1
  122. package/dist/api/resolution-pass.js.map +1 -1
  123. package/dist/api/resolve-client.d.ts +22 -0
  124. package/dist/api/resolve-client.d.ts.map +1 -1
  125. package/dist/api/resolve-client.js +9 -1
  126. package/dist/api/resolve-client.js.map +1 -1
  127. package/dist/api/response-root.d.ts +92 -46
  128. package/dist/api/response-root.d.ts.map +1 -1
  129. package/dist/api/response-root.js +93 -41
  130. package/dist/api/response-root.js.map +1 -1
  131. package/dist/api/tag-directory.d.ts +154 -0
  132. package/dist/api/tag-directory.d.ts.map +1 -0
  133. package/dist/api/tag-directory.js +325 -0
  134. package/dist/api/tag-directory.js.map +1 -0
  135. package/dist/api/time-tracking.d.ts +165 -0
  136. package/dist/api/time-tracking.d.ts.map +1 -0
  137. package/dist/api/time-tracking.js +135 -0
  138. package/dist/api/time-tracking.js.map +1 -0
  139. package/dist/api/transport.js +3 -3
  140. package/dist/api/transport.js.map +1 -1
  141. package/dist/api/usage.d.ts +190 -0
  142. package/dist/api/usage.d.ts.map +1 -0
  143. package/dist/api/usage.js +194 -0
  144. package/dist/api/usage.js.map +1 -0
  145. package/dist/api/users-fan-out-mutation.d.ts.map +1 -1
  146. package/dist/api/users-fan-out-mutation.js +10 -5
  147. package/dist/api/users-fan-out-mutation.js.map +1 -1
  148. package/dist/api/webhooks.d.ts +357 -0
  149. package/dist/api/webhooks.d.ts.map +1 -0
  150. package/dist/api/webhooks.js +333 -0
  151. package/dist/api/webhooks.js.map +1 -0
  152. package/dist/cli/envelope-out.d.ts +18 -1
  153. package/dist/cli/envelope-out.d.ts.map +1 -1
  154. package/dist/cli/envelope-out.js +16 -2
  155. package/dist/cli/envelope-out.js.map +1 -1
  156. package/dist/cli/program.d.ts.map +1 -1
  157. package/dist/cli/program.js +120 -1
  158. package/dist/cli/program.js.map +1 -1
  159. package/dist/cli/run.d.ts +32 -0
  160. package/dist/cli/run.d.ts.map +1 -1
  161. package/dist/cli/run.js +3 -0
  162. package/dist/cli/run.js.map +1 -1
  163. package/dist/commands/account/tags.d.ts +37 -0
  164. package/dist/commands/account/tags.d.ts.map +1 -0
  165. package/dist/commands/account/tags.js +84 -0
  166. package/dist/commands/account/tags.js.map +1 -0
  167. package/dist/commands/auth/login.d.ts +14 -0
  168. package/dist/commands/auth/login.d.ts.map +1 -0
  169. package/dist/commands/auth/login.js +314 -0
  170. package/dist/commands/auth/login.js.map +1 -0
  171. package/dist/commands/auth/logout.d.ts +28 -0
  172. package/dist/commands/auth/logout.d.ts.map +1 -0
  173. package/dist/commands/auth/logout.js +94 -0
  174. package/dist/commands/auth/logout.js.map +1 -0
  175. package/dist/commands/board/archive.d.ts.map +1 -1
  176. package/dist/commands/board/archive.js +14 -14
  177. package/dist/commands/board/archive.js.map +1 -1
  178. package/dist/commands/board/column-create.d.ts +9 -8
  179. package/dist/commands/board/column-create.d.ts.map +1 -1
  180. package/dist/commands/board/column-create.js +61 -51
  181. package/dist/commands/board/column-create.js.map +1 -1
  182. package/dist/commands/board/column-delete.d.ts.map +1 -1
  183. package/dist/commands/board/column-delete.js +15 -16
  184. package/dist/commands/board/column-delete.js.map +1 -1
  185. package/dist/commands/board/column-update.d.ts.map +1 -1
  186. package/dist/commands/board/column-update.js +23 -22
  187. package/dist/commands/board/column-update.js.map +1 -1
  188. package/dist/commands/board/create.d.ts.map +1 -1
  189. package/dist/commands/board/create.js +14 -17
  190. package/dist/commands/board/create.js.map +1 -1
  191. package/dist/commands/board/delete.d.ts.map +1 -1
  192. package/dist/commands/board/delete.js +12 -15
  193. package/dist/commands/board/delete.js.map +1 -1
  194. package/dist/commands/board/describe.d.ts.map +1 -1
  195. package/dist/commands/board/describe.js +30 -0
  196. package/dist/commands/board/describe.js.map +1 -1
  197. package/dist/commands/board/duplicate.d.ts.map +1 -1
  198. package/dist/commands/board/duplicate.js +12 -13
  199. package/dist/commands/board/duplicate.js.map +1 -1
  200. package/dist/commands/board/favorites.d.ts +33 -0
  201. package/dist/commands/board/favorites.d.ts.map +1 -0
  202. package/dist/commands/board/favorites.js +74 -0
  203. package/dist/commands/board/favorites.js.map +1 -0
  204. package/dist/commands/board/find.d.ts +1 -1
  205. package/dist/commands/board/group-archive.d.ts.map +1 -1
  206. package/dist/commands/board/group-archive.js +12 -16
  207. package/dist/commands/board/group-archive.js.map +1 -1
  208. package/dist/commands/board/group-create.d.ts.map +1 -1
  209. package/dist/commands/board/group-create.js +9 -19
  210. package/dist/commands/board/group-create.js.map +1 -1
  211. package/dist/commands/board/group-delete.d.ts.map +1 -1
  212. package/dist/commands/board/group-delete.js +12 -16
  213. package/dist/commands/board/group-delete.js.map +1 -1
  214. package/dist/commands/board/group-duplicate.d.ts.map +1 -1
  215. package/dist/commands/board/group-duplicate.js +12 -16
  216. package/dist/commands/board/group-duplicate.js.map +1 -1
  217. package/dist/commands/board/group-update.d.ts.map +1 -1
  218. package/dist/commands/board/group-update.js +12 -11
  219. package/dist/commands/board/group-update.js.map +1 -1
  220. package/dist/commands/board/list.d.ts +1 -1
  221. package/dist/commands/board/update.d.ts.map +1 -1
  222. package/dist/commands/board/update.js +16 -11
  223. package/dist/commands/board/update.js.map +1 -1
  224. package/dist/commands/cache/list.d.ts +2 -0
  225. package/dist/commands/cache/list.d.ts.map +1 -1
  226. package/dist/commands/cache/list.js +2 -2
  227. package/dist/commands/cache/list.js.map +1 -1
  228. package/dist/commands/completion.d.ts +188 -0
  229. package/dist/commands/completion.d.ts.map +1 -0
  230. package/dist/commands/completion.js +418 -0
  231. package/dist/commands/completion.js.map +1 -0
  232. package/dist/commands/dev/_shared.d.ts +40 -0
  233. package/dist/commands/dev/_shared.d.ts.map +1 -0
  234. package/dist/commands/dev/_shared.js +104 -0
  235. package/dist/commands/dev/_shared.js.map +1 -0
  236. package/dist/commands/dev/configure.d.ts +36 -0
  237. package/dist/commands/dev/configure.d.ts.map +1 -0
  238. package/dist/commands/dev/configure.js +145 -0
  239. package/dist/commands/dev/configure.js.map +1 -0
  240. package/dist/commands/dev/discover.d.ts +34 -0
  241. package/dist/commands/dev/discover.d.ts.map +1 -0
  242. package/dist/commands/dev/discover.js +117 -0
  243. package/dist/commands/dev/discover.js.map +1 -0
  244. package/dist/commands/dev/doctor.d.ts +39 -0
  245. package/dist/commands/dev/doctor.d.ts.map +1 -0
  246. package/dist/commands/dev/doctor.js +91 -0
  247. package/dist/commands/dev/doctor.js.map +1 -0
  248. package/dist/commands/dev/epic/items.d.ts +24 -0
  249. package/dist/commands/dev/epic/items.d.ts.map +1 -0
  250. package/dist/commands/dev/epic/items.js +103 -0
  251. package/dist/commands/dev/epic/items.js.map +1 -0
  252. package/dist/commands/dev/epic/list.d.ts +36 -0
  253. package/dist/commands/dev/epic/list.d.ts.map +1 -0
  254. package/dist/commands/dev/epic/list.js +120 -0
  255. package/dist/commands/dev/epic/list.js.map +1 -0
  256. package/dist/commands/dev/release/list.d.ts +21 -0
  257. package/dist/commands/dev/release/list.d.ts.map +1 -0
  258. package/dist/commands/dev/release/list.js +73 -0
  259. package/dist/commands/dev/release/list.js.map +1 -0
  260. package/dist/commands/dev/sprint/current.d.ts +24 -0
  261. package/dist/commands/dev/sprint/current.d.ts.map +1 -0
  262. package/dist/commands/dev/sprint/current.js +90 -0
  263. package/dist/commands/dev/sprint/current.js.map +1 -0
  264. package/dist/commands/dev/sprint/items.d.ts +34 -0
  265. package/dist/commands/dev/sprint/items.d.ts.map +1 -0
  266. package/dist/commands/dev/sprint/items.js +118 -0
  267. package/dist/commands/dev/sprint/items.js.map +1 -0
  268. package/dist/commands/dev/sprint/list.d.ts +41 -0
  269. package/dist/commands/dev/sprint/list.d.ts.map +1 -0
  270. package/dist/commands/dev/sprint/list.js +104 -0
  271. package/dist/commands/dev/sprint/list.js.map +1 -0
  272. package/dist/commands/dev/task/block.d.ts +29 -0
  273. package/dist/commands/dev/task/block.d.ts.map +1 -0
  274. package/dist/commands/dev/task/block.js +106 -0
  275. package/dist/commands/dev/task/block.js.map +1 -0
  276. package/dist/commands/dev/task/done.d.ts +30 -0
  277. package/dist/commands/dev/task/done.d.ts.map +1 -0
  278. package/dist/commands/dev/task/done.js +113 -0
  279. package/dist/commands/dev/task/done.js.map +1 -0
  280. package/dist/commands/dev/task/list.d.ts +42 -0
  281. package/dist/commands/dev/task/list.d.ts.map +1 -0
  282. package/dist/commands/dev/task/list.js +227 -0
  283. package/dist/commands/dev/task/list.js.map +1 -0
  284. package/dist/commands/dev/task/start.d.ts +29 -0
  285. package/dist/commands/dev/task/start.d.ts.map +1 -0
  286. package/dist/commands/dev/task/start.js +90 -0
  287. package/dist/commands/dev/task/start.js.map +1 -0
  288. package/dist/commands/doc/get.d.ts +46 -0
  289. package/dist/commands/doc/get.d.ts.map +1 -0
  290. package/dist/commands/doc/get.js +95 -0
  291. package/dist/commands/doc/get.js.map +1 -0
  292. package/dist/commands/doc/list.d.ts +83 -0
  293. package/dist/commands/doc/list.d.ts.map +1 -0
  294. package/dist/commands/doc/list.js +248 -0
  295. package/dist/commands/doc/list.js.map +1 -0
  296. package/dist/commands/emit.d.ts.map +1 -1
  297. package/dist/commands/emit.js +5 -3
  298. package/dist/commands/emit.js.map +1 -1
  299. package/dist/commands/index.d.ts.map +1 -1
  300. package/dist/commands/index.js +141 -0
  301. package/dist/commands/index.js.map +1 -1
  302. package/dist/commands/item/archive.d.ts.map +1 -1
  303. package/dist/commands/item/archive.js +11 -0
  304. package/dist/commands/item/archive.js.map +1 -1
  305. package/dist/commands/item/clear.d.ts.map +1 -1
  306. package/dist/commands/item/clear.js +15 -0
  307. package/dist/commands/item/clear.js.map +1 -1
  308. package/dist/commands/item/create.d.ts.map +1 -1
  309. package/dist/commands/item/create.js +41 -8
  310. package/dist/commands/item/create.js.map +1 -1
  311. package/dist/commands/item/delete.d.ts.map +1 -1
  312. package/dist/commands/item/delete.js +11 -0
  313. package/dist/commands/item/delete.js.map +1 -1
  314. package/dist/commands/item/duplicate.d.ts.map +1 -1
  315. package/dist/commands/item/duplicate.js +12 -0
  316. package/dist/commands/item/duplicate.js.map +1 -1
  317. package/dist/commands/item/history.d.ts +60 -0
  318. package/dist/commands/item/history.d.ts.map +1 -0
  319. package/dist/commands/item/history.js +309 -0
  320. package/dist/commands/item/history.js.map +1 -0
  321. package/dist/commands/item/list.d.ts.map +1 -1
  322. package/dist/commands/item/list.js +16 -13
  323. package/dist/commands/item/list.js.map +1 -1
  324. package/dist/commands/item/move.d.ts.map +1 -1
  325. package/dist/commands/item/move.js +41 -7
  326. package/dist/commands/item/move.js.map +1 -1
  327. package/dist/commands/item/search.d.ts +99 -15
  328. package/dist/commands/item/search.d.ts.map +1 -1
  329. package/dist/commands/item/search.js +480 -36
  330. package/dist/commands/item/search.js.map +1 -1
  331. package/dist/commands/item/set.d.ts.map +1 -1
  332. package/dist/commands/item/set.js +52 -8
  333. package/dist/commands/item/set.js.map +1 -1
  334. package/dist/commands/item/time-track/start.d.ts +61 -0
  335. package/dist/commands/item/time-track/start.d.ts.map +1 -0
  336. package/dist/commands/item/time-track/start.js +138 -0
  337. package/dist/commands/item/time-track/start.js.map +1 -0
  338. package/dist/commands/item/time-track/stop.d.ts +32 -0
  339. package/dist/commands/item/time-track/stop.d.ts.map +1 -0
  340. package/dist/commands/item/time-track/stop.js +97 -0
  341. package/dist/commands/item/time-track/stop.js.map +1 -0
  342. package/dist/commands/item/update.d.ts +2 -0
  343. package/dist/commands/item/update.d.ts.map +1 -1
  344. package/dist/commands/item/update.js +164 -113
  345. package/dist/commands/item/update.js.map +1 -1
  346. package/dist/commands/item/upload.d.ts +108 -0
  347. package/dist/commands/item/upload.d.ts.map +1 -0
  348. package/dist/commands/item/upload.js +370 -0
  349. package/dist/commands/item/upload.js.map +1 -0
  350. package/dist/commands/item/upsert.d.ts.map +1 -1
  351. package/dist/commands/item/upsert.js +48 -1
  352. package/dist/commands/item/upsert.js.map +1 -1
  353. package/dist/commands/item/watch.d.ts +90 -0
  354. package/dist/commands/item/watch.d.ts.map +1 -0
  355. package/dist/commands/item/watch.js +342 -0
  356. package/dist/commands/item/watch.js.map +1 -0
  357. package/dist/commands/notification/send.d.ts +60 -0
  358. package/dist/commands/notification/send.d.ts.map +1 -0
  359. package/dist/commands/notification/send.js +147 -0
  360. package/dist/commands/notification/send.js.map +1 -0
  361. package/dist/commands/parse-argv.d.ts.map +1 -1
  362. package/dist/commands/parse-argv.js +14 -4
  363. package/dist/commands/parse-argv.js.map +1 -1
  364. package/dist/commands/raw/index.d.ts.map +1 -1
  365. package/dist/commands/raw/index.js +13 -15
  366. package/dist/commands/raw/index.js.map +1 -1
  367. package/dist/commands/run-by-id-lookup.d.ts.map +1 -1
  368. package/dist/commands/run-by-id-lookup.js +2 -2
  369. package/dist/commands/run-by-id-lookup.js.map +1 -1
  370. package/dist/commands/schema/index.d.ts +2 -0
  371. package/dist/commands/schema/index.d.ts.map +1 -1
  372. package/dist/commands/status.d.ts +120 -0
  373. package/dist/commands/status.d.ts.map +1 -0
  374. package/dist/commands/status.js +365 -0
  375. package/dist/commands/status.js.map +1 -0
  376. package/dist/commands/update/body-source.d.ts.map +1 -1
  377. package/dist/commands/update/body-source.js +2 -2
  378. package/dist/commands/update/body-source.js.map +1 -1
  379. package/dist/commands/update/create.d.ts +2 -3
  380. package/dist/commands/update/create.d.ts.map +1 -1
  381. package/dist/commands/update/create.js +15 -3
  382. package/dist/commands/update/create.js.map +1 -1
  383. package/dist/commands/update/delete.d.ts.map +1 -1
  384. package/dist/commands/update/delete.js +11 -0
  385. package/dist/commands/update/delete.js.map +1 -1
  386. package/dist/commands/update/edit.d.ts.map +1 -1
  387. package/dist/commands/update/edit.js +11 -0
  388. package/dist/commands/update/edit.js.map +1 -1
  389. package/dist/commands/update/list.d.ts.map +1 -1
  390. package/dist/commands/update/list.js +15 -12
  391. package/dist/commands/update/list.js.map +1 -1
  392. package/dist/commands/update/reply.d.ts.map +1 -1
  393. package/dist/commands/update/reply.js +11 -0
  394. package/dist/commands/update/reply.js.map +1 -1
  395. package/dist/commands/update/toggle.d.ts.map +1 -1
  396. package/dist/commands/update/toggle.js +13 -0
  397. package/dist/commands/update/toggle.js.map +1 -1
  398. package/dist/commands/update/upload.d.ts +69 -0
  399. package/dist/commands/update/upload.d.ts.map +1 -0
  400. package/dist/commands/update/upload.js +235 -0
  401. package/dist/commands/update/upload.js.map +1 -0
  402. package/dist/commands/usage.d.ts +58 -0
  403. package/dist/commands/usage.d.ts.map +1 -0
  404. package/dist/commands/usage.js +94 -0
  405. package/dist/commands/usage.js.map +1 -0
  406. package/dist/commands/webhook/create.d.ts +74 -0
  407. package/dist/commands/webhook/create.d.ts.map +1 -0
  408. package/dist/commands/webhook/create.js +150 -0
  409. package/dist/commands/webhook/create.js.map +1 -0
  410. package/dist/commands/webhook/delete.d.ts +46 -0
  411. package/dist/commands/webhook/delete.d.ts.map +1 -0
  412. package/dist/commands/webhook/delete.js +141 -0
  413. package/dist/commands/webhook/delete.js.map +1 -0
  414. package/dist/commands/webhook/list.d.ts +23 -0
  415. package/dist/commands/webhook/list.d.ts.map +1 -0
  416. package/dist/commands/webhook/list.js +68 -0
  417. package/dist/commands/webhook/list.js.map +1 -0
  418. package/dist/commands/workspace/create.d.ts.map +1 -1
  419. package/dist/commands/workspace/create.js +16 -0
  420. package/dist/commands/workspace/create.js.map +1 -1
  421. package/dist/commands/workspace/delete.d.ts.map +1 -1
  422. package/dist/commands/workspace/delete.js +13 -13
  423. package/dist/commands/workspace/delete.js.map +1 -1
  424. package/dist/commands/workspace/list.d.ts +1 -1
  425. package/dist/commands/workspace/update.d.ts.map +1 -1
  426. package/dist/commands/workspace/update.js +15 -15
  427. package/dist/commands/workspace/update.js.map +1 -1
  428. package/dist/config/credentials.d.ts +189 -0
  429. package/dist/config/credentials.d.ts.map +1 -0
  430. package/dist/config/credentials.js +300 -0
  431. package/dist/config/credentials.js.map +1 -0
  432. package/dist/config/profiles.d.ts +125 -0
  433. package/dist/config/profiles.d.ts.map +1 -0
  434. package/dist/config/profiles.js +227 -0
  435. package/dist/config/profiles.js.map +1 -0
  436. package/dist/types/global-flags.d.ts +1 -1
  437. package/dist/types/global-flags.d.ts.map +1 -1
  438. package/dist/types/global-flags.js +28 -16
  439. package/dist/types/global-flags.js.map +1 -1
  440. package/dist/types/ids.d.ts +4 -0
  441. package/dist/types/ids.d.ts.map +1 -1
  442. package/dist/types/ids.js +12 -3
  443. package/dist/types/ids.js.map +1 -1
  444. package/dist/utils/errors.d.ts +57 -3
  445. package/dist/utils/errors.d.ts.map +1 -1
  446. package/dist/utils/errors.js +69 -2
  447. package/dist/utils/errors.js.map +1 -1
  448. package/dist/utils/fs.d.ts +35 -0
  449. package/dist/utils/fs.d.ts.map +1 -0
  450. package/dist/utils/fs.js +36 -0
  451. package/dist/utils/fs.js.map +1 -0
  452. package/dist/utils/json.d.ts +60 -0
  453. package/dist/utils/json.d.ts.map +1 -0
  454. package/dist/utils/json.js +86 -0
  455. package/dist/utils/json.js.map +1 -0
  456. package/dist/utils/mime.d.ts +24 -0
  457. package/dist/utils/mime.d.ts.map +1 -0
  458. package/dist/utils/mime.js +64 -0
  459. package/dist/utils/mime.js.map +1 -0
  460. package/dist/utils/output/envelope.d.ts +30 -0
  461. package/dist/utils/output/envelope.d.ts.map +1 -1
  462. package/dist/utils/output/envelope.js +26 -0
  463. package/dist/utils/output/envelope.js.map +1 -1
  464. package/dist/utils/output/ndjson.d.ts +90 -3
  465. package/dist/utils/output/ndjson.d.ts.map +1 -1
  466. package/dist/utils/output/ndjson.js +33 -0
  467. package/dist/utils/output/ndjson.js.map +1 -1
  468. package/dist/utils/redact.d.ts.map +1 -1
  469. package/dist/utils/redact.js +31 -0
  470. package/dist/utils/redact.js.map +1 -1
  471. package/dist/utils/signal.d.ts +42 -0
  472. package/dist/utils/signal.d.ts.map +1 -0
  473. package/dist/utils/signal.js +45 -0
  474. package/dist/utils/signal.js.map +1 -0
  475. package/package.json +2 -1
  476. package/dist/commands/account/client-helper.d.ts +0 -37
  477. package/dist/commands/account/client-helper.d.ts.map +0 -1
  478. package/dist/commands/account/client-helper.js +0 -55
  479. package/dist/commands/account/client-helper.js.map +0 -1
@@ -0,0 +1,919 @@
1
+ /**
2
+ * Per-item activity-log + comment-thread projection for the v0.3-M24
3
+ * `monday item history <iid>` verb (`cli-design.md` §13 v0.3 entry).
4
+ *
5
+ * **What `monday item history` answers:** "show me every change +
6
+ * comment on this item, chronologically, in one stream" — without
7
+ * the agent walking `activity_logs` AND `updates` separately and
8
+ * folding by `created_at` by hand. Two Monday surfaces feed the
9
+ * stream:
10
+ *
11
+ * 1. `boards(ids:) { activity_logs(item_ids:, from:, to:,
12
+ * page:, limit:) }` — Monday's per-board activity log,
13
+ * filtered to the target item via `item_ids` AND additionally
14
+ * filtered WALKER-SIDE (post-fetch, before projection) to
15
+ * `entity = 'pulse'` (the `item_ids` arg ALONE does NOT
16
+ * exclude board-scoped events; empirical-probe finding
17
+ * 2026-05-11). Page-numbered pagination (Monday's native
18
+ * shape; `--activity-logs-page <n>` / `--limit <n>` flags
19
+ * surface it).
20
+ * 2. `items(ids:) { updates(limit:, page:) { ... replies { ...
21
+ * } } }` — Monday's comment thread (top-level updates +
22
+ * nested replies). Projected into synthesized
23
+ * `update_posted` + `update_replied` event-objects so the
24
+ * merged stream is uniform.
25
+ *
26
+ * The merge projector orders the unified stream by `created_at`
27
+ * ascending; ties break by `id` for deterministic output across
28
+ * runs.
29
+ *
30
+ * **Decision 2 closure** (`a1f3025`, M24-prep empirical probe pass
31
+ * 2026-05-11; full findings at v0.3-plan §8 Decision 2 closure).
32
+ * Three load-bearing findings from the live probe against a real
33
+ * workspace + 19 captured `activity_logs` rows on a production
34
+ * board:
35
+ *
36
+ * - **Schema field name is `event`, NOT `kind`.** Monday's
37
+ * `ActivityLogType` exposes 7 fields per the introspection
38
+ * probe (all NON_NULL String): `account_id`, `created_at`,
39
+ * `data`, `entity`, `event`, `id`, `user_id`. The v0.3-plan
40
+ * §3 M24 description used "kind" as the synonym; the projector
41
+ * keeps `kind` as the CLI agent-facing discriminator (domain-
42
+ * neutral) but maps it 1:1 from the wire's `event` slot.
43
+ * - **Observed event taxonomy (production data; 19 rows on one
44
+ * board over 30 days; NOT exhaustive):** `create_column`
45
+ * (10×), `update_column_value` (4×; the dominant ITEM-SCOPED
46
+ * event), `create_group` (2×), `board_workspace_id_changed`
47
+ * (1×), `update_board_name` (1×), `update_board_nickname`
48
+ * (1×). The `update_column_value` payload carries `column_id`
49
+ * + `column_type` + `value` + `previous_value` + `textual_value`
50
+ * + `pulse_id` + `pulse_name`; `previous_value` is sometimes
51
+ * `{}` for first-set events (decoded defensively as
52
+ * "previously-unset" — preserved as `{}` on the projected
53
+ * event so agents distinguish "first set" from "no prior
54
+ * value tracked"). The runtime projector applies one level
55
+ * of nested-JSON unwrap on `value` / `previous_value` so the
56
+ * before/after slots carry structured payloads (e.g.
57
+ * `{label, index}` for status, ISO string for date) rather
58
+ * than opaque JSON-string scalars.
59
+ * - **`entity` field discriminates item-scoped from board-scoped
60
+ * events.** Observed values: `pulse` (4×; item-scoped) and
61
+ * `board` (15×; board-scoped). The walker filters
62
+ * `entity = 'pulse'` to drop board-level noise (column
63
+ * additions, group creation, board renames) that aren't part
64
+ * of the item's history. **The `item_ids` filter alone is
65
+ * INSUFFICIENT** — passing it does NOT exclude board-scoped
66
+ * events from the response.
67
+ *
68
+ * **Eventual-consistency caveat (carry to cli-design §13 v0.3
69
+ * entry).** Monday's `activity_logs` has an empirically-measured
70
+ * propagation lag **>30s** on freshly-edited boards. The verb's
71
+ * help text MUST NOT promise immediate-history for newly-modified
72
+ * items; agents polling `monday item history` after a write should
73
+ * wait at least 30s before expecting their write to surface.
74
+ *
75
+ * **Update + Reply shapes (also pinned by the probe).** `Update`
76
+ * carries 16 fields per introspection; the projector projects only
77
+ * the load-bearing ones: `id` (NON_NULL ID), `body` (NON_NULL
78
+ * String), `text_body` (nullable String), `created_at` (nullable
79
+ * `Date`), `creator_id` (nullable String), `replies` (LIST[Reply!]
80
+ * with the list itself nullable; items non-null). `Reply` carries
81
+ * its OWN `kind: String!` field — separate taxonomy from
82
+ * `activity_logs.event` — and the projector surfaces it under the
83
+ * synthesized `update_replied` event's `reply_kind` slot.
84
+ *
85
+ * **Runtime composition.** {@link fetchItemHistory} drives the
86
+ * two-source walker; {@link projectActivityLogRow},
87
+ * {@link projectUpdateRow}, and {@link projectReplyRow} are the
88
+ * per-row projectors (the activity-log projector reads the wire
89
+ * `data` JSON, dispatches on `event`, and applies a one-level
90
+ * nested-JSON unwrap on `update_column_value`'s `value` /
91
+ * `previous_value` so agents see the structured payload — e.g.
92
+ * `{label, index}` for status, ISO string for date — rather than
93
+ * an opaque JSON-string). The walker filters
94
+ * `entity === ITEM_SCOPED_ENTITY` walker-side (single source of
95
+ * truth per Decision 2 closure; projector does NOT re-filter).
96
+ *
97
+ * **Streaming reuse.** Per the v0.3-plan §3 M24 deliverable, the
98
+ * verb reuses `startNdjsonStream` (R52) when `--stream` is on; the
99
+ * trailer meta carries `{has_more, total_returned, complexity,
100
+ * source}` per cli-design §6.3 + the symmetric page-numbered
101
+ * per-source `activity_logs.last_page` + `updates.last_page` slots
102
+ * (both 1-indexed; `null` when the walker exhausted that source) so
103
+ * agents resuming a partial walk re-issue with the per-source
104
+ * `last_page + 1`. No cursor surface at v0.3 — both sources
105
+ * paginate page-numbered.
106
+ */
107
+ import { z } from 'zod';
108
+ import type { MondayClient } from './client.js';
109
+ import type { Complexity, Warning } from '../utils/output/envelope.js';
110
+ import type { ItemId } from '../types/ids.js';
111
+ /**
112
+ * Wire field name on `ActivityLogType` that discriminates
113
+ * item-scoped (`pulse`) from board-scoped (`board`) events per the
114
+ * Decision 2 closure entity-filter finding. The walker filters on
115
+ * this constant before handing rows to the projector; the projector
116
+ * itself does NOT re-filter (single source of truth at the walker
117
+ * layer).
118
+ */
119
+ export declare const ITEM_SCOPED_ENTITY: "pulse";
120
+ /**
121
+ * Default per-page slice for `activity_logs(limit: <n>, page: <n>)`.
122
+ * Monday's `activity_logs` resolver caps the per-call slice at 10000;
123
+ * the CLI default of 100 keeps the per-call latency below the per-
124
+ * page budget while letting `--limit <n>` cap the aggregate. Mirrors
125
+ * the v0.1 `DEFAULT_PAGE_SIZE` of 100.
126
+ */
127
+ export declare const DEFAULT_HISTORY_PAGE_SIZE = 100;
128
+ /**
129
+ * Hard cap on `--limit` for `activity_logs` per-call slice. Monday's
130
+ * documented ceiling is 10000; the CLI mirrors it so the parse
131
+ * boundary rejects over-large requests with `usage_error` rather
132
+ * than letting Monday's server-side rejection surface as
133
+ * `validation_failed` mid-walk.
134
+ */
135
+ export declare const HARD_CAP_HISTORY_PAGE_SIZE = 10000;
136
+ /**
137
+ * Stage-1 GraphQL document — `activity_logs` per-page slice.
138
+ *
139
+ * Per the Decision 2 closure introspection finding,
140
+ * `ActivityLogType` has 7 NON_NULL String fields. The projector
141
+ * reads all 6 non-`account_id` slots (`account_id` carries no
142
+ * item-history signal — every row in a single-account CLI session
143
+ * shares it).
144
+ *
145
+ * **`item_ids` filter is necessary BUT NOT SUFFICIENT.** Per the
146
+ * probe finding, board-scoped events (entity = 'board') leak
147
+ * through even with `item_ids` set. The WALKER
148
+ * ({@link fetchItemHistory}) filters `row.entity ===
149
+ * ITEM_SCOPED_ENTITY` immediately after the page parses and
150
+ * BEFORE handing rows to {@link projectActivityLogRow}. The
151
+ * projector itself does NOT re-filter — single source of truth at
152
+ * the walker layer per Decision 2 closure. Server-side filtering
153
+ * would require a custom GraphQL middleware Monday doesn't expose;
154
+ * filtering later than the walker would force row-shaping code to
155
+ * know about the entity discriminator, which belongs to the
156
+ * walker's "which rows are part of THIS item's history" question,
157
+ * not the projector's "how do I shape this row's payload" question.
158
+ *
159
+ * Monday's `activity_logs(item_ids:, from:, to:, page:, limit:)`
160
+ * signature accepts ISO-8601 timestamps for `from` / `to` per the
161
+ * sibling `created_at` ISO8601DateTime scalar; nullable on both
162
+ * sides so a partial range (`--since` only / `--until` only) maps
163
+ * cleanly to omitting the absent slot.
164
+ */
165
+ export declare const ACTIVITY_LOGS_QUERY = "\n query ItemHistoryActivityLogs(\n $bid: [ID!]!,\n $iid: [ID!]!,\n $from: ISO8601DateTime,\n $to: ISO8601DateTime,\n $page: Int!,\n $limit: Int!\n ) {\n boards(ids: $bid) {\n id\n activity_logs(\n item_ids: $iid,\n from: $from,\n to: $to,\n page: $page,\n limit: $limit\n ) {\n id\n event\n entity\n user_id\n created_at\n data\n }\n }\n }\n";
166
+ /**
167
+ * Stage-2 GraphQL document — `items(ids:) { updates(...) }` for
168
+ * the comment-thread source.
169
+ *
170
+ * Per the Decision 2 closure introspection finding, `Update` has
171
+ * 16 fields; the projector selects only the load-bearing slots
172
+ * (id / body / text_body / created_at / creator_id / replies +
173
+ * the Reply sub-selection). Other fields (`likes`, `pinned_to_top`,
174
+ * `viewers`, `assets`) are not part of the item-history surface in
175
+ * v0.3; a v0.4 follow-up may extend the projection under the
176
+ * `update_posted` event's `after` slot if those fields become
177
+ * agent-useful (envelope-additive per §6.1).
178
+ *
179
+ * **Update.created_at + Reply.created_at are nullable** per the
180
+ * probe introspection (both fields are `SCALAR/Date`, nullable).
181
+ * The projector substitutes `Update.edited_at` (NON_NULL Date) as
182
+ * the chronological key when `created_at` is null — silent
183
+ * projection behaviour (NOT a warning surface; the substitution is
184
+ * deterministic + agents observing a null-`created_at` Update on
185
+ * the wire reproduce the same merge order on a re-walk). v0.3's
186
+ * `warnings[]` shape is `unknown_event_kind` only; adding a
187
+ * `synthesized_created_at` warning is a v0.4 envelope-additive
188
+ * extension if the substitution turns out to be agent-visible in
189
+ * practice.
190
+ *
191
+ * Monday's `updates(limit:, page:)` signature is page-numbered;
192
+ * the projector exposes `--updates-page <n>` so the two sources
193
+ * paginate independently (activity_logs and updates have their own
194
+ * page counters; merging them onto a single `--page <n>` flag would
195
+ * conflate two different denominators).
196
+ */
197
+ export declare const UPDATES_QUERY = "\n query ItemHistoryUpdates(\n $iid: [ID!]!,\n $page: Int!,\n $limit: Int!\n ) {\n items(ids: $iid) {\n id\n updates(limit: $limit, page: $page) {\n id\n body\n text_body\n created_at\n edited_at\n creator_id\n replies {\n id\n kind\n body\n text_body\n created_at\n updated_at\n creator_id\n }\n }\n }\n }\n";
198
+ /**
199
+ * Wire-shape schema for an `ActivityLogType` row (Decision 2 closure
200
+ * introspection finding — 7 NON_NULL String fields). `.loose()` so
201
+ * future Monday surface extensions don't break the parse — the
202
+ * projector reads only the fields it knows about and forward-compat
203
+ * fields pass through to no consumer.
204
+ */
205
+ export declare const rawActivityLogRowSchema: z.ZodObject<{
206
+ id: z.ZodString;
207
+ event: z.ZodString;
208
+ entity: z.ZodString;
209
+ user_id: z.ZodString;
210
+ created_at: z.ZodString;
211
+ data: z.ZodString;
212
+ }, z.core.$loose>;
213
+ export type RawActivityLogRow = z.infer<typeof rawActivityLogRowSchema>;
214
+ /**
215
+ * Wire-shape schema for one `Reply` row inside `Update.replies`.
216
+ * Per the Decision 2 closure introspection finding, `Reply.id` +
217
+ * `Reply.body` + `Reply.kind` are NON_NULL; `Reply.created_at` is
218
+ * nullable Date; `Reply.creator_id` is nullable String.
219
+ *
220
+ * **`Reply.kind` is a separate taxonomy from
221
+ * `activity_logs.event`.** Reply's kind discriminates comment-thread
222
+ * reply types (e.g., a regular reply vs a system-generated reply);
223
+ * activity_logs's event discriminates board-level change types. The
224
+ * projector surfaces `Reply.kind` under the synthesized
225
+ * `update_replied` event's `reply_kind` slot so agents can
226
+ * introspect it without confusion.
227
+ */
228
+ export declare const rawReplyRowSchema: z.ZodObject<{
229
+ id: z.ZodString;
230
+ body: z.ZodString;
231
+ kind: z.ZodString;
232
+ text_body: z.ZodNullable<z.ZodString>;
233
+ created_at: z.ZodNullable<z.ZodString>;
234
+ updated_at: z.ZodNullable<z.ZodString>;
235
+ creator_id: z.ZodNullable<z.ZodString>;
236
+ }, z.core.$loose>;
237
+ export type RawReplyRow = z.infer<typeof rawReplyRowSchema>;
238
+ /**
239
+ * Wire-shape schema for one `Update` row. `created_at` is nullable
240
+ * per the probe introspection (Date scalar, optional); the
241
+ * projector substitutes `edited_at` (NON_NULL Date) when
242
+ * `created_at` is absent.
243
+ */
244
+ export declare const rawUpdateRowSchema: z.ZodObject<{
245
+ id: z.ZodString;
246
+ body: z.ZodString;
247
+ text_body: z.ZodNullable<z.ZodString>;
248
+ created_at: z.ZodNullable<z.ZodString>;
249
+ edited_at: z.ZodString;
250
+ creator_id: z.ZodNullable<z.ZodString>;
251
+ replies: z.ZodNullable<z.ZodArray<z.ZodObject<{
252
+ id: z.ZodString;
253
+ body: z.ZodString;
254
+ kind: z.ZodString;
255
+ text_body: z.ZodNullable<z.ZodString>;
256
+ created_at: z.ZodNullable<z.ZodString>;
257
+ updated_at: z.ZodNullable<z.ZodString>;
258
+ creator_id: z.ZodNullable<z.ZodString>;
259
+ }, z.core.$loose>>>;
260
+ }, z.core.$loose>;
261
+ export type RawUpdateRow = z.infer<typeof rawUpdateRowSchema>;
262
+ /**
263
+ * **`update_column_value`** — the dominant ITEM-SCOPED activity-log
264
+ * event per the Decision 2 closure observed-events list (4× of 19
265
+ * rows; the only item-scoped kind in the sample). Carries the
266
+ * column-edit before / after payload.
267
+ *
268
+ * Schema slots:
269
+ * - `column_id` + `column_type` from the wire `data` payload
270
+ * (always present per the probe).
271
+ * - `before` + `after` as `z.unknown()` slots carrying the
272
+ * parsed `previous_value` / `value` JSON. The runtime
273
+ * projector applies one level of nested-JSON unwrap so
274
+ * agents see structured payloads (e.g. `{label, index}` for
275
+ * status, ISO string for date) rather than opaque JSON-
276
+ * string scalars. `z.unknown()` keeps the schema permissive
277
+ * so future Monday column types don't break the parse —
278
+ * agents introspect via `column_type` and the runtime
279
+ * payload.
280
+ * - `textual_value` — Monday's human-readable rendering of the
281
+ * new value (always present per the probe; nullable for
282
+ * defensive forward-compat with future column types Monday
283
+ * may not provide a textual rendering for).
284
+ * - `pulse_id` + `pulse_name` — item identity for cross-board
285
+ * consumers; nullable for subitem variants where the parent
286
+ * identification carries the load. `pulse_id` ships as an
287
+ * unquoted JSON number on the wire (probe-confirmed); the
288
+ * runtime projector stringifies it via
289
+ * `readNullableIdField` (Codex impl round-2 P2-1).
290
+ */
291
+ export declare const updateColumnValueEventSchema: z.ZodObject<{
292
+ kind: z.ZodLiteral<"update_column_value">;
293
+ column_id: z.ZodString;
294
+ column_type: z.ZodString;
295
+ before: z.ZodUnknown;
296
+ after: z.ZodUnknown;
297
+ textual_value: z.ZodNullable<z.ZodString>;
298
+ pulse_id: z.ZodNullable<z.ZodString>;
299
+ pulse_name: z.ZodNullable<z.ZodString>;
300
+ id: z.ZodString;
301
+ created_at: z.ZodString;
302
+ actor_id: z.ZodNullable<z.ZodString>;
303
+ }, z.core.$strict>;
304
+ export declare const createColumnEventSchema: z.ZodObject<{
305
+ id: z.ZodString;
306
+ created_at: z.ZodString;
307
+ actor_id: z.ZodNullable<z.ZodString>;
308
+ kind: z.ZodLiteral<"create_column">;
309
+ before: z.ZodUnknown;
310
+ after: z.ZodUnknown;
311
+ }, z.core.$strip>;
312
+ export declare const createGroupEventSchema: z.ZodObject<{
313
+ id: z.ZodString;
314
+ created_at: z.ZodString;
315
+ actor_id: z.ZodNullable<z.ZodString>;
316
+ kind: z.ZodLiteral<"create_group">;
317
+ before: z.ZodUnknown;
318
+ after: z.ZodUnknown;
319
+ }, z.core.$strip>;
320
+ export declare const updateBoardNameEventSchema: z.ZodObject<{
321
+ id: z.ZodString;
322
+ created_at: z.ZodString;
323
+ actor_id: z.ZodNullable<z.ZodString>;
324
+ kind: z.ZodLiteral<"update_board_name">;
325
+ before: z.ZodUnknown;
326
+ after: z.ZodUnknown;
327
+ }, z.core.$strip>;
328
+ export declare const updateBoardNicknameEventSchema: z.ZodObject<{
329
+ id: z.ZodString;
330
+ created_at: z.ZodString;
331
+ actor_id: z.ZodNullable<z.ZodString>;
332
+ kind: z.ZodLiteral<"update_board_nickname">;
333
+ before: z.ZodUnknown;
334
+ after: z.ZodUnknown;
335
+ }, z.core.$strip>;
336
+ export declare const boardWorkspaceIdChangedEventSchema: z.ZodObject<{
337
+ id: z.ZodString;
338
+ created_at: z.ZodString;
339
+ actor_id: z.ZodNullable<z.ZodString>;
340
+ kind: z.ZodLiteral<"board_workspace_id_changed">;
341
+ before: z.ZodUnknown;
342
+ after: z.ZodUnknown;
343
+ }, z.core.$strip>;
344
+ /**
345
+ * **`update_posted`** — synthesized event for a top-level comment
346
+ * on the item. The projector maps `Update` rows from the
347
+ * comment-thread source into this shape; activity_logs does NOT
348
+ * surface comments as its own events, so the cross-source merge
349
+ * is what unifies them.
350
+ *
351
+ * - `before: null` — comments are append-only events (no prior
352
+ * state).
353
+ * - `after.body` — `Update.body` (NON_NULL String per the probe).
354
+ * - `after.text_body` — `Update.text_body` (nullable; Monday's
355
+ * plain-text rendering of the rich-text body).
356
+ * - `after.reply_count` — count of `Update.replies` after the
357
+ * wire-side null-coalesce (Monday returns `null` for "no
358
+ * replies known"; the projector folds to `0` for agent
359
+ * ergonomics — see `mergeByCreatedAt` semantics).
360
+ */
361
+ export declare const updatePostedEventSchema: z.ZodObject<{
362
+ kind: z.ZodLiteral<"update_posted">;
363
+ before: z.ZodNull;
364
+ after: z.ZodObject<{
365
+ body: z.ZodString;
366
+ text_body: z.ZodNullable<z.ZodString>;
367
+ reply_count: z.ZodNumber;
368
+ }, z.core.$strict>;
369
+ id: z.ZodString;
370
+ created_at: z.ZodString;
371
+ actor_id: z.ZodNullable<z.ZodString>;
372
+ }, z.core.$strict>;
373
+ /**
374
+ * **`update_replied`** — synthesized event for one reply within a
375
+ * comment thread. The projector emits ONE event per `Reply` row;
376
+ * the parent `Update.id` lands on `parent_update_id` so agents can
377
+ * reconstruct thread context without a second round-trip.
378
+ *
379
+ * `reply_kind` carries `Reply.kind` (NON_NULL String per the
380
+ * probe — a SEPARATE taxonomy from `activity_logs.event`). Pre-
381
+ * flight pins this as `z.string()` (open enum) per the same
382
+ * forward-compat policy as M23 favorites' `object.type` field —
383
+ * Monday may extend Reply.kind with new variants without breaking
384
+ * the parse.
385
+ */
386
+ export declare const updateRepliedEventSchema: z.ZodObject<{
387
+ kind: z.ZodLiteral<"update_replied">;
388
+ parent_update_id: z.ZodString;
389
+ reply_kind: z.ZodString;
390
+ before: z.ZodNull;
391
+ after: z.ZodObject<{
392
+ body: z.ZodString;
393
+ text_body: z.ZodNullable<z.ZodString>;
394
+ }, z.core.$strict>;
395
+ id: z.ZodString;
396
+ created_at: z.ZodString;
397
+ actor_id: z.ZodNullable<z.ZodString>;
398
+ }, z.core.$strict>;
399
+ /**
400
+ * **`unknown`** — fallback variant for an `activity_logs.event`
401
+ * value the projector doesn't recognise. Carries the raw wire
402
+ * `event` slot (so agents see the unrecognised string) + the raw
403
+ * `entity` slot (so the walker filter discrepancy is visible) +
404
+ * the raw parsed `data` JSON under `after` (so a future-extension
405
+ * consumer can reproject without a second wire call). `before` is
406
+ * `null` for uniform shape with the synthesized comment-event
407
+ * variants (`update_posted` / `update_replied`) which also pin
408
+ * `before: null` for their append-only-events semantics — the
409
+ * `unknown` variant similarly has no meaningful "before" since the
410
+ * projector by definition doesn't know how to extract the prior
411
+ * state from the wire payload (the typed variants are the place
412
+ * that knowledge lives). Agents wanting to introspect the raw
413
+ * payload read `after` (the full parsed `data` JSON) alongside
414
+ * `event` + `entity` for routing.
415
+ *
416
+ * Surfaces alongside a `warnings[]` entry of code
417
+ * `unknown_event_kind` (per {@link buildUnknownEventKindWarning})
418
+ * so agents introspect the projector's coverage gap without parsing
419
+ * the events list for `kind === 'unknown'` themselves.
420
+ *
421
+ * Per Decision 2 closure: this variant is the registry-stable
422
+ * surface for forward-compat with Monday's expanding event
423
+ * taxonomy. The 29-error-code registry stays AT 29 — the unknown-
424
+ * event-kind surface is a `warnings[]` shape, NOT a new
425
+ * `error.code` entry.
426
+ */
427
+ export declare const unknownEventSchema: z.ZodObject<{
428
+ kind: z.ZodLiteral<"unknown">;
429
+ event: z.ZodString;
430
+ entity: z.ZodString;
431
+ before: z.ZodNull;
432
+ after: z.ZodUnknown;
433
+ id: z.ZodString;
434
+ created_at: z.ZodString;
435
+ actor_id: z.ZodNullable<z.ZodString>;
436
+ }, z.core.$strict>;
437
+ /**
438
+ * The projected per-event discriminated union — the contract surface
439
+ * for `monday item history`. Agents read `kind` to route per-variant
440
+ * handling. Adding a new variant is non-breaking (envelope-additive
441
+ * per §6.1); renaming or removing one is the SemVer-major boundary.
442
+ *
443
+ * **Variant count: 9** (1 item-scoped activity-log + 5 board-scoped
444
+ * activity-log variants kept for parser-roundtrip + 2 synthesized
445
+ * comment-thread variants + 1 unknown fallback). The Decision 2
446
+ * closure observed-events list capped the activity-log variants at
447
+ * 6; the synthesized + fallback variants are the projector's own
448
+ * contract.
449
+ *
450
+ * **Decision 2 ratification.** The discriminator field name `kind`
451
+ * maps 1:1 from Monday's wire `ActivityLogType.event` field
452
+ * (schema field-name drift); the variants enumerate the observed
453
+ * production taxonomy + the `unknown` fallback for forward-compat.
454
+ */
455
+ export declare const historyEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
456
+ kind: z.ZodLiteral<"update_column_value">;
457
+ column_id: z.ZodString;
458
+ column_type: z.ZodString;
459
+ before: z.ZodUnknown;
460
+ after: z.ZodUnknown;
461
+ textual_value: z.ZodNullable<z.ZodString>;
462
+ pulse_id: z.ZodNullable<z.ZodString>;
463
+ pulse_name: z.ZodNullable<z.ZodString>;
464
+ id: z.ZodString;
465
+ created_at: z.ZodString;
466
+ actor_id: z.ZodNullable<z.ZodString>;
467
+ }, z.core.$strict>, z.ZodObject<{
468
+ id: z.ZodString;
469
+ created_at: z.ZodString;
470
+ actor_id: z.ZodNullable<z.ZodString>;
471
+ kind: z.ZodLiteral<"create_column">;
472
+ before: z.ZodUnknown;
473
+ after: z.ZodUnknown;
474
+ }, z.core.$strip>, z.ZodObject<{
475
+ id: z.ZodString;
476
+ created_at: z.ZodString;
477
+ actor_id: z.ZodNullable<z.ZodString>;
478
+ kind: z.ZodLiteral<"create_group">;
479
+ before: z.ZodUnknown;
480
+ after: z.ZodUnknown;
481
+ }, z.core.$strip>, z.ZodObject<{
482
+ id: z.ZodString;
483
+ created_at: z.ZodString;
484
+ actor_id: z.ZodNullable<z.ZodString>;
485
+ kind: z.ZodLiteral<"update_board_name">;
486
+ before: z.ZodUnknown;
487
+ after: z.ZodUnknown;
488
+ }, z.core.$strip>, z.ZodObject<{
489
+ id: z.ZodString;
490
+ created_at: z.ZodString;
491
+ actor_id: z.ZodNullable<z.ZodString>;
492
+ kind: z.ZodLiteral<"update_board_nickname">;
493
+ before: z.ZodUnknown;
494
+ after: z.ZodUnknown;
495
+ }, z.core.$strip>, z.ZodObject<{
496
+ id: z.ZodString;
497
+ created_at: z.ZodString;
498
+ actor_id: z.ZodNullable<z.ZodString>;
499
+ kind: z.ZodLiteral<"board_workspace_id_changed">;
500
+ before: z.ZodUnknown;
501
+ after: z.ZodUnknown;
502
+ }, z.core.$strip>, z.ZodObject<{
503
+ kind: z.ZodLiteral<"update_posted">;
504
+ before: z.ZodNull;
505
+ after: z.ZodObject<{
506
+ body: z.ZodString;
507
+ text_body: z.ZodNullable<z.ZodString>;
508
+ reply_count: z.ZodNumber;
509
+ }, z.core.$strict>;
510
+ id: z.ZodString;
511
+ created_at: z.ZodString;
512
+ actor_id: z.ZodNullable<z.ZodString>;
513
+ }, z.core.$strict>, z.ZodObject<{
514
+ kind: z.ZodLiteral<"update_replied">;
515
+ parent_update_id: z.ZodString;
516
+ reply_kind: z.ZodString;
517
+ before: z.ZodNull;
518
+ after: z.ZodObject<{
519
+ body: z.ZodString;
520
+ text_body: z.ZodNullable<z.ZodString>;
521
+ }, z.core.$strict>;
522
+ id: z.ZodString;
523
+ created_at: z.ZodString;
524
+ actor_id: z.ZodNullable<z.ZodString>;
525
+ }, z.core.$strict>, z.ZodObject<{
526
+ kind: z.ZodLiteral<"unknown">;
527
+ event: z.ZodString;
528
+ entity: z.ZodString;
529
+ before: z.ZodNull;
530
+ after: z.ZodUnknown;
531
+ id: z.ZodString;
532
+ created_at: z.ZodString;
533
+ actor_id: z.ZodNullable<z.ZodString>;
534
+ }, z.core.$strict>], "kind">;
535
+ export type HistoryEvent = z.infer<typeof historyEventSchema>;
536
+ /**
537
+ * The top-level command output schema — `data` is the chronologically-
538
+ * merged event array. Mirrors M23's `crossBoardSearchOutputSchema`
539
+ * (a flat array of typed rows; no top-level metadata in `data`).
540
+ */
541
+ export declare const historyEventOutputSchema: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
542
+ kind: z.ZodLiteral<"update_column_value">;
543
+ column_id: z.ZodString;
544
+ column_type: z.ZodString;
545
+ before: z.ZodUnknown;
546
+ after: z.ZodUnknown;
547
+ textual_value: z.ZodNullable<z.ZodString>;
548
+ pulse_id: z.ZodNullable<z.ZodString>;
549
+ pulse_name: z.ZodNullable<z.ZodString>;
550
+ id: z.ZodString;
551
+ created_at: z.ZodString;
552
+ actor_id: z.ZodNullable<z.ZodString>;
553
+ }, z.core.$strict>, z.ZodObject<{
554
+ id: z.ZodString;
555
+ created_at: z.ZodString;
556
+ actor_id: z.ZodNullable<z.ZodString>;
557
+ kind: z.ZodLiteral<"create_column">;
558
+ before: z.ZodUnknown;
559
+ after: z.ZodUnknown;
560
+ }, z.core.$strip>, z.ZodObject<{
561
+ id: z.ZodString;
562
+ created_at: z.ZodString;
563
+ actor_id: z.ZodNullable<z.ZodString>;
564
+ kind: z.ZodLiteral<"create_group">;
565
+ before: z.ZodUnknown;
566
+ after: z.ZodUnknown;
567
+ }, z.core.$strip>, z.ZodObject<{
568
+ id: z.ZodString;
569
+ created_at: z.ZodString;
570
+ actor_id: z.ZodNullable<z.ZodString>;
571
+ kind: z.ZodLiteral<"update_board_name">;
572
+ before: z.ZodUnknown;
573
+ after: z.ZodUnknown;
574
+ }, z.core.$strip>, z.ZodObject<{
575
+ id: z.ZodString;
576
+ created_at: z.ZodString;
577
+ actor_id: z.ZodNullable<z.ZodString>;
578
+ kind: z.ZodLiteral<"update_board_nickname">;
579
+ before: z.ZodUnknown;
580
+ after: z.ZodUnknown;
581
+ }, z.core.$strip>, z.ZodObject<{
582
+ id: z.ZodString;
583
+ created_at: z.ZodString;
584
+ actor_id: z.ZodNullable<z.ZodString>;
585
+ kind: z.ZodLiteral<"board_workspace_id_changed">;
586
+ before: z.ZodUnknown;
587
+ after: z.ZodUnknown;
588
+ }, z.core.$strip>, z.ZodObject<{
589
+ kind: z.ZodLiteral<"update_posted">;
590
+ before: z.ZodNull;
591
+ after: z.ZodObject<{
592
+ body: z.ZodString;
593
+ text_body: z.ZodNullable<z.ZodString>;
594
+ reply_count: z.ZodNumber;
595
+ }, z.core.$strict>;
596
+ id: z.ZodString;
597
+ created_at: z.ZodString;
598
+ actor_id: z.ZodNullable<z.ZodString>;
599
+ }, z.core.$strict>, z.ZodObject<{
600
+ kind: z.ZodLiteral<"update_replied">;
601
+ parent_update_id: z.ZodString;
602
+ reply_kind: z.ZodString;
603
+ before: z.ZodNull;
604
+ after: z.ZodObject<{
605
+ body: z.ZodString;
606
+ text_body: z.ZodNullable<z.ZodString>;
607
+ }, z.core.$strict>;
608
+ id: z.ZodString;
609
+ created_at: z.ZodString;
610
+ actor_id: z.ZodNullable<z.ZodString>;
611
+ }, z.core.$strict>, z.ZodObject<{
612
+ kind: z.ZodLiteral<"unknown">;
613
+ event: z.ZodString;
614
+ entity: z.ZodString;
615
+ before: z.ZodNull;
616
+ after: z.ZodUnknown;
617
+ id: z.ZodString;
618
+ created_at: z.ZodString;
619
+ actor_id: z.ZodNullable<z.ZodString>;
620
+ }, z.core.$strict>], "kind">>;
621
+ export type HistoryEventOutput = z.infer<typeof historyEventOutputSchema>;
622
+ /**
623
+ * Warning surfaced when the projector encountered an
624
+ * `activity_logs.event` value not in the typed-variant set
625
+ * (`event` mapped to the `kind: 'unknown'` fallback). `details`
626
+ * carries the raw event + entity values so agents can extend the
627
+ * projector or file a follow-up.
628
+ *
629
+ * **NOT an `error.code` registry entry** per Decision 2 closure —
630
+ * §6.1 `warnings[]` shape only. The 29-stable-error-code registry
631
+ * stays at 29.
632
+ *
633
+ * **Aggregation semantics.** The projector emits ONE warning per
634
+ * unique `event` value observed in the merged stream (not per
635
+ * occurrence) — repeated `unknown` events of the same wire kind
636
+ * surface a single warning carrying `details.occurrence_count` so
637
+ * the warnings array stays bounded even on degenerate inputs.
638
+ */
639
+ export interface UnknownEventKindWarning {
640
+ readonly code: 'unknown_event_kind';
641
+ readonly message: string;
642
+ readonly details: {
643
+ readonly event: string;
644
+ readonly entity: string;
645
+ readonly occurrence_count: number;
646
+ readonly hint: string;
647
+ };
648
+ }
649
+ export declare const unknownEventKindWarningSchema: z.ZodObject<{
650
+ code: z.ZodLiteral<"unknown_event_kind">;
651
+ message: z.ZodString;
652
+ details: z.ZodObject<{
653
+ event: z.ZodString;
654
+ entity: z.ZodString;
655
+ occurrence_count: z.ZodNumber;
656
+ hint: z.ZodString;
657
+ }, z.core.$strict>;
658
+ }, z.core.$strict>;
659
+ /**
660
+ * Builds an {@link UnknownEventKindWarning} from one observed
661
+ * unknown event + its occurrence count across the merged stream.
662
+ * **Real implementation** at pre-flight (pure helper; the warning
663
+ * shape is the contract surface).
664
+ *
665
+ * The hint forward-references the projector's extensibility point
666
+ * so agents have a concrete next step (vs a generic "unknown"
667
+ * message that requires reading the source).
668
+ */
669
+ export declare const buildUnknownEventKindWarning: (event: string, entity: string, occurrenceCount: number) => UnknownEventKindWarning;
670
+ /**
671
+ * Merges two pre-projected event streams (activity-log + comment-
672
+ * thread) into a single chronologically-ordered stream. **Real
673
+ * implementation** at pre-flight (pure helper).
674
+ *
675
+ * Ordering rules:
676
+ * - Primary: `created_at` ascending (oldest first; matches
677
+ * Monday's UI activity log + comment thread chronological
678
+ * reading order).
679
+ * - Tie-break: `id` (lexicographic) — deterministic across runs
680
+ * even when two events share the exact same `created_at`
681
+ * timestamp (Monday's resolver issues IDs in monotonic order
682
+ * per source, so the tie-break preserves intra-source order).
683
+ *
684
+ * **Why merge here, not at the walker.** The two source walkers
685
+ * paginate independently (activity_logs page-numbered;
686
+ * updates page-numbered with a different denominator); merging at
687
+ * the walker would force coupled pagination on the streaming
688
+ * path. The projector merges the FULLY-DRAINED-PER-WALL-CLOCK-CAP
689
+ * lists — `fetchItemHistory` walks both sources to the `--since`
690
+ * / `--until` cap independently, then this helper merges.
691
+ *
692
+ * **Streaming semantics.** When `--stream` is on, the merge is
693
+ * NOT incremental — the entire `--since`-bounded slice must be
694
+ * resident to order it. The NDJSON stream emits the merged array
695
+ * per-item via the walker's `onItem` hook AFTER the merge
696
+ * completes; the trailer carries the per-source pagination state
697
+ * for resumption.
698
+ */
699
+ export declare const mergeByCreatedAt: (activityEvents: readonly HistoryEvent[], commentEvents: readonly HistoryEvent[]) => readonly HistoryEvent[];
700
+ /**
701
+ * Inputs to {@link projectActivityLogRow}.
702
+ */
703
+ export interface ProjectActivityLogRowInputs {
704
+ readonly row: RawActivityLogRow;
705
+ }
706
+ /**
707
+ * Projects one wire `ActivityLogType` row into a typed
708
+ * {@link HistoryEvent}. Parses the wire `data` JSON, dispatches
709
+ * on `row.event`, and emits the matching typed variant. Unknown
710
+ * event kinds fall back to the `unknown` variant carrying the raw
711
+ * parsed `data` under `after`.
712
+ *
713
+ * The projector is the SINGLE per-row dispatch point; the walker
714
+ * delegates to it after the `entity === 'pulse'` filter (single
715
+ * source of truth at the walker layer per Decision 2 closure;
716
+ * projector does NOT re-filter).
717
+ *
718
+ * Per-`column_type` typed before/after for `update_column_value`:
719
+ * `value` and `previous_value` are passed through with one level
720
+ * of nested-JSON unwrap (Monday encodes nested values as JSON
721
+ * strings inside the outer `data` payload); each column type's
722
+ * concrete payload shape (e.g. status `{label, index}`, date ISO
723
+ * string, text raw string) flows through unchanged. Per Decision
724
+ * 2 closure: `previous_value: {}` is preserved as "previously-
725
+ * unset" rather than collapsed to `null` — agents distinguish
726
+ * the empty-object shape.
727
+ */
728
+ export declare const projectActivityLogRow: (inputs: ProjectActivityLogRowInputs) => HistoryEvent;
729
+ /**
730
+ * Inputs to {@link projectUpdateRow}.
731
+ */
732
+ export interface ProjectUpdateRowInputs {
733
+ readonly row: RawUpdateRow;
734
+ }
735
+ /**
736
+ * Projects one wire `Update` row into a synthesized
737
+ * {@link HistoryEvent} of kind `update_posted` plus one
738
+ * `update_replied` event per `row.replies` entry (via
739
+ * {@link projectReplyRow}). Returns a flat array suitable for
740
+ * the merger.
741
+ *
742
+ * `Update.created_at` is nullable per Decision 2 closure probe
743
+ * findings; the projector substitutes `Update.edited_at`
744
+ * (NON_NULL) as the chronological key — silent projection
745
+ * behaviour, deterministic across re-walks.
746
+ *
747
+ * Replies are flat-mapped here (not at the walker) so the
748
+ * walker stays surface-symmetric with the activity_logs source
749
+ * (both project per-row → events). The merge projector orders
750
+ * the combined stream.
751
+ */
752
+ export declare const projectUpdateRow: (inputs: ProjectUpdateRowInputs) => readonly HistoryEvent[];
753
+ /**
754
+ * Inputs to {@link projectReplyRow}. The `parentUpdateId` slot
755
+ * wires the synthesized event's `parent_update_id` so agents
756
+ * reconstruct thread context; the `parentCreatedAt` slot supplies
757
+ * the timestamp fallback when both reply timestamps are null
758
+ * (defensive against Monday's nullable Reply.created_at +
759
+ * Reply.updated_at combination).
760
+ */
761
+ export interface ProjectReplyRowInputs {
762
+ readonly row: RawReplyRow;
763
+ readonly parentUpdateId: string;
764
+ readonly parentCreatedAt: string;
765
+ }
766
+ /**
767
+ * Projects one wire `Reply` row into a synthesized
768
+ * {@link HistoryEvent} of kind `update_replied`. The parent
769
+ * `Update.id` lands on `parent_update_id`; `Reply.kind` lands on
770
+ * `reply_kind` (separate from `activity_logs.event` taxonomy per
771
+ * the Decision 2 closure probe finding).
772
+ *
773
+ * `Reply.created_at` is nullable per the probe introspection;
774
+ * fallback chain: `Reply.created_at` → `Reply.updated_at` →
775
+ * the parent Update's projected timestamp. The final fallback
776
+ * is load-bearing: the event schema requires `created_at` to be
777
+ * non-empty (`min(1)`) and the parent's timestamp is guaranteed
778
+ * non-empty by `projectUpdateRow`'s `created_at ?? edited_at`
779
+ * resolution (Codex impl review round 1 P2-2). A Reply with both
780
+ * timestamps null then merges right next to its parent on the
781
+ * chronological stream.
782
+ */
783
+ export declare const projectReplyRow: (inputs: ProjectReplyRowInputs) => HistoryEvent;
784
+ /**
785
+ * Per-source pagination state surfaced on the
786
+ * {@link FetchItemHistoryResult} so the NDJSON trailer carries
787
+ * resumption hints. Two sources paginate independently; the
788
+ * trailer's `meta` carries both denominators so an agent
789
+ * resuming a walk knows which page to re-issue per source.
790
+ *
791
+ * - `activity_logs.last_page` — the last activity-log page the
792
+ * walker drained. `null` when the walker exhausted the source
793
+ * (no more pages); a number when stopped mid-walk
794
+ * (`--limit` or wall-clock cap fired).
795
+ * - `updates.last_page` — same semantics for the updates source.
796
+ */
797
+ export interface PerSourcePaginationState {
798
+ readonly activity_logs: {
799
+ readonly last_page: number | null;
800
+ };
801
+ readonly updates: {
802
+ readonly last_page: number | null;
803
+ };
804
+ }
805
+ /**
806
+ * Inputs to {@link fetchItemHistory}.
807
+ *
808
+ * - `client` — resolved {@link MondayClient} so the fetch inherits
809
+ * `--retry` + `--verbose`-complexity injection (mirrors M22's
810
+ * `fetchUsage` + M23's `fetchBoardFavorites` shape).
811
+ * - `itemId` — the target item. Branded {@link ItemId} (numeric-
812
+ * string; parsed at the command argv boundary).
813
+ * - `boardId` — Monday's `activity_logs` resolver lives under
814
+ * `boards(ids:)`, so the walker needs the item's parent board
815
+ * ID. The command-action looks this up via `lookupItemBoard`
816
+ * before constructing inputs.
817
+ * - `since` / `until` — wall-clock filters (ISO-8601). Both
818
+ * optional; absent → unbounded on that side. Threaded through
819
+ * to `activity_logs(from:, to:)`; the updates source filters
820
+ * client-side against `Update.created_at` (Monday's `updates`
821
+ * resolver doesn't expose a wall-clock filter as of API
822
+ * `2026-01`).
823
+ * - `activityLogsPage` — 1-indexed page number for the
824
+ * `activity_logs` source. Maps to Monday's `page:` arg.
825
+ * - `updatesPage` — 1-indexed page number for the `updates`
826
+ * source. Independent of `activityLogsPage`.
827
+ * - `limit` — per-source per-call slice size (Monday's `limit:`
828
+ * arg on both `activity_logs` and `updates`). Default
829
+ * {@link DEFAULT_HISTORY_PAGE_SIZE}; hard cap
830
+ * {@link HARD_CAP_HISTORY_PAGE_SIZE}.
831
+ * - `kinds` — optional projection filter; only events whose
832
+ * `kind` is in the set are returned. Applied AFTER projection
833
+ * (so unknown-event-kind warnings still surface for filtered
834
+ * events; the filter narrows the returned `data` array, not
835
+ * the merge denominator). The walker drains every page either
836
+ * way; the filter is purely projection-side.
837
+ * - `onItem` — streaming hook per the `--stream` path. Called
838
+ * per merged event per the ordered output (NOT per arrival —
839
+ * merging requires the full slice resident; see
840
+ * `mergeByCreatedAt` semantics).
841
+ */
842
+ export interface FetchItemHistoryInputs {
843
+ readonly client: MondayClient;
844
+ readonly itemId: ItemId;
845
+ readonly boardId: string;
846
+ readonly since?: string;
847
+ readonly until?: string;
848
+ readonly activityLogsPage?: number;
849
+ readonly updatesPage?: number;
850
+ readonly limit?: number;
851
+ readonly kinds?: readonly HistoryEvent['kind'][];
852
+ readonly onItem?: (event: HistoryEvent) => void | Promise<void>;
853
+ }
854
+ /**
855
+ * Result of the two-source merged-history walker. Carries:
856
+ *
857
+ * - `events` — chronologically-merged event array (or the
858
+ * `--kinds`-filtered subset).
859
+ * - `pagination` — per-source pagination state for NDJSON
860
+ * trailer / agent-resumption.
861
+ * - `warnings` — `unknown_event_kind` warnings (one per unique
862
+ * unrecognised event observed; see
863
+ * {@link buildUnknownEventKindWarning}).
864
+ * - `complexity` — last-call `meta.complexity` (under
865
+ * `--verbose` only); two-source merge picks the larger of
866
+ * the per-source values (or `null` outside `--verbose`).
867
+ * - `source` — always `'live'` for v0.3. activity_logs + updates
868
+ * are pure reads with no per-call cache; the action-layer
869
+ * wrapping aggregates this with the item-board lookup's cache
870
+ * state (which may be cache-hit) via `SourceAggregator` at M24
871
+ * impl, mirroring the M23 cross-board-search source shape.
872
+ */
873
+ export interface FetchItemHistoryResult {
874
+ readonly events: readonly HistoryEvent[];
875
+ readonly pagination: PerSourcePaginationState;
876
+ readonly warnings: readonly UnknownEventKindWarning[];
877
+ readonly complexity: Complexity | null;
878
+ readonly source: 'live';
879
+ }
880
+ /**
881
+ * Two-source merged-history walker. Issues two independent
882
+ * GraphQL calls (activity_logs + updates), filters + projects
883
+ * each per Decision 2 closure ratified shape, merges
884
+ * chronologically, aggregates `unknown_event_kind` warnings,
885
+ * applies optional `--kinds` projection filter, and streams via
886
+ * `inputs.onItem` (per-merged-event AFTER the merge — merging
887
+ * requires full slice resident per the `mergeByCreatedAt`
888
+ * docstring).
889
+ *
890
+ * **`source: 'live'` constant.** activity_logs + updates are
891
+ * pure reads with no per-call cache; the action layer aggregates
892
+ * this with the item-board lookup's `'live'` source via
893
+ * `SourceAggregator` and resolves the envelope's `meta.source`
894
+ * from the aggregator's resolved state (mirrors M23
895
+ * cross-board-search).
896
+ *
897
+ * **`complexity`** is the larger of the two stages' per-call
898
+ * complexity values (under `--verbose` only; null outside). Two
899
+ * independent calls → take the worst-case stage so agents see
900
+ * the more conservative budget snapshot rather than averaging.
901
+ *
902
+ * **Per-source pagination state.** Each source's `last_page` is
903
+ * the page number the walker DRAINED if the response returned a
904
+ * full slice (`response.length === limit` → more pages likely);
905
+ * `null` when the response returned less than `limit` rows
906
+ * (source exhausted). Monday's page-numbered surfaces have no
907
+ * "next" sentinel; the heuristic mirrors the v0.2 page-walker
908
+ * shape.
909
+ */
910
+ export declare const fetchItemHistory: (inputs: FetchItemHistoryInputs) => Promise<FetchItemHistoryResult>;
911
+ /**
912
+ * Adapter from a {@link FetchItemHistoryResult}'s `warnings`
913
+ * array to the envelope-shaped {@link Warning} array consumed by
914
+ * `emitSuccess`. Pre-flight pure helper — type-narrows the
915
+ * `code` discriminator so the envelope's `warnings[]` slot
916
+ * carries the precise shape rather than a generic `Warning`.
917
+ */
918
+ export declare const toEnvelopeWarnings: (warnings: readonly UnknownEventKindWarning[]) => readonly Warning[];
919
+ //# sourceMappingURL=item-history-projection.d.ts.map