@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
@@ -12,72 +12,81 @@ import { z } from 'zod';
12
12
  import { hashEmailForApproval, hashFolderForApproval, } from '../approval/index.js';
13
13
  import { ApprovalExpiredError, ApprovalInvalidError, TargetChangedError, NotFoundError, } from '../utils/errors.js';
14
14
  import { appleTimestampToIso } from '../utils/dates.js';
15
+ import { defineTool } from '../registry/define-tool.js';
16
+ import { batchLink, tokenIdLink } from '../registry/elicit-links.js';
17
+ import { requireGraphToolset } from '../registry/context.js';
18
+ import { Id } from '../ids/schema.js';
15
19
  // =============================================================================
16
20
  // Input Schemas — Destructive Operations (Two-Phase)
17
21
  // =============================================================================
22
+ /**
23
+ * Shared email id schema (U6): the canonical `em_` message-id schema. A legacy
24
+ * numeric id resolves to NUMERIC_ID_UNSUPPORTED.
25
+ */
26
+ const EmailIdSchema = Id.message;
18
27
  export const PrepareDeleteEmailInput = z.strictObject({
19
- email_id: z.number().int().positive().describe('The email ID to delete'),
28
+ email_id: EmailIdSchema.describe('The email ID to delete'),
20
29
  });
21
30
  export const ConfirmDeleteEmailInput = z.strictObject({
22
31
  token_id: z.uuid().describe('The approval token from prepare_delete_email'),
23
- email_id: z.number().int().positive().describe('The email ID to delete'),
32
+ email_id: EmailIdSchema.describe('The email ID to delete'),
24
33
  });
25
34
  export const PrepareMoveEmailInput = z.strictObject({
26
- email_id: z.number().int().positive().describe('The email ID to move'),
27
- destination_folder_id: z.number().int().positive().describe('The destination folder ID'),
35
+ email_id: EmailIdSchema.describe('The email ID to move'),
36
+ destination_folder_id: Id.folder.describe('The destination folder — a `fd_` token from list_folders.'),
28
37
  });
29
38
  export const ConfirmMoveEmailInput = z.strictObject({
30
39
  token_id: z.uuid().describe('The approval token from prepare_move_email'),
31
- email_id: z.number().int().positive().describe('The email ID to move'),
40
+ email_id: EmailIdSchema.describe('The email ID to move'),
32
41
  });
33
42
  export const PrepareArchiveEmailInput = z.strictObject({
34
- email_id: z.number().int().positive().describe('The email ID to archive'),
43
+ email_id: EmailIdSchema.describe('The email ID to archive'),
35
44
  });
36
45
  export const ConfirmArchiveEmailInput = z.strictObject({
37
46
  token_id: z.uuid().describe('The approval token from prepare_archive_email'),
38
- email_id: z.number().int().positive().describe('The email ID to archive'),
47
+ email_id: EmailIdSchema.describe('The email ID to archive'),
39
48
  });
40
49
  export const PrepareJunkEmailInput = z.strictObject({
41
- email_id: z.number().int().positive().describe('The email ID to mark as junk'),
50
+ email_id: EmailIdSchema.describe('The email ID to mark as junk'),
42
51
  });
43
52
  export const ConfirmJunkEmailInput = z.strictObject({
44
53
  token_id: z.uuid().describe('The approval token from prepare_junk_email'),
45
- email_id: z.number().int().positive().describe('The email ID to mark as junk'),
54
+ email_id: EmailIdSchema.describe('The email ID to mark as junk'),
46
55
  });
47
56
  export const PrepareDeleteFolderInput = z.strictObject({
48
- folder_id: z.number().int().positive().describe('The folder ID to delete'),
57
+ folder_id: Id.folder.describe('The folder to delete — a `fd_` token from list_folders.'),
49
58
  });
