@jbctechsolutions/mcp-office365 2.5.1 → 4.0.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 (369) hide show
  1. package/README.md +66 -57
  2. package/dist/approval/hash.d.ts +8 -8
  3. package/dist/approval/token-manager.d.ts +37 -19
  4. package/dist/approval/token-manager.d.ts.map +1 -1
  5. package/dist/approval/token-manager.js +133 -37
  6. package/dist/approval/token-manager.js.map +1 -1
  7. package/dist/approval/types.d.ts +7 -3
  8. package/dist/approval/types.d.ts.map +1 -1
  9. package/dist/cli.d.ts +21 -0
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +100 -2
  12. package/dist/cli.js.map +1 -1
  13. package/dist/database/repository.d.ts +48 -48
  14. package/dist/database/repository.d.ts.map +1 -1
  15. package/dist/database/repository.js.map +1 -1
  16. package/dist/delta/mirror.d.ts +67 -0
  17. package/dist/delta/mirror.d.ts.map +1 -0
  18. package/dist/delta/mirror.js +183 -0
  19. package/dist/delta/mirror.js.map +1 -0
  20. package/dist/graph/auth/account-id.d.ts +19 -0
  21. package/dist/graph/auth/account-id.d.ts.map +1 -0
  22. package/dist/graph/auth/account-id.js +55 -0
  23. package/dist/graph/auth/account-id.js.map +1 -0
  24. package/dist/graph/auth/config.d.ts +1 -1
  25. package/dist/graph/auth/config.d.ts.map +1 -1
  26. package/dist/graph/auth/config.js +13 -1
  27. package/dist/graph/auth/config.js.map +1 -1
  28. package/dist/graph/auth/device-code-flow.d.ts +3 -1
  29. package/dist/graph/auth/device-code-flow.d.ts.map +1 -1
  30. package/dist/graph/auth/device-code-flow.js +42 -14
  31. package/dist/graph/auth/device-code-flow.js.map +1 -1
  32. package/dist/graph/auth/index.d.ts +1 -0
  33. package/dist/graph/auth/index.d.ts.map +1 -1
  34. package/dist/graph/auth/index.js +1 -0
  35. package/dist/graph/auth/index.js.map +1 -1
  36. package/dist/graph/auth/token-cache.js +2 -2
  37. package/dist/graph/auth/token-cache.js.map +1 -1
  38. package/dist/graph/client/graph-client.d.ts +141 -8
  39. package/dist/graph/client/graph-client.d.ts.map +1 -1
  40. package/dist/graph/client/graph-client.js +536 -48
  41. package/dist/graph/client/graph-client.js.map +1 -1
  42. package/dist/graph/client/immutable-id-middleware.d.ts +50 -0
  43. package/dist/graph/client/immutable-id-middleware.d.ts.map +1 -0
  44. package/dist/graph/client/immutable-id-middleware.js +137 -0
  45. package/dist/graph/client/immutable-id-middleware.js.map +1 -0
  46. package/dist/graph/content-readers.d.ts +0 -12
  47. package/dist/graph/content-readers.d.ts.map +1 -1
  48. package/dist/graph/content-readers.js +0 -21
  49. package/dist/graph/content-readers.js.map +1 -1
  50. package/dist/graph/index.d.ts +5 -6
  51. package/dist/graph/index.d.ts.map +1 -1
  52. package/dist/graph/index.js +5 -6
  53. package/dist/graph/index.js.map +1 -1
  54. package/dist/graph/mailbox-adapter.d.ts +15 -15
  55. package/dist/graph/mappers/contact-mapper.d.ts +4 -1
  56. package/dist/graph/mappers/contact-mapper.d.ts.map +1 -1
  57. package/dist/graph/mappers/contact-mapper.js +7 -3
  58. package/dist/graph/mappers/contact-mapper.js.map +1 -1
  59. package/dist/graph/mappers/email-mapper.d.ts.map +1 -1
  60. package/dist/graph/mappers/email-mapper.js +7 -4
  61. package/dist/graph/mappers/email-mapper.js.map +1 -1
  62. package/dist/graph/mappers/event-mapper.d.ts.map +1 -1
  63. package/dist/graph/mappers/event-mapper.js +6 -3
  64. package/dist/graph/mappers/event-mapper.js.map +1 -1
  65. package/dist/graph/mappers/folder-mapper.d.ts +0 -4
  66. package/dist/graph/mappers/folder-mapper.d.ts.map +1 -1
  67. package/dist/graph/mappers/folder-mapper.js +9 -19
  68. package/dist/graph/mappers/folder-mapper.js.map +1 -1
  69. package/dist/graph/mappers/index.d.ts +2 -2
  70. package/dist/graph/mappers/index.d.ts.map +1 -1
  71. package/dist/graph/mappers/index.js +2 -2
  72. package/dist/graph/mappers/index.js.map +1 -1
  73. package/dist/graph/mappers/task-mapper.d.ts +4 -2
  74. package/dist/graph/mappers/task-mapper.d.ts.map +1 -1
  75. package/dist/graph/mappers/task-mapper.js +7 -5
  76. package/dist/graph/mappers/task-mapper.js.map +1 -1
  77. package/dist/graph/mappers/utils.d.ts +0 -10
  78. package/dist/graph/mappers/utils.d.ts.map +1 -1
  79. package/dist/graph/mappers/utils.js +0 -19
  80. package/dist/graph/mappers/utils.js.map +1 -1
  81. package/dist/graph/repository.d.ts +409 -276
  82. package/dist/graph/repository.d.ts.map +1 -1
  83. package/dist/graph/repository.js +772 -1082
  84. package/dist/graph/repository.js.map +1 -1
  85. package/dist/ids/mint.d.ts +31 -0
  86. package/dist/ids/mint.d.ts.map +1 -0
  87. package/dist/ids/mint.js +36 -0
  88. package/dist/ids/mint.js.map +1 -0
  89. package/dist/ids/next-action.d.ts +29 -0
  90. package/dist/ids/next-action.d.ts.map +1 -0
  91. package/dist/ids/next-action.js +58 -0
  92. package/dist/ids/next-action.js.map +1 -0
  93. package/dist/ids/resolver.d.ts +31 -0
  94. package/dist/ids/resolver.d.ts.map +1 -0
  95. package/dist/ids/resolver.js +52 -0
  96. package/dist/ids/resolver.js.map +1 -0
  97. package/dist/ids/schema.d.ts +91 -0
  98. package/dist/ids/schema.d.ts.map +1 -0
  99. package/dist/ids/schema.js +131 -0
  100. package/dist/ids/schema.js.map +1 -0
  101. package/dist/ids/token.d.ts +62 -0
  102. package/dist/ids/token.d.ts.map +1 -0
  103. package/dist/ids/token.js +225 -0
  104. package/dist/ids/token.js.map +1 -0
  105. package/dist/index.d.ts +10 -6
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +255 -5925
  108. package/dist/index.js.map +1 -1
  109. package/dist/parsers/index.d.ts +0 -1
  110. package/dist/parsers/index.d.ts.map +1 -1
  111. package/dist/parsers/index.js +0 -1
  112. package/dist/parsers/index.js.map +1 -1
  113. package/dist/registry/all-tools.d.ts +14 -0
  114. package/dist/registry/all-tools.d.ts.map +1 -0
  115. package/dist/registry/all-tools.js +68 -0
  116. package/dist/registry/all-tools.js.map +1 -0
  117. package/dist/registry/context.d.ts +19 -0
  118. package/dist/registry/context.d.ts.map +1 -0
  119. package/dist/registry/context.js +20 -0
  120. package/dist/registry/context.js.map +1 -0
  121. package/dist/registry/define-tool.d.ts +15 -0
  122. package/dist/registry/define-tool.d.ts.map +1 -0
  123. package/dist/registry/define-tool.js +8 -0
  124. package/dist/registry/define-tool.js.map +1 -0
  125. package/dist/registry/elicit-links.d.ts +35 -0
  126. package/dist/registry/elicit-links.d.ts.map +1 -0
  127. package/dist/registry/elicit-links.js +102 -0
  128. package/dist/registry/elicit-links.js.map +1 -0
  129. package/dist/registry/elicitor.d.ts +24 -0
  130. package/dist/registry/elicitor.d.ts.map +1 -0
  131. package/dist/registry/elicitor.js +51 -0
  132. package/dist/registry/elicitor.js.map +1 -0
  133. package/dist/registry/index.d.ts +13 -0
  134. package/dist/registry/index.d.ts.map +1 -0
  135. package/dist/registry/index.js +8 -0
  136. package/dist/registry/index.js.map +1 -0
  137. package/dist/registry/registry.d.ts +73 -0
  138. package/dist/registry/registry.d.ts.map +1 -0
  139. package/dist/registry/registry.js +221 -0
  140. package/dist/registry/registry.js.map +1 -0
  141. package/dist/registry/types.d.ts +146 -0
  142. package/dist/registry/types.d.ts.map +1 -0
  143. package/dist/registry/types.js +6 -0
  144. package/dist/registry/types.js.map +1 -0
  145. package/dist/search/compiler.d.ts +49 -0
  146. package/dist/search/compiler.d.ts.map +1 -0
  147. package/dist/search/compiler.js +168 -0
  148. package/dist/search/compiler.js.map +1 -0
  149. package/dist/signature.js +2 -2
  150. package/dist/signature.js.map +1 -1
  151. package/dist/state/delta-store.d.ts +85 -0
  152. package/dist/state/delta-store.d.ts.map +1 -0
  153. package/dist/state/delta-store.js +124 -0
  154. package/dist/state/delta-store.js.map +1 -0
  155. package/dist/state/migrate.d.ts +23 -0
  156. package/dist/state/migrate.d.ts.map +1 -0
  157. package/dist/state/migrate.js +81 -0
  158. package/dist/state/migrate.js.map +1 -0
  159. package/dist/state/schema.d.ts +26 -0
  160. package/dist/state/schema.d.ts.map +1 -0
  161. package/dist/state/schema.js +77 -0
  162. package/dist/state/schema.js.map +1 -0
  163. package/dist/state/store.d.ts +155 -0
  164. package/dist/state/store.d.ts.map +1 -0
  165. package/dist/state/store.js +321 -0
  166. package/dist/state/store.js.map +1 -0
  167. package/dist/tools/calendar-graph.d.ts +41 -0
  168. package/dist/tools/calendar-graph.d.ts.map +1 -0
  169. package/dist/tools/calendar-graph.js +299 -0
  170. package/dist/tools/calendar-graph.js.map +1 -0
  171. package/dist/tools/calendar-permissions.d.ts +17 -7
  172. package/dist/tools/calendar-permissions.d.ts.map +1 -1
  173. package/dist/tools/calendar-permissions.js +60 -4
  174. package/dist/tools/calendar-permissions.js.map +1 -1
  175. package/dist/tools/calendar.d.ts +133 -82
  176. package/dist/tools/calendar.d.ts.map +1 -1
  177. package/dist/tools/calendar.js +249 -136
  178. package/dist/tools/calendar.js.map +1 -1
  179. package/dist/tools/categories.d.ts +14 -4
  180. package/dist/tools/categories.d.ts.map +1 -1
  181. package/dist/tools/categories.js +59 -2
  182. package/dist/tools/categories.js.map +1 -1
  183. package/dist/tools/checklist-items.d.ts +19 -9
  184. package/dist/tools/checklist-items.d.ts.map +1 -1
  185. package/dist/tools/checklist-items.js +71 -5
  186. package/dist/tools/checklist-items.js.map +1 -1
  187. package/dist/tools/contact-folders.d.ts +50 -0
  188. package/dist/tools/contact-folders.d.ts.map +1 -0
  189. package/dist/tools/contact-folders.js +136 -0
  190. package/dist/tools/contact-folders.js.map +1 -0
  191. package/dist/tools/contacts-graph.d.ts +45 -0
  192. package/dist/tools/contacts-graph.d.ts.map +1 -0
  193. package/dist/tools/contacts-graph.js +174 -0
  194. package/dist/tools/contacts-graph.js.map +1 -0
  195. package/dist/tools/contacts.d.ts +61 -30
  196. package/dist/tools/contacts.d.ts.map +1 -1
  197. package/dist/tools/contacts.js +150 -93
  198. package/dist/tools/contacts.js.map +1 -1
  199. package/dist/tools/excel.d.ts +20 -10
  200. package/dist/tools/excel.d.ts.map +1 -1
  201. package/dist/tools/excel.js +82 -6
  202. package/dist/tools/excel.js.map +1 -1
  203. package/dist/tools/focused-overrides.d.ts +14 -4
  204. package/dist/tools/focused-overrides.d.ts.map +1 -1
  205. package/dist/tools/focused-overrides.js +59 -2
  206. package/dist/tools/focused-overrides.js.map +1 -1
  207. package/dist/tools/index.d.ts +4 -5
  208. package/dist/tools/index.d.ts.map +1 -1
  209. package/dist/tools/index.js +4 -6
  210. package/dist/tools/index.js.map +1 -1
  211. package/dist/tools/linked-resources.d.ts +17 -7
  212. package/dist/tools/linked-resources.d.ts.map +1 -1
  213. package/dist/tools/linked-resources.js +60 -4
  214. package/dist/tools/linked-resources.js.map +1 -1
  215. package/dist/tools/mail-graph.d.ts +38 -0
  216. package/dist/tools/mail-graph.d.ts.map +1 -0
  217. package/dist/tools/mail-graph.js +187 -0
  218. package/dist/tools/mail-graph.js.map +1 -0
  219. package/dist/tools/mail-rules.d.ts +20 -8
  220. package/dist/tools/mail-rules.d.ts.map +1 -1
  221. package/dist/tools/mail-rules.js +63 -7
  222. package/dist/tools/mail-rules.js.map +1 -1
  223. package/dist/tools/mail-send.d.ts +39 -27
  224. package/dist/tools/mail-send.d.ts.map +1 -1
  225. package/dist/tools/mail-send.js +249 -24
  226. package/dist/tools/mail-send.js.map +1 -1
  227. package/dist/tools/mail.d.ts +91 -68
  228. package/dist/tools/mail.d.ts.map +1 -1
  229. package/dist/tools/mail.js +232 -243
  230. package/dist/tools/mail.js.map +1 -1
  231. package/dist/tools/mailbox-organization.d.ts +51 -34
  232. package/dist/tools/mailbox-organization.d.ts.map +1 -1
  233. package/dist/tools/mailbox-organization.js +318 -35
  234. package/dist/tools/mailbox-organization.js.map +1 -1
  235. package/dist/tools/mailbox-settings.d.ts +59 -0
  236. package/dist/tools/mailbox-settings.d.ts.map +1 -0
  237. package/dist/tools/mailbox-settings.js +136 -0
  238. package/dist/tools/mailbox-settings.js.map +1 -0
  239. package/dist/tools/meetings.d.ts +24 -14
  240. package/dist/tools/meetings.d.ts.map +1 -1
  241. package/dist/tools/meetings.js +82 -6
  242. package/dist/tools/meetings.js.map +1 -1
  243. package/dist/tools/onedrive.d.ts +26 -16
  244. package/dist/tools/onedrive.d.ts.map +1 -1
  245. package/dist/tools/onedrive.js +140 -11
  246. package/dist/tools/onedrive.js.map +1 -1
  247. package/dist/tools/onenote.d.ts +63 -0
  248. package/dist/tools/onenote.d.ts.map +1 -0
  249. package/dist/tools/onenote.js +221 -0
  250. package/dist/tools/onenote.js.map +1 -0
  251. package/dist/tools/people.d.ts +10 -0
  252. package/dist/tools/people.d.ts.map +1 -1
  253. package/dist/tools/people.js +94 -0
  254. package/dist/tools/people.js.map +1 -1
  255. package/dist/tools/planner-visualization.d.ts +15 -5
  256. package/dist/tools/planner-visualization.d.ts.map +1 -1
  257. package/dist/tools/planner-visualization.js +58 -4
  258. package/dist/tools/planner-visualization.js.map +1 -1
  259. package/dist/tools/planner.d.ts +69 -39
  260. package/dist/tools/planner.d.ts.map +1 -1
  261. package/dist/tools/planner.js +231 -23
  262. package/dist/tools/planner.js.map +1 -1
  263. package/dist/tools/scheduling.d.ts +12 -0
  264. package/dist/tools/scheduling.d.ts.map +1 -1
  265. package/dist/tools/scheduling.js +38 -0
  266. package/dist/tools/scheduling.js.map +1 -1
  267. package/dist/tools/shared-mailbox.d.ts +164 -0
  268. package/dist/tools/shared-mailbox.d.ts.map +1 -0
  269. package/dist/tools/shared-mailbox.js +318 -0
  270. package/dist/tools/shared-mailbox.js.map +1 -0
  271. package/dist/tools/sharepoint-lists.d.ts +131 -0
  272. package/dist/tools/sharepoint-lists.d.ts.map +1 -0
  273. package/dist/tools/sharepoint-lists.js +246 -0
  274. package/dist/tools/sharepoint-lists.js.map +1 -0
  275. package/dist/tools/sharepoint.d.ts +24 -14
  276. package/dist/tools/sharepoint.d.ts.map +1 -1
  277. package/dist/tools/sharepoint.js +85 -9
  278. package/dist/tools/sharepoint.js.map +1 -1
  279. package/dist/tools/task-attachments.d.ts +17 -7
  280. package/dist/tools/task-attachments.d.ts.map +1 -1
  281. package/dist/tools/task-attachments.js +60 -4
  282. package/dist/tools/task-attachments.js.map +1 -1
  283. package/dist/tools/task-lists.d.ts +56 -0
  284. package/dist/tools/task-lists.d.ts.map +1 -0
  285. package/dist/tools/task-lists.js +155 -0
  286. package/dist/tools/task-lists.js.map +1 -0
  287. package/dist/tools/tasks-graph.d.ts +49 -0
  288. package/dist/tools/tasks-graph.d.ts.map +1 -0
  289. package/dist/tools/tasks-graph.js +193 -0
  290. package/dist/tools/tasks-graph.js.map +1 -0
  291. package/dist/tools/tasks.d.ts +121 -29
  292. package/dist/tools/tasks.d.ts.map +1 -1
  293. package/dist/tools/tasks.js +136 -84
  294. package/dist/tools/tasks.js.map +1 -1
  295. package/dist/tools/teams.d.ts +57 -46
  296. package/dist/tools/teams.d.ts.map +1 -1
  297. package/dist/tools/teams.js +288 -26
  298. package/dist/tools/teams.js.map +1 -1
  299. package/dist/tools/what-changed.d.ts +48 -0
  300. package/dist/tools/what-changed.d.ts.map +1 -0
  301. package/dist/tools/what-changed.js +149 -0
  302. package/dist/tools/what-changed.js.map +1 -0
  303. package/dist/types/calendar.d.ts +1 -1
  304. package/dist/types/calendar.d.ts.map +1 -1
  305. package/dist/types/calendar.js.map +1 -1
  306. package/dist/types/contacts.d.ts +1 -1
  307. package/dist/types/contacts.d.ts.map +1 -1
  308. package/dist/types/contacts.js.map +1 -1
  309. package/dist/types/mail.d.ts +1 -1
  310. package/dist/types/mail.d.ts.map +1 -1
  311. package/dist/types/mail.js.map +1 -1
  312. package/dist/utils/errors.d.ts +110 -38
  313. package/dist/utils/errors.d.ts.map +1 -1
  314. package/dist/utils/errors.js +239 -56
  315. package/dist/utils/errors.js.map +1 -1
  316. package/dist/visualization/types.d.ts +4 -4
  317. package/package.json +2 -3
  318. package/dist/applescript/account-repository.d.ts +0 -30
  319. package/dist/applescript/account-repository.d.ts.map +0 -1
  320. package/dist/applescript/account-repository.js +0 -38
  321. package/dist/applescript/account-repository.js.map +0 -1
  322. package/dist/applescript/account-scripts.d.ts +0 -21
  323. package/dist/applescript/account-scripts.d.ts.map +0 -1
  324. package/dist/applescript/account-scripts.js +0 -180
  325. package/dist/applescript/account-scripts.js.map +0 -1
  326. package/dist/applescript/calendar-manager.d.ts +0 -44
  327. package/dist/applescript/calendar-manager.d.ts.map +0 -1
  328. package/dist/applescript/calendar-manager.js +0 -92
  329. package/dist/applescript/calendar-manager.js.map +0 -1
  330. package/dist/applescript/calendar-writer.d.ts +0 -36
  331. package/dist/applescript/calendar-writer.d.ts.map +0 -1
  332. package/dist/applescript/calendar-writer.js +0 -94
  333. package/dist/applescript/calendar-writer.js.map +0 -1
  334. package/dist/applescript/content-readers.d.ts +0 -114
  335. package/dist/applescript/content-readers.d.ts.map +0 -1
  336. package/dist/applescript/content-readers.js +0 -328
  337. package/dist/applescript/content-readers.js.map +0 -1
  338. package/dist/applescript/executor.d.ts +0 -60
  339. package/dist/applescript/executor.d.ts.map +0 -1
  340. package/dist/applescript/executor.js +0 -173
  341. package/dist/applescript/executor.js.map +0 -1
  342. package/dist/applescript/index.d.ts +0 -20
  343. package/dist/applescript/index.d.ts.map +0 -1
  344. package/dist/applescript/index.js +0 -29
  345. package/dist/applescript/index.js.map +0 -1
  346. package/dist/applescript/mail-sender.d.ts +0 -38
  347. package/dist/applescript/mail-sender.d.ts.map +0 -1
  348. package/dist/applescript/mail-sender.js +0 -67
  349. package/dist/applescript/mail-sender.js.map +0 -1
  350. package/dist/applescript/parser.d.ts +0 -235
  351. package/dist/applescript/parser.d.ts.map +0 -1
  352. package/dist/applescript/parser.js +0 -496
  353. package/dist/applescript/parser.js.map +0 -1
  354. package/dist/applescript/repository.d.ts +0 -64
  355. package/dist/applescript/repository.d.ts.map +0 -1
  356. package/dist/applescript/repository.js +0 -444
  357. package/dist/applescript/repository.js.map +0 -1
  358. package/dist/applescript/scripts.d.ts +0 -265
  359. package/dist/applescript/scripts.d.ts.map +0 -1
  360. package/dist/applescript/scripts.js +0 -1483
  361. package/dist/applescript/scripts.js.map +0 -1
  362. package/dist/parsers/olk15.d.ts +0 -87
  363. package/dist/parsers/olk15.d.ts.map +0 -1
  364. package/dist/parsers/olk15.js +0 -368
  365. package/dist/parsers/olk15.js.map +0 -1
  366. package/dist/tools/notes.d.ts +0 -74
  367. package/dist/tools/notes.d.ts.map +0 -1
  368. package/dist/tools/notes.js +0 -136
  369. package/dist/tools/notes.js.map +0 -1
@@ -9,43 +9,49 @@
9
9
  * approval pattern for destructive delete operations.
10
10
  */
11
11
  import { z } from 'zod';
12
+ import { Id } from '../ids/schema.js';
13
+ import { nextActionFor } from '../ids/next-action.js';
14
+ import { defineTool } from '../registry/define-tool.js';
15
+ import { approvalTokenLink } from '../registry/elicit-links.js';
16
+ import { requireGraphToolset } from '../registry/context.js';
12
17
  // =============================================================================
13
18
  // Input Schemas
14
19
  // =============================================================================
20
+ export const NoInput = z.strictObject({});
15
21
  export const ListChannelsInput = z.strictObject({
16
- team_id: z.number().int().positive().describe('Team ID'),
22
+ team_id: Id.team,
17
23
  });
18
24
  export const GetChannelInput = z.strictObject({
19
- channel_id: z.number().int().positive().describe('Channel ID'),
25
+ channel_id: Id.channel,
20
26
  });
21
27
  export const CreateChannelInput = z.strictObject({
22
- team_id: z.number().int().positive().describe('Team ID'),
28
+ team_id: Id.team,
23
29
  name: z.string().min(1).describe('Channel name'),
24
30
  description: z.string().optional().describe('Channel description'),
25
31
  });