50
59
  export const ConfirmDeleteFolderInput = z.strictObject({
51
60
  token_id: z.uuid().describe('The approval token from prepare_delete_folder'),
52
- folder_id: z.number().int().positive().describe('The folder ID to delete'),
61
+ folder_id: Id.folder.describe('The folder to delete — a `fd_` token from list_folders.'),
53
62
  });
54
63
  export const PrepareEmptyFolderInput = z.strictObject({
55
- folder_id: z.number().int().positive().describe('The folder ID to empty'),
64
+ folder_id: Id.folder.describe('The folder to empty — a `fd_` token from list_folders.'),
56
65
  });
57
66
  export const ConfirmEmptyFolderInput = z.strictObject({
58
67
  token_id: z.uuid().describe('The approval token from prepare_empty_folder'),
59
- folder_id: z.number().int().positive().describe('The folder ID to empty'),
68
+ folder_id: Id.folder.describe('The folder to empty — a `fd_` token from list_folders.'),
60
69
  });
61
70
  export const PrepareBatchDeleteEmailsInput = z.strictObject({
62
71
  email_ids: z
63
- .array(z.number().int().positive())
72
+ .array(EmailIdSchema)
64
73
  .min(1)
65
74
  .max(50)
66
75
  .describe('The email IDs to delete (max 50)'),
67
76
  });
68
77
  export const PrepareBatchMoveEmailsInput = z.strictObject({
69
78
  email_ids: z
70
- .array(z.number().int().positive())
79
+ .array(EmailIdSchema)
71
80
  .min(1)
72
81
  .max(50)
73
82
  .describe('The email IDs to move (max 50)'),
74
- destination_folder_id: z.number().int().positive().describe('The destination folder ID'),
83
+ destination_folder_id: Id.folder.describe('The destination folder — a `fd_` token from list_folders.'),
75
84
  });