26
32
  export const UpdateChannelInput = z.strictObject({
27
- channel_id: z.number().int().positive().describe('Channel ID'),
33
+ channel_id: Id.channel,
28
34
  name: z.string().min(1).optional().describe('New name'),
29
35
  description: z.string().optional().describe('New description'),
30
36
  });
31
37
  export const PrepareDeleteChannelInput = z.strictObject({
32
- channel_id: z.number().int().positive().describe('Channel ID'),
38
+ channel_id: Id.channel,
33
39
  });
34
40
  export const ConfirmDeleteChannelInput = z.strictObject({
35
41
  approval_token: z.string().describe('Approval token from prepare_delete_channel'),
36
42
  });
37
43
  export const ListTeamMembersInput = z.strictObject({
38
- team_id: z.number().int().positive().describe('Team ID'),
44
+ team_id: Id.team,
39
45
  });
40
46
  export const ListChannelMessagesInput = z.strictObject({
41
- channel_id: z.number().int().positive().describe('Channel ID from list_channels'),
47
+ channel_id: Id.channel,
42
48
  limit: z.number().int().min(1).max(50).optional().describe('Max messages to return (default 25, max 50)'),
43
49
  });
44
50
  export const GetChannelMessageInput = z.strictObject({
45
- message_id: z.number().int().positive().describe('Message ID from list_channel_messages'),
51
+ message_id: Id.channelMessage,
46
52
  });
47
53
  export const PrepareSendChannelMessageInput = z.strictObject({
48
- channel_id: z.number().int().positive().describe('Channel ID to send message to'),
54
+ channel_id: Id.channel.describe('Channel ID (cn_ token) to send the message to.'),
49
55
  body: z.string().min(1).describe('Message body'),
50
56
  content_type: z.enum(['text', 'html']).optional().describe('Content type (default: html)'),
51
57
  });
@@ -53,7 +59,7 @@ export const ConfirmSendChannelMessageInput = z.strictObject({
53
59
  approval_token: z.string().describe('Approval token from prepare_send_channel_message'),
54
60
  });
55
61
  export const PrepareReplyChannelMessageInput = z.strictObject({
56
- message_id: z.number().int().positive().describe('Message ID to reply to'),
62
+ message_id: Id.channelMessage.describe('Channel message ID (xm_ token) to reply to.'),
57
63
  body: z.string().min(1).describe('Reply body'),
58
64
  content_type: z.enum(['text', 'html']).optional().describe('Content type (default: html)'),
59
65
  });
@@ -64,14 +70,14 @@ export const ListChatsInput = z.strictObject({
64
70
  limit: z.number().int().min(1).max(50).optional().describe('Max chats to return (default 25, max 50)'),
65
71
  });