76
85
  export const ConfirmBatchOperationInput = z.strictObject({
77
86
  tokens: z
78
87
  .array(z.object({
79
88
  token_id: z.uuid().describe('The approval token'),
80
- email_id: z.number().int().positive().describe('The email ID'),
89
+ email_id: EmailIdSchema.describe('The email ID'),
81
90
  }))
82
91
  .min(1)
83
92
  .max(50)
@@ -87,13 +96,13 @@ export const ConfirmBatchOperationInput = z.strictObject({
87
96
  // Input Schemas — Low-Risk Modifications (Single Tool)
88
97
  // =============================================================================
89
98
  export const MarkEmailReadInput = z.strictObject({
90
- email_id: z.number().int().positive().describe('The email ID to mark as read'),
99
+ email_id: EmailIdSchema.describe('The email ID to mark as read'),
91
100
  });
92
101
  export const MarkEmailUnreadInput = z.strictObject({
93
- email_id: z.number().int().positive().describe('The email ID to mark as unread'),
102
+ email_id: EmailIdSchema.describe('The email ID to mark as unread'),
94
103
  });
95
104
  export const SetEmailFlagInput = z.strictObject({
96
- email_id: z.number().int().positive().describe('The email ID to flag'),
105
+ email_id: EmailIdSchema.describe('The email ID to flag'),
97
106
  flag_status: z
98
107
  .number()
99
108
  .int()
@@ -102,16 +111,16 @@ export const SetEmailFlagInput = z.strictObject({
102
111
  .describe('Flag status: 0=not flagged, 1=flagged, 2=completed'),
103
112
  });
104
113
  export const ClearEmailFlagInput = z.strictObject({
105
- email_id: z.number().int().positive().describe('The email ID to clear the flag from'),
114
+ email_id: EmailIdSchema.describe('The email ID to clear the flag from'),
106
115
  });
107
116
  export const SetEmailCategoriesInput = z.strictObject({
108
- email_id: z.number().int().positive().describe('The email ID'),
117
+ email_id: EmailIdSchema.describe('The email ID'),
109
118
  categories: z
110
119
  .array(z.string().min(1))
111
120
  .describe('Categories to set (replaces existing). Use empty array to clear.'),
112
121
  });
113
122
  export const SetEmailImportanceInput = z.strictObject({
114
- email_id: z.number().int().positive().describe('The email ID'),
123
+ email_id: EmailIdSchema.describe('The email ID'),
115
124
  importance: z.enum(['low', 'normal', 'high']).describe('Email importance level'),
116
125
  });
117
126
  // =============================================================================
@@ -120,23 +129,18 @@ export const SetEmailImportanceInput = z.strictObject({
120
129
  export const CreateFolderInput = z.strictObject({
121
130
  name: z.string().min(1).max(255).describe('Name for the new folder'),
122
131
  parent_folder_id: z
123
- .number()
124
- .int()
125
- .positive()
132
+ .string()
133
+ .min(1)
126
134
  .optional()
127
135
  .describe('Optional parent folder ID (creates top-level if omitted)'),
128
136
  });
129
137
  export const RenameFolderInput = z.strictObject({
130
- folder_id: z.number().int().positive().describe('The folder ID to rename'),
138
+ folder_id: Id.folder.describe('The folder to rename — a `fd_` token from list_folders.'),
131
139
  new_name: z.string().min(1).max(255).describe('The new folder name'),
132
140
  });
133
141
  export const MoveFolderInput = z.strictObject({
134
- folder_id: z.number().int().positive().describe('The folder ID to move'),
135
- destination_parent_id: z
136
- .number()
137
- .int()
138
- .positive()
139
- .describe('The destination parent folder ID'),
142
+ folder_id: Id.folder.describe('The folder to move — a `fd_` token from list_folders.'),
143
+ destination_parent_id: Id.folder.describe('The destination parent folder — a `fd_` token from list_folders.'),
140
144
  });
141
145
  // =============================================================================
142
146
  // Preview Helpers
@@ -184,8 +188,8 @@ function throwValidationError(error) {
184
188
  /**
185
189
  * Mailbox organization tools with two-phase approval for destructive ops.
186
190
  *
187
- * Works with both sync (AppleScript) and async (Graph) backends via
188
- * the IMailboxRepository interface and MaybePromise return types.
191
+ * Works against the Graph backend via the IMailboxRepository interface and
192
+ * MaybePromise return types.
189
193
  */
190
194
  export class MailboxOrganizationTools {
191
195
  repository;
@@ -538,4 +542,283 @@ export class MailboxOrganizationTools {
538
542
  export function createMailboxOrganizationTools(repository, tokenManager) {
539
543
  return new MailboxOrganizationTools(repository, tokenManager);
540
544
  }
545
+ // =============================================================================
546
+ // Registry Definitions (v3 registry-driven architecture, U2 — dual backend)
547
+ // =============================================================================
548
+ function jsonResult(data) {
549
+ return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
550
+ }
551
+ /** Resolves the org toolset from the Graph toolset bag. */
552
+ function orgToolsFor(ctx) {
553
+ return requireGraphToolset(ctx, 'mailboxOrg');
554
+ }
555
+ const PREPARE_ANNOTATIONS = { readOnlyHint: false, destructiveHint: false, openWorldHint: true };
556
+ const CONFIRM_ANNOTATIONS = { readOnlyHint: false, destructiveHint: true, openWorldHint: true };
557
+ const WRITE_ANNOTATIONS = { readOnlyHint: false, destructiveHint: false, openWorldHint: true };
558
+ /**
559
+ * Registry tool definitions for the mailbox-organization domain. Every handler
560
+ * resolves the shared MailboxOrganizationTools instance for the active backend
561
+ * and wraps its raw result to match the pre-registry dispatch behavior exactly.
562
+ *
563
+ * Note: the batch tools (prepare_batch_delete_emails, prepare_batch_move_emails)
564
+ * pair many-to-one with a single confirm_batch_operation rather than a 1:1
565
+ * confirm_batch_* tool. The contract harness's prepare/confirm invariant carries
566
+ * an explicit exception for this batch pairing.
567
+ */
568
+ export function mailboxOrganizationToolDefinitions() {
569
+ return [
570
+ // ---- Destructive two-phase (prepare/confirm pairs) ----
571
+ defineTool({
572
+ name: 'prepare_delete_email',
573
+ description: 'Prepare to delete an email (move to trash). Returns a preview and approval token. Call confirm_delete_email to execute.',
574
+ input: PrepareDeleteEmailInput,
575
+ annotations: PREPARE_ANNOTATIONS,
576
+ destructive: true,
577
+ presets: ['mail'],
578
+ backends: ['graph'],
579
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareDeleteEmail(params)),
580
+ onElicit: tokenIdLink('confirm_delete_email', ['email_id']),
581
+ }),
582
+ defineTool({
583
+ name: 'confirm_delete_email',
584
+ description: 'Confirm deletion of an email using a token from prepare_delete_email',
585
+ input: ConfirmDeleteEmailInput,
586
+ annotations: CONFIRM_ANNOTATIONS,
587
+ destructive: true,
588
+ presets: ['mail'],
589
+ backends: ['graph'],
590
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmDeleteEmail(params)),
591
+ }),
592
+ defineTool({
593
+ name: 'prepare_move_email',
594
+ description: 'Prepare to move an email to another folder. Returns a preview and approval token. Call confirm_move_email to execute.',
595
+ input: PrepareMoveEmailInput,
596
+ annotations: PREPARE_ANNOTATIONS,
597
+ destructive: true,
598
+ presets: ['mail'],
599
+ backends: ['graph'],
600
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareMoveEmail(params)),
601
+ onElicit: tokenIdLink('confirm_move_email', ['email_id']),
602
+ }),
603
+ defineTool({
604
+ name: 'confirm_move_email',
605
+ description: 'Confirm moving an email using a token from prepare_move_email',
606
+ input: ConfirmMoveEmailInput,
607
+ annotations: CONFIRM_ANNOTATIONS,
608
+ destructive: true,
609
+ presets: ['mail'],
610
+ backends: ['graph'],
611
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmMoveEmail(params)),
612
+ }),
613
+ defineTool({
614
+ name: 'prepare_archive_email',
615
+ description: 'Prepare to archive an email. Returns a preview and approval token. Call confirm_archive_email to execute.',
616
+ input: PrepareArchiveEmailInput,
617
+ annotations: PREPARE_ANNOTATIONS,
618
+ destructive: true,
619
+ presets: ['mail'],
620
+ backends: ['graph'],
621
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareArchiveEmail(params)),
622
+ onElicit: tokenIdLink('confirm_archive_email', ['email_id']),
623
+ }),
624
+ defineTool({
625
+ name: 'confirm_archive_email',
626
+ description: 'Confirm archiving an email using a token from prepare_archive_email',
627
+ input: ConfirmArchiveEmailInput,
628
+ annotations: CONFIRM_ANNOTATIONS,
629
+ destructive: true,
630
+ presets: ['mail'],
631
+ backends: ['graph'],
632
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmArchiveEmail(params)),
633
+ }),
634
+ defineTool({
635
+ name: 'prepare_junk_email',
636
+ description: 'Prepare to mark an email as junk. Returns a preview and approval token. Call confirm_junk_email to execute.',
637
+ input: PrepareJunkEmailInput,
638
+ annotations: PREPARE_ANNOTATIONS,
639
+ destructive: true,
640
+ presets: ['mail'],
641
+ backends: ['graph'],
642
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareJunkEmail(params)),
643
+ onElicit: tokenIdLink('confirm_junk_email', ['email_id']),
644
+ }),
645
+ defineTool({
646
+ name: 'confirm_junk_email',
647
+ description: 'Confirm marking an email as junk using a token from prepare_junk_email',
648
+ input: ConfirmJunkEmailInput,
649
+ annotations: CONFIRM_ANNOTATIONS,
650
+ destructive: true,
651
+ presets: ['mail'],
652
+ backends: ['graph'],
653
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmJunkEmail(params)),
654
+ }),
655
+ defineTool({
656
+ name: 'prepare_delete_folder',
657
+ description: 'Prepare to delete a mail folder. Returns a preview and approval token. Call confirm_delete_folder to execute.',
658
+ input: PrepareDeleteFolderInput,
659
+ annotations: PREPARE_ANNOTATIONS,
660
+ destructive: true,
661
+ presets: ['mail'],
662
+ backends: ['graph'],
663
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareDeleteFolder(params)),
664
+ onElicit: tokenIdLink('confirm_delete_folder', ['folder_id']),
665
+ }),
666
+ defineTool({
667
+ name: 'confirm_delete_folder',
668
+ description: 'Confirm deletion of a folder using a token from prepare_delete_folder',
669
+ input: ConfirmDeleteFolderInput,
670
+ annotations: CONFIRM_ANNOTATIONS,
671
+ destructive: true,
672
+ presets: ['mail'],
673
+ backends: ['graph'],
674
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmDeleteFolder(params)),
675
+ }),
676
+ defineTool({
677
+ name: 'prepare_empty_folder',
678
+ description: 'Prepare to empty a mail folder (delete all messages). Returns a preview and approval token. Call confirm_empty_folder to execute.',
679
+ input: PrepareEmptyFolderInput,
680
+ annotations: PREPARE_ANNOTATIONS,
681
+ destructive: true,
682
+ presets: ['mail'],
683
+ backends: ['graph'],
684
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareEmptyFolder(params)),
685
+ onElicit: tokenIdLink('confirm_empty_folder', ['folder_id']),
686
+ }),
687
+ defineTool({
688
+ name: 'confirm_empty_folder',
689
+ description: 'Confirm emptying a folder using a token from prepare_empty_folder',
690
+ input: ConfirmEmptyFolderInput,
691
+ annotations: CONFIRM_ANNOTATIONS,
692
+ destructive: true,
693
+ presets: ['mail'],
694
+ backends: ['graph'],
695
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmEmptyFolder(params)),
696
+ }),
697
+ // ---- Batch destructive operations (many-to-one confirm) ----
698
+ defineTool({
699
+ name: 'prepare_batch_delete_emails',
700
+ description: 'Prepare to delete multiple emails. Returns individual tokens per email so you can selectively confirm. Call confirm_batch_operation to execute.',
701
+ input: PrepareBatchDeleteEmailsInput,
702
+ annotations: PREPARE_ANNOTATIONS,
703
+ destructive: true,
704
+ presets: ['mail'],
705
+ backends: ['graph'],
706
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareBatchDeleteEmails(params)),
707
+ onElicit: batchLink('confirm_batch_operation'),
708
+ }),
709
+ defineTool({
710
+ name: 'prepare_batch_move_emails',
711
+ description: 'Prepare to move multiple emails. Returns individual tokens per email so you can selectively confirm. Call confirm_batch_operation to execute.',
712
+ input: PrepareBatchMoveEmailsInput,
713
+ annotations: PREPARE_ANNOTATIONS,
714
+ destructive: true,
715
+ presets: ['mail'],
716
+ backends: ['graph'],
717
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).prepareBatchMoveEmails(params)),
718
+ onElicit: batchLink('confirm_batch_operation'),
719
+ }),
720
+ defineTool({
721
+ name: 'confirm_batch_operation',
722
+ description: 'Confirm a batch operation using tokens from prepare_batch_delete_emails or prepare_batch_move_emails. You may selectively confirm by omitting tokens.',
723
+ input: ConfirmBatchOperationInput,
724
+ annotations: CONFIRM_ANNOTATIONS,
725
+ destructive: true,
726
+ presets: ['mail'],
727
+ backends: ['graph'],
728
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).confirmBatchOperation(params)),
729
+ }),
730
+ // ---- Low-risk modifications ----
731
+ defineTool({
732
+ name: 'mark_email_read',
733
+ description: 'Mark an email as read',
734
+ input: MarkEmailReadInput,
735
+ annotations: WRITE_ANNOTATIONS,
736
+ destructive: false,
737
+ presets: ['mail'],
738
+ backends: ['graph'],
739
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).markEmailRead(params)),
740
+ }),
741
+ defineTool({
742
+ name: 'mark_email_unread',
743
+ description: 'Mark an email as unread',
744
+ input: MarkEmailUnreadInput,
745
+ annotations: WRITE_ANNOTATIONS,
746
+ destructive: false,
747
+ presets: ['mail'],
748
+ backends: ['graph'],
749
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).markEmailUnread(params)),
750
+ }),
751
+ defineTool({
752
+ name: 'set_email_flag',
753
+ description: 'Set a follow-up flag on an email',
754
+ input: SetEmailFlagInput,
755
+ annotations: WRITE_ANNOTATIONS,
756
+ destructive: false,
757
+ presets: ['mail'],
758
+ backends: ['graph'],
759
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).setEmailFlag(params)),
760
+ }),
761
+ defineTool({
762
+ name: 'clear_email_flag',
763
+ description: 'Clear the follow-up flag from an email',
764
+ input: ClearEmailFlagInput,
765
+ annotations: WRITE_ANNOTATIONS,
766
+ destructive: false,
767
+ presets: ['mail'],
768
+ backends: ['graph'],
769
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).clearEmailFlag(params)),
770
+ }),
771
+ defineTool({
772
+ name: 'set_email_categories',
773
+ description: 'Set categories on an email (replaces existing categories)',
774
+ input: SetEmailCategoriesInput,
775
+ annotations: WRITE_ANNOTATIONS,
776
+ destructive: false,
777
+ presets: ['mail'],
778
+ backends: ['graph'],
779
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).setEmailCategories(params)),
780
+ }),
781
+ defineTool({
782
+ name: 'set_email_importance',
783
+ description: 'Set email importance/priority level (Graph API)',
784
+ input: SetEmailImportanceInput,
785
+ annotations: WRITE_ANNOTATIONS,
786
+ destructive: false,
787
+ presets: ['mail'],
788
+ backends: ['graph'],
789
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).setEmailImportance(params)),
790
+ }),
791
+ // ---- Non-destructive folder operations ----
792
+ defineTool({
793
+ name: 'create_folder',
794
+ description: 'Create a new mail folder',
795
+ input: CreateFolderInput,
796
+ annotations: WRITE_ANNOTATIONS,
797
+ destructive: false,
798
+ presets: ['mail'],
799
+ backends: ['graph'],
800
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).createFolder(params)),
801
+ }),
802
+ defineTool({
803
+ name: 'rename_folder',
804
+ description: 'Rename a mail folder',
805
+ input: RenameFolderInput,
806
+ annotations: WRITE_ANNOTATIONS,
807
+ destructive: false,
808
+ presets: ['mail'],
809
+ backends: ['graph'],
810
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).renameFolder(params)),
811
+ }),
812
+ defineTool({
813
+ name: 'move_folder',
814
+ description: 'Move a mail folder under a different parent',
815
+ input: MoveFolderInput,
816
+ annotations: WRITE_ANNOTATIONS,
817
+ destructive: false,
818
+ presets: ['mail'],
819
+ backends: ['graph'],
820
+ handler: async (ctx, params) => jsonResult(await orgToolsFor(ctx).moveFolder(params)),
821
+ }),
822
+ ];
823
+ }
541
824
  //# sourceMappingURL=mailbox-organization.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mailbox-organization.js","sourceRoot":"","sources":["../../src/tools/mailbox-organization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailbox-organization.js","sourceRoot":"","sources":["../../src/tools/mailbox-organization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
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
+ * Graph-backend mailbox settings tools (v3 registry-driven architecture, U2).
7
+ * Holds the automatic-replies (out-of-office) and mailbox-settings logic that
8
+ * previously lived inline in the `handleGraphToolCall` switch.
9
+ */
10
+ import { z } from 'zod';
11
+ import type { GraphRepository } from '../graph/repository.js';
12
+ import type { ToolDefinition, ToolResult } from '../registry/types.js';
13
+ declare module '../registry/types.js' {
14
+ interface GraphToolsets {
15
+ mailboxSettings: GraphMailboxSettingsTools;
16
+ }
17
+ }
18
+ export declare const GetAutomaticRepliesInput: z.ZodObject<{}, z.core.$strict>;
19
+ export declare const SetAutomaticRepliesInput: z.ZodObject<{
20
+ status: z.ZodEnum<{
21
+ disabled: "disabled";
22
+ alwaysEnabled: "alwaysEnabled";
23
+ scheduled: "scheduled";
24
+ }>;
25
+ external_audience: z.ZodOptional<z.ZodEnum<{
26
+ none: "none";
27
+ contactsOnly: "contactsOnly";
28
+ all: "all";
29
+ }>>;
30
+ internal_reply_message: z.ZodOptional<z.ZodString>;
31
+ external_reply_message: z.ZodOptional<z.ZodString>;
32
+ scheduled_start: z.ZodOptional<z.ZodString>;
33
+ scheduled_end: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strict>;
35
+ export declare const GetMailboxSettingsInput: z.ZodObject<{}, z.core.$strict>;
36
+ export declare const UpdateMailboxSettingsInput: z.ZodObject<{
37
+ language: z.ZodOptional<z.ZodString>;
38
+ time_zone: z.ZodOptional<z.ZodString>;
39
+ date_format: z.ZodOptional<z.ZodString>;
40
+ time_format: z.ZodOptional<z.ZodString>;
41
+ }, z.core.$strict>;
42
+ export type SetAutomaticRepliesParams = z.infer<typeof SetAutomaticRepliesInput>;
43
+ export type UpdateMailboxSettingsParams = z.infer<typeof UpdateMailboxSettingsInput>;
44
+ /**
45
+ * Mailbox settings tools (automatic replies + mailbox settings).
46
+ */
47
+ export declare class GraphMailboxSettingsTools {
48
+ private readonly repository;
49
+ constructor(repository: GraphRepository);
50
+ getAutomaticReplies(): Promise<ToolResult>;
51
+ setAutomaticReplies(params: SetAutomaticRepliesParams): Promise<ToolResult>;
52
+ getMailboxSettings(): Promise<ToolResult>;
53
+ updateMailboxSettings(params: UpdateMailboxSettingsParams): Promise<ToolResult>;
54
+ }
55
+ /**
56
+ * Registry tool definitions for the mailbox-settings domain.
57
+ */
58
+ export declare function mailboxSettingsToolDefinitions(): ToolDefinition[];
59
+ //# sourceMappingURL=mailbox-settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mailbox-settings.d.ts","sourceRoot":"","sources":["../../src/tools/mailbox-settings.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,KAAK,EAAe,cAAc,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,aAAa;QACrB,eAAe,EAAE,yBAAyB,CAAC;KAC5C;CACF;AAMD,eAAO,MAAM,wBAAwB,iCAAqB,CAAC;AAE3D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;kBAOnC,CAAC;AAEH,eAAO,MAAM,uBAAuB,iCAAqB,CAAC;AAE1D,eAAO,MAAM,0BAA0B;;;;;kBAKrC,CAAC;AAMH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACjF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAUrF;;GAEG;AACH,qBAAa,yBAAyB;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,eAAe;IAElD,mBAAmB,IAAI,OAAO,CAAC,UAAU,CAAC;IAK1C,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAa3E,kBAAkB,IAAI,OAAO,CAAC,UAAU,CAAC;IAKzC,qBAAqB,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,CAAC;CAStF;AAMD;;GAEG;AACH,wBAAgB,8BAA8B,IAAI,cAAc,EAAE,CA6CjE"}