66
72
  export const GetChatInput = z.strictObject({
67
- chat_id: z.number().int().positive().describe('Chat ID from list_chats'),
73
+ chat_id: Id.chat,
68
74
  });
69
75
  export const ListChatMessagesInput = z.strictObject({
70
- chat_id: z.number().int().positive().describe('Chat ID from list_chats'),
76
+ chat_id: Id.chat,
71
77
  limit: z.number().int().min(1).max(50).optional().describe('Max messages to return (default 25, max 50)'),
72
78
  });
73
79
  export const PrepareSendChatMessageInput = z.strictObject({
74
- chat_id: z.number().int().positive().describe('Chat ID to send message to'),
80
+ chat_id: Id.chat.describe('Chat ID (ch_ token) to send the message to.'),
75
81
  body: z.string().min(1).describe('Message body'),
76
82
  content_type: z.enum(['text', 'html']).optional().describe('Content type (default: html)'),
77
83
  });
@@ -79,14 +85,14 @@ export const ConfirmSendChatMessageInput = z.strictObject({
79
85
  approval_token: z.string().describe('Approval token from prepare_send_chat_message'),
80
86
  });
81
87
  export const ListChatMembersInput = z.strictObject({
82
- chat_id: z.number().int().positive().describe('Chat ID from list_chats'),
88
+ chat_id: Id.chat,
83
89
  });
84
90
  export const ListMessageReactionsInput = z.strictObject({
85
- message_id: z.number().describe('Numeric message ID'),
91
+ message_id: z.string().trim().min(1).describe('Message ID — a cm_ (chat) or xm_ (channel) token'),
86
92
  message_type: z.enum(['channel', 'chat']).describe('Whether this is a channel message or chat message'),
87
93
  });
88
94
  export const PrepareAddMessageReactionInput = z.strictObject({
89
- message_id: z.number().describe('Numeric message ID'),
95
+ message_id: z.string().trim().min(1).describe('Message ID — a cm_ (chat) or xm_ (channel) token'),
90
96
  message_type: z.enum(['channel', 'chat']).describe('Whether this is a channel message or chat message'),
91
97
  reaction_type: z.string().describe('Reaction emoji name (e.g., "like", "heart", "laugh", "surprised", "sad", "angry")'),
92
98
  });
@@ -94,7 +100,7 @@ export const ConfirmAddMessageReactionInput = z.strictObject({
94
100
  approval_token: z.string().describe('Approval token from prepare_add_message_reaction'),
95
101
  });
96
102
  export const RemoveMessageReactionInput = z.strictObject({
97
- message_id: z.number().describe('Numeric message ID'),
103
+ message_id: z.string().trim().min(1).describe('Message ID — a cm_ (chat) or xm_ (channel) token'),
98
104
  message_type: z.enum(['channel', 'chat']).describe('Whether this is a channel message or chat message'),
99
105
  reaction_type: z.string().describe('Reaction emoji name to remove'),
100
106
  });
@@ -116,7 +122,7 @@ export class TeamsTools {
116
122
  return {
117
123
  content: [{
118
124
  type: 'text',
119
- text: JSON.stringify({ teams }, null, 2),
125
+ text: JSON.stringify({ teams, next: nextActionFor('team') ?? undefined }, null, 2),
120
126
  }],
121
127
  };
122
128
  }
@@ -125,7 +131,7 @@ export class TeamsTools {
125
131
  return {
126
132
  content: [{
127
133
  type: 'text',
128
- text: JSON.stringify({ channels }, null, 2),
134
+ text: JSON.stringify({ channels, next: nextActionFor('channel') ?? undefined }, null, 2),
129
135
  }],
130
136
  };
131
137
  }
@@ -143,7 +149,7 @@ export class TeamsTools {
143
149
  return {
144
150
  content: [{
145
151
  type: 'text',
146
- text: JSON.stringify({ success: true, channel_id: channelId, message: 'Channel created' }, null, 2),
152
+ text: JSON.stringify({ success: true, channel_id: channelId, message: 'Channel created', next: nextActionFor('channel') ?? undefined }, null, 2),
147
153
  }],
148
154
  };
149
155
  }
@@ -213,7 +219,7 @@ export class TeamsTools {
213
219
  }],
214
220
  };
215
221
  }
216
- await this.repo.deleteChannelAsync(result.token.targetId);
222
+ await this.repo.deleteChannelAsync((result.token.targetId));
217
223
  return {
218
224
  content: [{
219
225
  type: 'text',
@@ -301,7 +307,7 @@ export class TeamsTools {
301
307
  };
302
308
  }
303
309
  const { body, contentType } = result.token.metadata;
304
- const messageId = await this.repo.sendChannelMessageAsync(result.token.targetId, body, contentType);
310
+ const messageId = await this.repo.sendChannelMessageAsync((result.token.targetId), body, contentType);
305
311
  return {
306
312
  content: [{
307
313
  type: 'text',
@@ -359,7 +365,7 @@ export class TeamsTools {
359
365
  };
360
366
  }
361
367
  const { body, contentType } = result.token.metadata;
362
- const replyId = await this.repo.replyToChannelMessageAsync(result.token.targetId, body, contentType);
368
+ const replyId = await this.repo.replyToChannelMessageAsync((result.token.targetId), body, contentType);
363
369
  return {
364
370
  content: [{
365
371
  type: 'text',
@@ -375,7 +381,7 @@ export class TeamsTools {
375
381
  return {
376
382
  content: [{
377
383
  type: 'text',
378
- text: JSON.stringify({ chats }, null, 2),
384
+ text: JSON.stringify({ chats, next: nextActionFor('chat') ?? undefined }, null, 2),
379
385
  }],
380
386
  };
381
387
  }
@@ -447,7 +453,7 @@ export class TeamsTools {
447
453
  };
448
454
  }
449
455
  const { body, contentType } = result.token.metadata;
450
- const messageId = await this.repo.sendChatMessageAsync(result.token.targetId, body, contentType);
456
+ const messageId = await this.repo.sendChatMessageAsync((result.token.targetId), body, contentType);
451
457
  return {
452
458
  content: [{
453
459
  type: 'text',
@@ -525,7 +531,7 @@ export class TeamsTools {
525
531
  };
526
532
  }
527
533
  const { reaction_type, message_type } = result.token.metadata;
528
- await this.repo.addMessageReactionAsync(result.token.targetId, message_type, reaction_type);
534
+ await this.repo.addMessageReactionAsync((result.token.targetId), message_type, reaction_type);
529
535
  return {
530
536
  content: [{
531
537
  type: 'text',
@@ -543,4 +549,260 @@ export class TeamsTools {
543
549
  };
544
550
  }
545
551
  }
552
+ // =============================================================================
553
+ // Registry Definitions (v3 registry-driven architecture, U2)
554
+ // =============================================================================
555
+ /**
556
+ * Registry tool definitions for the teams domain.
557
+ */
558
+ export function teamsToolDefinitions() {
559
+ const tools = (ctx) => requireGraphToolset(ctx, 'teams');
560
+ return [
561
+ defineTool({
562
+ name: 'list_teams',
563
+ description: 'List all Microsoft Teams the user has joined (Graph API)',
564
+ input: NoInput,
565
+ annotations: { readOnlyHint: true, openWorldHint: true },
566
+ destructive: false,
567
+ presets: ['teams'],
568
+ backends: ['graph'],
569
+ handler: (ctx) => tools(ctx).listTeams(),
570
+ }),
571
+ defineTool({
572
+ name: 'list_channels',
573
+ description: 'List all channels in a team (Graph API)',
574
+ input: ListChannelsInput,
575
+ annotations: { readOnlyHint: true, openWorldHint: true },
576
+ destructive: false,
577
+ presets: ['teams'],
578
+ backends: ['graph'],
579
+ handler: (ctx, params) => tools(ctx).listChannels(params),
580
+ }),
581
+ defineTool({
582
+ name: 'get_channel',
583
+ description: 'Get details for a specific channel (Graph API)',
584
+ input: GetChannelInput,
585
+ annotations: { readOnlyHint: true, openWorldHint: true },
586
+ destructive: false,
587
+ presets: ['teams'],
588
+ backends: ['graph'],
589
+ handler: (ctx, params) => tools(ctx).getChannel(params),
590
+ }),
591
+ defineTool({
592
+ name: 'create_channel',
593
+ description: 'Create a new channel in a team (Graph API)',
594
+ input: CreateChannelInput,
595
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
596
+ destructive: false,
597
+ presets: ['teams'],
598
+ backends: ['graph'],
599
+ handler: (ctx, params) => tools(ctx).createChannel(params),
600
+ }),
601
+ defineTool({
602
+ name: 'update_channel',
603
+ description: 'Update a channel name or description (Graph API)',
604
+ input: UpdateChannelInput,
605
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
606
+ destructive: false,
607
+ presets: ['teams'],
608
+ backends: ['graph'],
609
+ handler: (ctx, params) => tools(ctx).updateChannel(params),
610
+ }),
611
+ defineTool({
612
+ name: 'prepare_delete_channel',
613
+ description: 'Prepare to delete a channel. Returns an approval token. Call confirm_delete_channel to execute. (Graph API)',
614
+ input: PrepareDeleteChannelInput,
615
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
616
+ destructive: true,
617
+ presets: ['teams'],
618
+ backends: ['graph'],
619
+ handler: (ctx, params) => tools(ctx).prepareDeleteChannel(params),
620
+ onElicit: approvalTokenLink('confirm_delete_channel'),
621
+ }),
622
+ defineTool({
623
+ name: 'confirm_delete_channel',
624
+ description: 'Confirm channel deletion with approval token (Graph API)',
625
+ input: ConfirmDeleteChannelInput,
626
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
627
+ destructive: true,
628
+ presets: ['teams'],
629
+ backends: ['graph'],
630
+ handler: (ctx, params) => tools(ctx).confirmDeleteChannel(params),
631
+ }),
632
+ defineTool({
633
+ name: 'list_team_members',
634
+ description: 'List all members of a team (Graph API)',
635
+ input: ListTeamMembersInput,
636
+ annotations: { readOnlyHint: true, openWorldHint: true },
637
+ destructive: false,
638
+ presets: ['teams'],
639
+ backends: ['graph'],
640
+ handler: (ctx, params) => tools(ctx).listTeamMembers(params),
641
+ }),
642
+ defineTool({
643
+ name: 'list_channel_messages',
644
+ description: 'List recent messages in a channel (Graph API)',
645
+ input: ListChannelMessagesInput,
646
+ annotations: { readOnlyHint: true, openWorldHint: true },
647
+ destructive: false,
648
+ presets: ['teams'],
649
+ backends: ['graph'],
650
+ handler: (ctx, params) => tools(ctx).listChannelMessages(params),
651
+ }),
652
+ defineTool({
653
+ name: 'get_channel_message',
654
+ description: 'Get a specific channel message with its replies (Graph API)',
655
+ input: GetChannelMessageInput,
656
+ annotations: { readOnlyHint: true, openWorldHint: true },
657
+ destructive: false,
658
+ presets: ['teams'],
659
+ backends: ['graph'],
660
+ handler: (ctx, params) => tools(ctx).getChannelMessage(params),
661
+ }),
662
+ defineTool({
663
+ name: 'prepare_send_channel_message',
664
+ description: 'Prepare to send a message to a channel. Returns an approval token. Call confirm_send_channel_message to execute. (Graph API)',
665
+ input: PrepareSendChannelMessageInput,
666
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
667
+ destructive: true,
668
+ presets: ['teams'],
669
+ backends: ['graph'],
670
+ handler: (ctx, params) => tools(ctx).prepareSendChannelMessage(params),
671
+ onElicit: approvalTokenLink('confirm_send_channel_message'),
672
+ }),
673
+ defineTool({
674
+ name: 'confirm_send_channel_message',
675
+ description: 'Confirm sending a channel message with approval token (Graph API)',
676
+ input: ConfirmSendChannelMessageInput,
677
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
678
+ destructive: true,
679
+ presets: ['teams'],
680
+ backends: ['graph'],
681
+ handler: (ctx, params) => tools(ctx).confirmSendChannelMessage(params),
682
+ }),
683
+ defineTool({
684
+ name: 'prepare_reply_channel_message',
685
+ description: 'Prepare to reply to a channel message. Returns an approval token. Call confirm_reply_channel_message to execute. (Graph API)',
686
+ input: PrepareReplyChannelMessageInput,
687
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
688
+ destructive: true,
689
+ presets: ['teams'],
690
+ backends: ['graph'],
691
+ handler: (ctx, params) => tools(ctx).prepareReplyChannelMessage(params),
692
+ onElicit: approvalTokenLink('confirm_reply_channel_message'),
693
+ }),
694
+ defineTool({
695
+ name: 'confirm_reply_channel_message',
696
+ description: 'Confirm replying to a channel message with approval token (Graph API)',
697
+ input: ConfirmReplyChannelMessageInput,
698
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
699
+ destructive: true,
700
+ presets: ['teams'],
701
+ backends: ['graph'],
702
+ handler: (ctx, params) => tools(ctx).confirmReplyChannelMessage(params),
703
+ }),
704
+ defineTool({
705
+ name: 'list_chats',
706
+ description: 'List recent 1:1 and group chats (Graph API)',
707
+ input: ListChatsInput,
708
+ annotations: { readOnlyHint: true, openWorldHint: true },
709
+ destructive: false,
710
+ presets: ['teams'],
711
+ backends: ['graph'],
712
+ handler: (ctx, params) => tools(ctx).listChats(params),
713
+ }),
714
+ defineTool({
715
+ name: 'get_chat',
716
+ description: 'Get details of a specific chat (Graph API)',
717
+ input: GetChatInput,
718
+ annotations: { readOnlyHint: true, openWorldHint: true },
719
+ destructive: false,
720
+ presets: ['teams'],
721
+ backends: ['graph'],
722
+ handler: (ctx, params) => tools(ctx).getChat(params),
723
+ }),
724
+ defineTool({
725
+ name: 'list_chat_messages',
726
+ description: 'List recent messages in a chat (Graph API)',
727
+ input: ListChatMessagesInput,
728
+ annotations: { readOnlyHint: true, openWorldHint: true },
729
+ destructive: false,
730
+ presets: ['teams'],
731
+ backends: ['graph'],
732
+ handler: (ctx, params) => tools(ctx).listChatMessages(params),
733
+ }),
734
+ defineTool({
735
+ name: 'prepare_send_chat_message',
736
+ description: 'Prepare to send a message in a chat. Returns an approval token. Call confirm_send_chat_message to execute. (Graph API)',
737
+ input: PrepareSendChatMessageInput,
738
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
739
+ destructive: true,
740
+ presets: ['teams'],
741
+ backends: ['graph'],
742
+ handler: (ctx, params) => tools(ctx).prepareSendChatMessage(params),
743
+ onElicit: approvalTokenLink('confirm_send_chat_message'),
744
+ }),
745
+ defineTool({
746
+ name: 'confirm_send_chat_message',
747
+ description: 'Confirm sending a chat message with approval token (Graph API)',
748
+ input: ConfirmSendChatMessageInput,
749
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
750
+ destructive: true,
751
+ presets: ['teams'],
752
+ backends: ['graph'],
753
+ handler: (ctx, params) => tools(ctx).confirmSendChatMessage(params),
754
+ }),
755
+ defineTool({
756
+ name: 'list_chat_members',
757
+ description: 'List members of a chat (Graph API)',
758
+ input: ListChatMembersInput,
759
+ annotations: { readOnlyHint: true, openWorldHint: true },
760
+ destructive: false,
761
+ presets: ['teams'],
762
+ backends: ['graph'],
763
+ handler: (ctx, params) => tools(ctx).listChatMembers(params),
764
+ }),
765
+ defineTool({
766
+ name: 'list_message_reactions',
767
+ description: 'List reactions on a channel or chat message (Graph API)',
768
+ input: ListMessageReactionsInput,
769
+ annotations: { readOnlyHint: true, openWorldHint: true },
770
+ destructive: false,
771
+ presets: ['teams'],
772
+ backends: ['graph'],
773
+ handler: (ctx, params) => tools(ctx).listMessageReactions(params),
774
+ }),
775
+ defineTool({
776
+ name: 'prepare_add_message_reaction',
777
+ description: 'Prepare to add a reaction to a message. Returns an approval token. Call confirm_add_message_reaction to execute. (Graph API)',
778
+ input: PrepareAddMessageReactionInput,
779
+ annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: true },
780
+ destructive: true,
781
+ presets: ['teams'],
782
+ backends: ['graph'],
783
+ handler: (ctx, params) => tools(ctx).prepareAddMessageReaction(params),
784
+ onElicit: approvalTokenLink('confirm_add_message_reaction'),
785
+ }),
786
+ defineTool({
787
+ name: 'confirm_add_message_reaction',
788
+ description: 'Confirm adding a reaction to a message with approval token (Graph API)',
789
+ input: ConfirmAddMessageReactionInput,
790
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
791
+ destructive: true,
792
+ presets: ['teams'],
793
+ backends: ['graph'],
794
+ handler: (ctx, params) => tools(ctx).confirmAddMessageReaction(params),
795
+ }),
796
+ defineTool({
797
+ name: 'remove_message_reaction',
798
+ description: 'Remove your own reaction from a channel or chat message (Graph API)',
799
+ input: RemoveMessageReactionInput,
800
+ annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
801
+ destructive: true,
802
+ presets: ['teams'],
803
+ backends: ['graph'],
804
+ handler: (ctx, params) => tools(ctx).removeMessageReaction(params),
805
+ }),
806
+ ];
807
+ }
546
808
  //# sourceMappingURL=teams.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"teams.js","sourceRoot":"","sources":["../../src/tools/teams.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"teams.js","sourceRoot":"","sources":["../../src/tools/teams.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Copyright (c) 2026 JBC Tech Solutions, LLC
3
+ * Licensed under the MIT License. See LICENSE file in the project root.
4
+ */
5
+ /**
6
+ * Delta-sync "what changed" MCP tools (U12).
7
+ *
8
+ * `what_changed` runs Microsoft Graph delta queries against a local mirror and
9
+ * reports what was added / updated / deleted since the previous call. The first
10
+ * call per resource establishes a baseline (no per-item changes). Surfaced ids
11
+ * are durable self-encoding tokens (`em_` mail, `ev_` events).
12
+ *
13
+ * `reset_change_tracking` clears the local cursor + mirror so the next call
14
+ * re-baselines — a local-only operation that never touches the user's mailbox.
15
+ */
16
+ import { z } from 'zod';
17
+ import type { ToolDefinition, ToolResult } from '../registry/types.js';
18
+ import type { GraphClient } from '../graph/client/index.js';
19
+ import type { StateStore } from '../state/store.js';
20
+ declare module '../registry/types.js' {
21
+ interface GraphToolsets {
22
+ delta: DeltaTools;
23
+ }
24
+ }
25
+ export declare const WhatChangedInput: z.ZodObject<{
26
+ resources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
27
+ calendar: "calendar";
28
+ mail: "mail";
29
+ }>>>;
30
+ max_items_per_resource: z.ZodOptional<z.ZodNumber>;
31
+ }, z.core.$strict>;
32
+ export declare const ResetChangeTrackingInput: z.ZodObject<{
33
+ resources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
34
+ calendar: "calendar";
35
+ mail: "mail";
36
+ }>>>;
37
+ }, z.core.$strict>;
38
+ export type WhatChangedParams = z.infer<typeof WhatChangedInput>;
39
+ export type ResetChangeTrackingParams = z.infer<typeof ResetChangeTrackingInput>;
40
+ export declare class DeltaTools {
41
+ private readonly mirror;
42
+ constructor(client: GraphClient, store: StateStore, accountId: () => string);
43
+ whatChanged(params: WhatChangedParams): Promise<ToolResult>;
44
+ resetChangeTracking(params: ResetChangeTrackingParams): ToolResult;
45
+ }
46
+ /** Registry tool definitions for the delta-sync domain. */
47
+ export declare function deltaToolDefinitions(): ToolDefinition[];
48
+ //# sourceMappingURL=what-changed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"what-changed.d.ts","sourceRoot":"","sources":["../../src/tools/what-changed.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAe,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AASpD,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,aAAa;QACrB,KAAK,EAAE,UAAU,CAAC;KACnB;CACF;AAQD,eAAO,MAAM,gBAAgB;;;;;;kBAa3B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;kBAMnC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACjE,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAYjF,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;gBAEzB,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,MAAM;IAIrE,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;IAkDjE,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,UAAU;CAcnE;AAMD,2DAA2D;AAC3D,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CA2BvD"}