@rnsk/toolkits 0.0.7 → 0.0.8

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 (484) hide show
  1. package/README.md +9 -1
  2. package/dist/index.d.ts +9 -1
  3. package/dist/index.js +17 -1
  4. package/dist/toolkits/cloudflare/icon.d.ts +5 -0
  5. package/dist/toolkits/cloudflare/icon.js +14 -0
  6. package/dist/toolkits/cloudflare/manifest.d.ts +3 -0
  7. package/dist/toolkits/cloudflare/manifest.js +36 -0
  8. package/dist/toolkits/cloudflare/tools/client.d.ts +19 -0
  9. package/dist/toolkits/cloudflare/tools/client.js +57 -0
  10. package/dist/toolkits/cloudflare/tools/create-dns-record.d.ts +14 -0
  11. package/dist/toolkits/cloudflare/tools/create-dns-record.js +32 -0
  12. package/dist/toolkits/cloudflare/tools/create-list.d.ts +8 -0
  13. package/dist/toolkits/cloudflare/tools/create-list.js +28 -0
  14. package/dist/toolkits/cloudflare/tools/create-zone.d.ts +8 -0
  15. package/dist/toolkits/cloudflare/tools/create-zone.js +37 -0
  16. package/dist/toolkits/cloudflare/tools/delete-dns-record.d.ts +6 -0
  17. package/dist/toolkits/cloudflare/tools/delete-dns-record.js +24 -0
  18. package/dist/toolkits/cloudflare/tools/delete-list.d.ts +6 -0
  19. package/dist/toolkits/cloudflare/tools/delete-list.js +24 -0
  20. package/dist/toolkits/cloudflare/tools/delete-zone.d.ts +5 -0
  21. package/dist/toolkits/cloudflare/tools/delete-zone.js +23 -0
  22. package/dist/toolkits/cloudflare/tools/get-bot-management-settings.d.ts +5 -0
  23. package/dist/toolkits/cloudflare/tools/get-bot-management-settings.js +23 -0
  24. package/dist/toolkits/cloudflare/tools/index.d.ts +277 -0
  25. package/dist/toolkits/cloudflare/tools/index.js +165 -0
  26. package/dist/toolkits/cloudflare/tools/list-account-members.d.ts +10 -0
  27. package/dist/toolkits/cloudflare/tools/list-account-members.js +33 -0
  28. package/dist/toolkits/cloudflare/tools/list-accounts.d.ts +8 -0
  29. package/dist/toolkits/cloudflare/tools/list-accounts.js +28 -0
  30. package/dist/toolkits/cloudflare/tools/list-dns-records.d.ts +15 -0
  31. package/dist/toolkits/cloudflare/tools/list-dns-records.js +47 -0
  32. package/dist/toolkits/cloudflare/tools/list-firewall-rules.d.ts +10 -0
  33. package/dist/toolkits/cloudflare/tools/list-firewall-rules.js +30 -0
  34. package/dist/toolkits/cloudflare/tools/list-monitors.d.ts +9 -0
  35. package/dist/toolkits/cloudflare/tools/list-monitors.js +29 -0
  36. package/dist/toolkits/cloudflare/tools/list-pools.d.ts +8 -0
  37. package/dist/toolkits/cloudflare/tools/list-pools.js +28 -0
  38. package/dist/toolkits/cloudflare/tools/list-tunnels.d.ts +9 -0
  39. package/dist/toolkits/cloudflare/tools/list-tunnels.js +29 -0
  40. package/dist/toolkits/cloudflare/tools/list-waf-lists.d.ts +5 -0
  41. package/dist/toolkits/cloudflare/tools/list-waf-lists.js +23 -0
  42. package/dist/toolkits/cloudflare/tools/list-zones.d.ts +13 -0
  43. package/dist/toolkits/cloudflare/tools/list-zones.js +38 -0
  44. package/dist/toolkits/cloudflare/tools/update-dns-record.d.ts +13 -0
  45. package/dist/toolkits/cloudflare/tools/update-dns-record.js +39 -0
  46. package/dist/toolkits/cloudflare/tools/update-list.d.ts +7 -0
  47. package/dist/toolkits/cloudflare/tools/update-list.js +27 -0
  48. package/dist/toolkits/cloudflare/tools/update-tunnel-configuration.d.ts +7 -0
  49. package/dist/toolkits/cloudflare/tools/update-tunnel-configuration.js +28 -0
  50. package/dist/toolkits/cloudflare/tools/update-zone.d.ts +8 -0
  51. package/dist/toolkits/cloudflare/tools/update-zone.js +32 -0
  52. package/dist/toolkits/figma/icon.d.ts +5 -0
  53. package/dist/toolkits/figma/icon.js +6 -0
  54. package/dist/toolkits/figma/manifest.d.ts +3 -0
  55. package/dist/toolkits/figma/manifest.js +58 -0
  56. package/dist/toolkits/figma/tools/add-comment-to-a-file.d.ts +8 -0
  57. package/dist/toolkits/figma/tools/add-comment-to-a-file.js +43 -0
  58. package/dist/toolkits/figma/tools/add-reaction-to-a-comment.d.ts +7 -0
  59. package/dist/toolkits/figma/tools/add-reaction-to-a-comment.js +31 -0
  60. package/dist/toolkits/figma/tools/client.d.ts +20 -0
  61. package/dist/toolkits/figma/tools/client.js +36 -0
  62. package/dist/toolkits/figma/tools/create-a-webhook.d.ts +12 -0
  63. package/dist/toolkits/figma/tools/create-a-webhook.js +45 -0
  64. package/dist/toolkits/figma/tools/create-dev-resources.d.ts +28 -0
  65. package/dist/toolkits/figma/tools/create-dev-resources.js +53 -0
  66. package/dist/toolkits/figma/tools/create-modify-delete-variables.d.ts +9 -0
  67. package/dist/toolkits/figma/tools/create-modify-delete-variables.js +43 -0
  68. package/dist/toolkits/figma/tools/delete-a-comment.d.ts +6 -0
  69. package/dist/toolkits/figma/tools/delete-a-comment.js +29 -0
  70. package/dist/toolkits/figma/tools/delete-a-reaction.d.ts +7 -0
  71. package/dist/toolkits/figma/tools/delete-a-reaction.js +31 -0
  72. package/dist/toolkits/figma/tools/delete-a-webhook.d.ts +5 -0
  73. package/dist/toolkits/figma/tools/delete-a-webhook.js +28 -0
  74. package/dist/toolkits/figma/tools/delete-dev-resource.d.ts +6 -0
  75. package/dist/toolkits/figma/tools/delete-dev-resource.js +29 -0
  76. package/dist/toolkits/figma/tools/design-tokens-to-tailwind.d.ts +26 -0
  77. package/dist/toolkits/figma/tools/design-tokens-to-tailwind.js +119 -0
  78. package/dist/toolkits/figma/tools/detect-background.d.ts +27 -0
  79. package/dist/toolkits/figma/tools/detect-background.js +124 -0
  80. package/dist/toolkits/figma/tools/discover-figma-resources.d.ts +38 -0
  81. package/dist/toolkits/figma/tools/discover-figma-resources.js +99 -0
  82. package/dist/toolkits/figma/tools/download-figma-images.d.ts +26 -0
  83. package/dist/toolkits/figma/tools/download-figma-images.js +86 -0
  84. package/dist/toolkits/figma/tools/extract-design-tokens.d.ts +46 -0
  85. package/dist/toolkits/figma/tools/extract-design-tokens.js +146 -0
  86. package/dist/toolkits/figma/tools/extract-prototype-interactions.d.ts +38 -0
  87. package/dist/toolkits/figma/tools/extract-prototype-interactions.js +80 -0
  88. package/dist/toolkits/figma/tools/get-a-webhook.d.ts +5 -0
  89. package/dist/toolkits/figma/tools/get-a-webhook.js +26 -0
  90. package/dist/toolkits/figma/tools/get-activity-logs.d.ts +10 -0
  91. package/dist/toolkits/figma/tools/get-activity-logs.js +33 -0
  92. package/dist/toolkits/figma/tools/get-comments-in-a-file.d.ts +6 -0
  93. package/dist/toolkits/figma/tools/get-comments-in-a-file.js +29 -0
  94. package/dist/toolkits/figma/tools/get-component-set.d.ts +5 -0
  95. package/dist/toolkits/figma/tools/get-component-set.js +26 -0
  96. package/dist/toolkits/figma/tools/get-component2.d.ts +5 -0
  97. package/dist/toolkits/figma/tools/get-component2.js +26 -0
  98. package/dist/toolkits/figma/tools/get-current-user.d.ts +4 -0
  99. package/dist/toolkits/figma/tools/get-current-user.js +25 -0
  100. package/dist/toolkits/figma/tools/get-dev-resources.d.ts +6 -0
  101. package/dist/toolkits/figma/tools/get-dev-resources.js +29 -0
  102. package/dist/toolkits/figma/tools/get-file-component-sets.d.ts +5 -0
  103. package/dist/toolkits/figma/tools/get-file-component-sets.js +26 -0
  104. package/dist/toolkits/figma/tools/get-file-components.d.ts +5 -0
  105. package/dist/toolkits/figma/tools/get-file-components.js +26 -0
  106. package/dist/toolkits/figma/tools/get-file-json.d.ts +12 -0
  107. package/dist/toolkits/figma/tools/get-file-json.js +49 -0
  108. package/dist/toolkits/figma/tools/get-file-metadata.d.ts +5 -0
  109. package/dist/toolkits/figma/tools/get-file-metadata.js +26 -0
  110. package/dist/toolkits/figma/tools/get-file-nodes.d.ts +10 -0
  111. package/dist/toolkits/figma/tools/get-file-nodes.js +34 -0
  112. package/dist/toolkits/figma/tools/get-file-styles.d.ts +5 -0
  113. package/dist/toolkits/figma/tools/get-file-styles.js +26 -0
  114. package/dist/toolkits/figma/tools/get-files-in-a-project.d.ts +6 -0
  115. package/dist/toolkits/figma/tools/get-files-in-a-project.js +29 -0
  116. package/dist/toolkits/figma/tools/get-image-fills.d.ts +5 -0
  117. package/dist/toolkits/figma/tools/get-image-fills.js +26 -0
  118. package/dist/toolkits/figma/tools/get-library-analytics-component-action-data.d.ts +4 -0
  119. package/dist/toolkits/figma/tools/get-library-analytics-component-action-data.js +4 -0
  120. package/dist/toolkits/figma/tools/get-library-analytics-component-usage-data.d.ts +4 -0
  121. package/dist/toolkits/figma/tools/get-library-analytics-component-usage-data.js +4 -0
  122. package/dist/toolkits/figma/tools/get-library-analytics-style-action-data.d.ts +4 -0
  123. package/dist/toolkits/figma/tools/get-library-analytics-style-action-data.js +4 -0
  124. package/dist/toolkits/figma/tools/get-library-analytics-style-usage-data.d.ts +4 -0
  125. package/dist/toolkits/figma/tools/get-library-analytics-style-usage-data.js +4 -0
  126. package/dist/toolkits/figma/tools/get-library-analytics-variable-action-data.d.ts +4 -0
  127. package/dist/toolkits/figma/tools/get-library-analytics-variable-action-data.js +4 -0
  128. package/dist/toolkits/figma/tools/get-library-analytics-variable-usage-data.d.ts +4 -0
  129. package/dist/toolkits/figma/tools/get-library-analytics-variable-usage-data.js +4 -0
  130. package/dist/toolkits/figma/tools/get-local-variables.d.ts +5 -0
  131. package/dist/toolkits/figma/tools/get-local-variables.js +26 -0
  132. package/dist/toolkits/figma/tools/get-payments.d.ts +9 -0
  133. package/dist/toolkits/figma/tools/get-payments.js +38 -0
  134. package/dist/toolkits/figma/tools/get-projects-in-a-team.d.ts +5 -0
  135. package/dist/toolkits/figma/tools/get-projects-in-a-team.js +26 -0
  136. package/dist/toolkits/figma/tools/get-published-variables.d.ts +5 -0
  137. package/dist/toolkits/figma/tools/get-published-variables.js +26 -0
  138. package/dist/toolkits/figma/tools/get-reactions-for-a-comment.d.ts +7 -0
  139. package/dist/toolkits/figma/tools/get-reactions-for-a-comment.js +30 -0
  140. package/dist/toolkits/figma/tools/get-scim-service-provider-config.d.ts +4 -0
  141. package/dist/toolkits/figma/tools/get-scim-service-provider-config.js +27 -0
  142. package/dist/toolkits/figma/tools/get-style.d.ts +5 -0
  143. package/dist/toolkits/figma/tools/get-style.js +26 -0
  144. package/dist/toolkits/figma/tools/get-team-component-sets.d.ts +8 -0
  145. package/dist/toolkits/figma/tools/get-team-component-sets.js +33 -0
  146. package/dist/toolkits/figma/tools/get-team-components.d.ts +8 -0
  147. package/dist/toolkits/figma/tools/get-team-components.js +33 -0
  148. package/dist/toolkits/figma/tools/get-team-styles.d.ts +8 -0
  149. package/dist/toolkits/figma/tools/get-team-styles.js +33 -0
  150. package/dist/toolkits/figma/tools/get-team-webhooks.d.ts +6 -0
  151. package/dist/toolkits/figma/tools/get-team-webhooks.js +29 -0
  152. package/dist/toolkits/figma/tools/get-versions-of-a-file.d.ts +8 -0
  153. package/dist/toolkits/figma/tools/get-versions-of-a-file.js +31 -0
  154. package/dist/toolkits/figma/tools/get-webhook-requests.d.ts +5 -0
  155. package/dist/toolkits/figma/tools/get-webhook-requests.js +26 -0
  156. package/dist/toolkits/figma/tools/index.d.ts +629 -0
  157. package/dist/toolkits/figma/tools/index.js +110 -0
  158. package/dist/toolkits/figma/tools/library-analytics-shared.d.ts +4 -0
  159. package/dist/toolkits/figma/tools/library-analytics-shared.js +40 -0
  160. package/dist/toolkits/figma/tools/render-images-of-file-nodes.d.ts +15 -0
  161. package/dist/toolkits/figma/tools/render-images-of-file-nodes.js +49 -0
  162. package/dist/toolkits/figma/tools/update-a-webhook.d.ts +10 -0
  163. package/dist/toolkits/figma/tools/update-a-webhook.js +45 -0
  164. package/dist/toolkits/figma/tools/update-dev-resources.d.ts +10 -0
  165. package/dist/toolkits/figma/tools/update-dev-resources.js +34 -0
  166. package/dist/toolkits/google-ads/icon.d.ts +5 -0
  167. package/dist/toolkits/google-ads/icon.js +18 -0
  168. package/dist/toolkits/google-ads/manifest.d.ts +3 -0
  169. package/dist/toolkits/google-ads/manifest.js +41 -0
  170. package/dist/toolkits/google-ads/tools/add-or-remove-to-customer-list.d.ts +30 -0
  171. package/dist/toolkits/google-ads/tools/add-or-remove-to-customer-list.js +69 -0
  172. package/dist/toolkits/google-ads/tools/client.d.ts +62 -0
  173. package/dist/toolkits/google-ads/tools/client.js +102 -0
  174. package/dist/toolkits/google-ads/tools/create-callout-asset.d.ts +23 -0
  175. package/dist/toolkits/google-ads/tools/create-callout-asset.js +62 -0
  176. package/dist/toolkits/google-ads/tools/create-customer-list.d.ts +9 -0
  177. package/dist/toolkits/google-ads/tools/create-customer-list.js +42 -0
  178. package/dist/toolkits/google-ads/tools/get-campaign-by-id.d.ts +32 -0
  179. package/dist/toolkits/google-ads/tools/get-campaign-by-id.js +38 -0
  180. package/dist/toolkits/google-ads/tools/get-campaign-by-name.d.ts +32 -0
  181. package/dist/toolkits/google-ads/tools/get-campaign-by-name.js +37 -0
  182. package/dist/toolkits/google-ads/tools/get-conversion-action-tag-snippets.d.ts +28 -0
  183. package/dist/toolkits/google-ads/tools/get-conversion-action-tag-snippets.js +33 -0
  184. package/dist/toolkits/google-ads/tools/get-customer-lists.d.ts +32 -0
  185. package/dist/toolkits/google-ads/tools/get-customer-lists.js +41 -0
  186. package/dist/toolkits/google-ads/tools/get-rmf-report.d.ts +60 -0
  187. package/dist/toolkits/google-ads/tools/get-rmf-report.js +97 -0
  188. package/dist/toolkits/google-ads/tools/index.d.ts +520 -0
  189. package/dist/toolkits/google-ads/tools/index.js +230 -0
  190. package/dist/toolkits/google-ads/tools/list-accessible-customers.d.ts +5 -0
  191. package/dist/toolkits/google-ads/tools/list-accessible-customers.js +26 -0
  192. package/dist/toolkits/google-ads/tools/list-sub-accounts.d.ts +51 -0
  193. package/dist/toolkits/google-ads/tools/list-sub-accounts.js +55 -0
  194. package/dist/toolkits/google-ads/tools/mutate-ad-group-ads.d.ts +11 -0
  195. package/dist/toolkits/google-ads/tools/mutate-ad-group-ads.js +40 -0
  196. package/dist/toolkits/google-ads/tools/mutate-ad-group-assets.d.ts +11 -0
  197. package/dist/toolkits/google-ads/tools/mutate-ad-group-assets.js +40 -0
  198. package/dist/toolkits/google-ads/tools/mutate-ad-group-bid-modifiers.d.ts +11 -0
  199. package/dist/toolkits/google-ads/tools/mutate-ad-group-bid-modifiers.js +40 -0
  200. package/dist/toolkits/google-ads/tools/mutate-ad-group-criteria.d.ts +11 -0
  201. package/dist/toolkits/google-ads/tools/mutate-ad-group-criteria.js +40 -0
  202. package/dist/toolkits/google-ads/tools/mutate-ad-groups.d.ts +10 -0
  203. package/dist/toolkits/google-ads/tools/mutate-ad-groups.js +38 -0
  204. package/dist/toolkits/google-ads/tools/mutate-assets.d.ts +11 -0
  205. package/dist/toolkits/google-ads/tools/mutate-assets.js +40 -0
  206. package/dist/toolkits/google-ads/tools/mutate-bidding-strategies.d.ts +11 -0
  207. package/dist/toolkits/google-ads/tools/mutate-bidding-strategies.js +40 -0
  208. package/dist/toolkits/google-ads/tools/mutate-campaign-assets.d.ts +11 -0
  209. package/dist/toolkits/google-ads/tools/mutate-campaign-assets.js +40 -0
  210. package/dist/toolkits/google-ads/tools/mutate-campaign-budgets.d.ts +11 -0
  211. package/dist/toolkits/google-ads/tools/mutate-campaign-budgets.js +40 -0
  212. package/dist/toolkits/google-ads/tools/mutate-campaign-criteria.d.ts +11 -0
  213. package/dist/toolkits/google-ads/tools/mutate-campaign-criteria.js +40 -0
  214. package/dist/toolkits/google-ads/tools/mutate-campaign-labels.d.ts +10 -0
  215. package/dist/toolkits/google-ads/tools/mutate-campaign-labels.js +38 -0
  216. package/dist/toolkits/google-ads/tools/mutate-campaigns-v2.d.ts +17 -0
  217. package/dist/toolkits/google-ads/tools/mutate-campaigns-v2.js +58 -0
  218. package/dist/toolkits/google-ads/tools/mutate-campaigns.d.ts +16 -0
  219. package/dist/toolkits/google-ads/tools/mutate-campaigns.js +53 -0
  220. package/dist/toolkits/google-ads/tools/mutate-conversion-actions.d.ts +11 -0
  221. package/dist/toolkits/google-ads/tools/mutate-conversion-actions.js +40 -0
  222. package/dist/toolkits/google-ads/tools/mutate-customer-assets.d.ts +17 -0
  223. package/dist/toolkits/google-ads/tools/mutate-customer-assets.js +51 -0
  224. package/dist/toolkits/google-ads/tools/mutate-labels.d.ts +11 -0
  225. package/dist/toolkits/google-ads/tools/mutate-labels.js +40 -0
  226. package/dist/toolkits/google-ads/tools/mutate-portfolio-bidding-strategies.d.ts +11 -0
  227. package/dist/toolkits/google-ads/tools/mutate-portfolio-bidding-strategies.js +41 -0
  228. package/dist/toolkits/google-ads/tools/search-stream-gaql.d.ts +37 -0
  229. package/dist/toolkits/google-ads/tools/search-stream-gaql.js +41 -0
  230. package/dist/toolkits/google-classroom/icon.d.ts +5 -0
  231. package/dist/toolkits/google-classroom/icon.js +42 -0
  232. package/dist/toolkits/google-classroom/manifest.d.ts +3 -0
  233. package/dist/toolkits/google-classroom/manifest.js +67 -0
  234. package/dist/toolkits/google-classroom/tools/aliases.d.ts +17 -0
  235. package/dist/toolkits/google-classroom/tools/aliases.js +70 -0
  236. package/dist/toolkits/google-classroom/tools/announcement-addons.d.ts +27 -0
  237. package/dist/toolkits/google-classroom/tools/announcement-addons.js +87 -0
  238. package/dist/toolkits/google-classroom/tools/announcements.d.ts +54 -0
  239. package/dist/toolkits/google-classroom/tools/announcements.js +158 -0
  240. package/dist/toolkits/google-classroom/tools/client.d.ts +18 -0
  241. package/dist/toolkits/google-classroom/tools/client.js +41 -0
  242. package/dist/toolkits/google-classroom/tools/courses.d.ts +60 -0
  243. package/dist/toolkits/google-classroom/tools/courses.js +189 -0
  244. package/dist/toolkits/google-classroom/tools/coursework-addons.d.ts +25 -0
  245. package/dist/toolkits/google-classroom/tools/coursework-addons.js +85 -0
  246. package/dist/toolkits/google-classroom/tools/coursework.d.ts +113 -0
  247. package/dist/toolkits/google-classroom/tools/coursework.js +248 -0
  248. package/dist/toolkits/google-classroom/tools/index.d.ts +608 -0
  249. package/dist/toolkits/google-classroom/tools/index.js +81 -0
  250. package/dist/toolkits/google-classroom/tools/invitations.d.ts +22 -0
  251. package/dist/toolkits/google-classroom/tools/invitations.js +89 -0
  252. package/dist/toolkits/google-classroom/tools/materials-addons.d.ts +13 -0
  253. package/dist/toolkits/google-classroom/tools/materials-addons.js +45 -0
  254. package/dist/toolkits/google-classroom/tools/materials.d.ts +44 -0
  255. package/dist/toolkits/google-classroom/tools/materials.js +132 -0
  256. package/dist/toolkits/google-classroom/tools/misc.d.ts +20 -0
  257. package/dist/toolkits/google-classroom/tools/misc.js +51 -0
  258. package/dist/toolkits/google-classroom/tools/posts-addons.d.ts +17 -0
  259. package/dist/toolkits/google-classroom/tools/posts-addons.js +49 -0
  260. package/dist/toolkits/google-classroom/tools/roster.d.ts +48 -0
  261. package/dist/toolkits/google-classroom/tools/roster.js +180 -0
  262. package/dist/toolkits/google-classroom/tools/topics.d.ts +29 -0
  263. package/dist/toolkits/google-classroom/tools/topics.js +117 -0
  264. package/dist/toolkits/google-tasks/icon.d.ts +5 -0
  265. package/dist/toolkits/google-tasks/icon.js +6 -0
  266. package/dist/toolkits/google-tasks/manifest.d.ts +3 -0
  267. package/dist/toolkits/google-tasks/manifest.js +40 -0
  268. package/dist/toolkits/google-tasks/tools/batch-execute.d.ts +34 -0
  269. package/dist/toolkits/google-tasks/tools/batch-execute.js +95 -0
  270. package/dist/toolkits/google-tasks/tools/clear-tasks.d.ts +5 -0
  271. package/dist/toolkits/google-tasks/tools/clear-tasks.js +29 -0
  272. package/dist/toolkits/google-tasks/tools/create-task-list.d.ts +5 -0
  273. package/dist/toolkits/google-tasks/tools/create-task-list.js +30 -0
  274. package/dist/toolkits/google-tasks/tools/create-task.d.ts +12 -0
  275. package/dist/toolkits/google-tasks/tools/create-task.js +47 -0
  276. package/dist/toolkits/google-tasks/tools/delete-task-list.d.ts +5 -0
  277. package/dist/toolkits/google-tasks/tools/delete-task-list.js +29 -0
  278. package/dist/toolkits/google-tasks/tools/delete-task.d.ts +6 -0
  279. package/dist/toolkits/google-tasks/tools/delete-task.js +28 -0
  280. package/dist/toolkits/google-tasks/tools/get-task-list.d.ts +5 -0
  281. package/dist/toolkits/google-tasks/tools/get-task-list.js +27 -0
  282. package/dist/toolkits/google-tasks/tools/get-task.d.ts +6 -0
  283. package/dist/toolkits/google-tasks/tools/get-task.js +28 -0
  284. package/dist/toolkits/google-tasks/tools/index.d.ts +249 -0
  285. package/dist/toolkits/google-tasks/tools/index.js +125 -0
  286. package/dist/toolkits/google-tasks/tools/list-all-tasks.d.ts +41 -0
  287. package/dist/toolkits/google-tasks/tools/list-all-tasks.js +106 -0
  288. package/dist/toolkits/google-tasks/tools/list-task-lists.d.ts +6 -0
  289. package/dist/toolkits/google-tasks/tools/list-task-lists.js +30 -0
  290. package/dist/toolkits/google-tasks/tools/list-tasks.d.ts +15 -0
  291. package/dist/toolkits/google-tasks/tools/list-tasks.js +50 -0
  292. package/dist/toolkits/google-tasks/tools/move-task.d.ts +9 -0
  293. package/dist/toolkits/google-tasks/tools/move-task.js +37 -0
  294. package/dist/toolkits/google-tasks/tools/update-task-full.d.ts +14 -0
  295. package/dist/toolkits/google-tasks/tools/update-task-full.js +55 -0
  296. package/dist/toolkits/google-tasks/tools/update-task-list.d.ts +6 -0
  297. package/dist/toolkits/google-tasks/tools/update-task-list.js +31 -0
  298. package/dist/toolkits/google-tasks/tools/update-task.d.ts +11 -0
  299. package/dist/toolkits/google-tasks/tools/update-task.js +47 -0
  300. package/dist/toolkits/google-tasks/tools/utils.d.ts +15 -0
  301. package/dist/toolkits/google-tasks/tools/utils.js +33 -0
  302. package/dist/toolkits/groww/icon.d.ts +5 -0
  303. package/dist/toolkits/groww/icon.js +21 -0
  304. package/dist/toolkits/groww/manifest.d.ts +3 -0
  305. package/dist/toolkits/groww/manifest.js +32 -0
  306. package/dist/toolkits/groww/tools/historical.d.ts +32 -0
  307. package/dist/toolkits/groww/tools/historical.js +85 -0
  308. package/dist/toolkits/groww/tools/index.d.ts +394 -0
  309. package/dist/toolkits/groww/tools/index.js +222 -0
  310. package/dist/toolkits/groww/tools/instruments.d.ts +51 -0
  311. package/dist/toolkits/groww/tools/instruments.js +120 -0
  312. package/dist/toolkits/groww/tools/live-data.d.ts +30 -0
  313. package/dist/toolkits/groww/tools/live-data.js +101 -0
  314. package/dist/toolkits/groww/tools/margin.d.ts +18 -0
  315. package/dist/toolkits/groww/tools/margin.js +52 -0
  316. package/dist/toolkits/groww/tools/orders.d.ts +57 -0
  317. package/dist/toolkits/groww/tools/orders.js +170 -0
  318. package/dist/toolkits/groww/tools/portfolio.d.ts +13 -0
  319. package/dist/toolkits/groww/tools/portfolio.js +58 -0
  320. package/dist/toolkits/groww/tools/smart-orders.d.ts +72 -0
  321. package/dist/toolkits/groww/tools/smart-orders.js +200 -0
  322. package/dist/toolkits/groww/tools/user.d.ts +4 -0
  323. package/dist/toolkits/groww/tools/user.js +21 -0
  324. package/dist/toolkits/groww/tools/utils.d.ts +18 -0
  325. package/dist/toolkits/groww/tools/utils.js +52 -0
  326. package/dist/toolkits/reddit/icon.d.ts +5 -0
  327. package/dist/toolkits/reddit/icon.js +6 -0
  328. package/dist/toolkits/reddit/manifest.d.ts +3 -0
  329. package/dist/toolkits/reddit/manifest.js +55 -0
  330. package/dist/toolkits/reddit/tools/check-username-available.d.ts +29 -0
  331. package/dist/toolkits/reddit/tools/check-username-available.js +30 -0
  332. package/dist/toolkits/reddit/tools/client.d.ts +10 -0
  333. package/dist/toolkits/reddit/tools/client.js +75 -0
  334. package/dist/toolkits/reddit/tools/create-post.d.ts +10 -0
  335. package/dist/toolkits/reddit/tools/create-post.js +59 -0
  336. package/dist/toolkits/reddit/tools/delete-comment.d.ts +29 -0
  337. package/dist/toolkits/reddit/tools/delete-comment.js +30 -0
  338. package/dist/toolkits/reddit/tools/delete-post.d.ts +29 -0
  339. package/dist/toolkits/reddit/tools/delete-post.js +30 -0
  340. package/dist/toolkits/reddit/tools/edit-comment-or-post.d.ts +6 -0
  341. package/dist/toolkits/reddit/tools/edit-comment-or-post.js +35 -0
  342. package/dist/toolkits/reddit/tools/get-controversial-posts.d.ts +10 -0
  343. package/dist/toolkits/reddit/tools/get-controversial-posts.js +45 -0
  344. package/dist/toolkits/reddit/tools/get-listing-by-sort.d.ts +11 -0
  345. package/dist/toolkits/reddit/tools/get-listing-by-sort.js +47 -0
  346. package/dist/toolkits/reddit/tools/get-oauth-scopes.d.ts +4 -0
  347. package/dist/toolkits/reddit/tools/get-oauth-scopes.js +28 -0
  348. package/dist/toolkits/reddit/tools/get-random-post.d.ts +5 -0
  349. package/dist/toolkits/reddit/tools/get-random-post.js +32 -0
  350. package/dist/toolkits/reddit/tools/get-subreddit-rules.d.ts +5 -0
  351. package/dist/toolkits/reddit/tools/get-subreddit-rules.js +29 -0
  352. package/dist/toolkits/reddit/tools/get-user-about.d.ts +5 -0
  353. package/dist/toolkits/reddit/tools/get-user-about.js +29 -0
  354. package/dist/toolkits/reddit/tools/get-user-flair.d.ts +8 -0
  355. package/dist/toolkits/reddit/tools/get-user-flair.js +32 -0
  356. package/dist/toolkits/reddit/tools/get-user-prefs.d.ts +5 -0
  357. package/dist/toolkits/reddit/tools/get-user-prefs.js +32 -0
  358. package/dist/toolkits/reddit/tools/index.d.ts +355 -0
  359. package/dist/toolkits/reddit/tools/index.js +173 -0
  360. package/dist/toolkits/reddit/tools/list-subreddit-post-flairs.d.ts +25 -0
  361. package/dist/toolkits/reddit/tools/list-subreddit-post-flairs.js +30 -0
  362. package/dist/toolkits/reddit/tools/post-comment.d.ts +6 -0
  363. package/dist/toolkits/reddit/tools/post-comment.js +35 -0
  364. package/dist/toolkits/reddit/tools/retrieve-post-comments.d.ts +8 -0
  365. package/dist/toolkits/reddit/tools/retrieve-post-comments.js +39 -0
  366. package/dist/toolkits/reddit/tools/retrieve-posts-from-subreddit.d.ts +12 -0
  367. package/dist/toolkits/reddit/tools/retrieve-posts-from-subreddit.js +56 -0
  368. package/dist/toolkits/reddit/tools/retrieve-specific-comment-or-post.d.ts +25 -0
  369. package/dist/toolkits/reddit/tools/retrieve-specific-comment-or-post.js +32 -0
  370. package/dist/toolkits/reddit/tools/search-across-subreddits.d.ts +12 -0
  371. package/dist/toolkits/reddit/tools/search-across-subreddits.js +59 -0
  372. package/dist/toolkits/reddit/tools/search-subreddits.d.ts +12 -0
  373. package/dist/toolkits/reddit/tools/search-subreddits.js +49 -0
  374. package/dist/toolkits/reddit/tools/toggle-inbox-replies.d.ts +34 -0
  375. package/dist/toolkits/reddit/tools/toggle-inbox-replies.js +31 -0
  376. package/dist/toolkits/youtube/icon.d.ts +5 -0
  377. package/dist/toolkits/youtube/icon.js +20 -0
  378. package/dist/toolkits/youtube/manifest.d.ts +3 -0
  379. package/dist/toolkits/youtube/manifest.js +48 -0
  380. package/dist/toolkits/youtube/tools/add-video-to-playlist.d.ts +7 -0
  381. package/dist/toolkits/youtube/tools/add-video-to-playlist.js +38 -0
  382. package/dist/toolkits/youtube/tools/client.d.ts +23 -0
  383. package/dist/toolkits/youtube/tools/client.js +55 -0
  384. package/dist/toolkits/youtube/tools/create-channel-section.d.ts +13 -0
  385. package/dist/toolkits/youtube/tools/create-channel-section.js +42 -0
  386. package/dist/toolkits/youtube/tools/create-comment-reply.d.ts +6 -0
  387. package/dist/toolkits/youtube/tools/create-comment-reply.js +31 -0
  388. package/dist/toolkits/youtube/tools/create-playlist.d.ts +7 -0
  389. package/dist/toolkits/youtube/tools/create-playlist.js +38 -0
  390. package/dist/toolkits/youtube/tools/delete-channel-section.d.ts +27 -0
  391. package/dist/toolkits/youtube/tools/delete-channel-section.js +30 -0
  392. package/dist/toolkits/youtube/tools/delete-comment.d.ts +26 -0
  393. package/dist/toolkits/youtube/tools/delete-comment.js +29 -0
  394. package/dist/toolkits/youtube/tools/delete-playlist-item.d.ts +26 -0
  395. package/dist/toolkits/youtube/tools/delete-playlist-item.js +29 -0
  396. package/dist/toolkits/youtube/tools/delete-playlist.d.ts +35 -0
  397. package/dist/toolkits/youtube/tools/delete-playlist.js +33 -0
  398. package/dist/toolkits/youtube/tools/delete-video.d.ts +35 -0
  399. package/dist/toolkits/youtube/tools/delete-video.js +33 -0
  400. package/dist/toolkits/youtube/tools/download-caption-track.d.ts +21 -0
  401. package/dist/toolkits/youtube/tools/download-caption-track.js +30 -0
  402. package/dist/toolkits/youtube/tools/get-channel-activities.d.ts +10 -0
  403. package/dist/toolkits/youtube/tools/get-channel-activities.js +33 -0
  404. package/dist/toolkits/youtube/tools/get-channel-id-by-handle.d.ts +5 -0
  405. package/dist/toolkits/youtube/tools/get-channel-id-by-handle.js +31 -0
  406. package/dist/toolkits/youtube/tools/get-channel-statistics.d.ts +9 -0
  407. package/dist/toolkits/youtube/tools/get-channel-statistics.js +53 -0
  408. package/dist/toolkits/youtube/tools/get-video-details-batch.d.ts +55 -0
  409. package/dist/toolkits/youtube/tools/get-video-details-batch.js +51 -0
  410. package/dist/toolkits/youtube/tools/get-video-rating.d.ts +6 -0
  411. package/dist/toolkits/youtube/tools/get-video-rating.js +29 -0
  412. package/dist/toolkits/youtube/tools/index.d.ts +959 -0
  413. package/dist/toolkits/youtube/tools/index.js +104 -0
  414. package/dist/toolkits/youtube/tools/list-caption-track.d.ts +6 -0
  415. package/dist/toolkits/youtube/tools/list-caption-track.js +29 -0
  416. package/dist/toolkits/youtube/tools/list-channel-sections.d.ts +10 -0
  417. package/dist/toolkits/youtube/tools/list-channel-sections.js +36 -0
  418. package/dist/toolkits/youtube/tools/list-channel-videos.d.ts +9 -0
  419. package/dist/toolkits/youtube/tools/list-channel-videos.js +76 -0
  420. package/dist/toolkits/youtube/tools/list-channels.d.ts +14 -0
  421. package/dist/toolkits/youtube/tools/list-channels.js +40 -0
  422. package/dist/toolkits/youtube/tools/list-comment-threads.d.ts +15 -0
  423. package/dist/toolkits/youtube/tools/list-comment-threads.js +38 -0
  424. package/dist/toolkits/youtube/tools/list-comments.d.ts +10 -0
  425. package/dist/toolkits/youtube/tools/list-comments.js +35 -0
  426. package/dist/toolkits/youtube/tools/list-i18n-languages.d.ts +6 -0
  427. package/dist/toolkits/youtube/tools/list-i18n-languages.js +29 -0
  428. package/dist/toolkits/youtube/tools/list-i18n-regions.d.ts +6 -0
  429. package/dist/toolkits/youtube/tools/list-i18n-regions.js +29 -0
  430. package/dist/toolkits/youtube/tools/list-live-chat-messages.d.ts +10 -0
  431. package/dist/toolkits/youtube/tools/list-live-chat-messages.js +33 -0
  432. package/dist/toolkits/youtube/tools/list-playlist-images.d.ts +11 -0
  433. package/dist/toolkits/youtube/tools/list-playlist-images.js +36 -0
  434. package/dist/toolkits/youtube/tools/list-playlist-items.d.ts +11 -0
  435. package/dist/toolkits/youtube/tools/list-playlist-items.js +34 -0
  436. package/dist/toolkits/youtube/tools/list-super-chat-events.d.ts +8 -0
  437. package/dist/toolkits/youtube/tools/list-super-chat-events.js +31 -0
  438. package/dist/toolkits/youtube/tools/list-user-playlists.d.ts +7 -0
  439. package/dist/toolkits/youtube/tools/list-user-playlists.js +30 -0
  440. package/dist/toolkits/youtube/tools/list-user-subscriptions.d.ts +7 -0
  441. package/dist/toolkits/youtube/tools/list-user-subscriptions.js +30 -0
  442. package/dist/toolkits/youtube/tools/list-video-abuse-report-reasons.d.ts +6 -0
  443. package/dist/toolkits/youtube/tools/list-video-abuse-report-reasons.js +29 -0
  444. package/dist/toolkits/youtube/tools/list-video-categories.d.ts +8 -0
  445. package/dist/toolkits/youtube/tools/list-video-categories.js +33 -0
  446. package/dist/toolkits/youtube/tools/mark-comment-as-spam.d.ts +26 -0
  447. package/dist/toolkits/youtube/tools/mark-comment-as-spam.js +29 -0
  448. package/dist/toolkits/youtube/tools/multipart-upload-video.d.ts +25 -0
  449. package/dist/toolkits/youtube/tools/multipart-upload-video.js +40 -0
  450. package/dist/toolkits/youtube/tools/post-comment.d.ts +7 -0
  451. package/dist/toolkits/youtube/tools/post-comment.js +34 -0
  452. package/dist/toolkits/youtube/tools/rate-video.d.ts +30 -0
  453. package/dist/toolkits/youtube/tools/rate-video.js +30 -0
  454. package/dist/toolkits/youtube/tools/report-video-abuse.d.ts +27 -0
  455. package/dist/toolkits/youtube/tools/report-video-abuse.js +40 -0
  456. package/dist/toolkits/youtube/tools/search-youtube.d.ts +14 -0
  457. package/dist/toolkits/youtube/tools/search-youtube.js +37 -0
  458. package/dist/toolkits/youtube/tools/set-comment-moderation-status.d.ts +27 -0
  459. package/dist/toolkits/youtube/tools/set-comment-moderation-status.js +34 -0
  460. package/dist/toolkits/youtube/tools/subscribe-channel.d.ts +5 -0
  461. package/dist/toolkits/youtube/tools/subscribe-channel.js +30 -0
  462. package/dist/toolkits/youtube/tools/unsubscribe-channel.d.ts +26 -0
  463. package/dist/toolkits/youtube/tools/unsubscribe-channel.js +29 -0
  464. package/dist/toolkits/youtube/tools/update-caption.d.ts +11 -0
  465. package/dist/toolkits/youtube/tools/update-caption.js +36 -0
  466. package/dist/toolkits/youtube/tools/update-channel-section.d.ts +15 -0
  467. package/dist/toolkits/youtube/tools/update-channel-section.js +45 -0
  468. package/dist/toolkits/youtube/tools/update-channel.d.ts +10 -0
  469. package/dist/toolkits/youtube/tools/update-channel.js +42 -0
  470. package/dist/toolkits/youtube/tools/update-comment.d.ts +6 -0
  471. package/dist/toolkits/youtube/tools/update-comment.js +31 -0
  472. package/dist/toolkits/youtube/tools/update-playlist-item.d.ts +19 -0
  473. package/dist/toolkits/youtube/tools/update-playlist-item.js +47 -0
  474. package/dist/toolkits/youtube/tools/update-playlist.d.ts +16 -0
  475. package/dist/toolkits/youtube/tools/update-playlist.js +44 -0
  476. package/dist/toolkits/youtube/tools/update-thumbnail.d.ts +6 -0
  477. package/dist/toolkits/youtube/tools/update-thumbnail.js +38 -0
  478. package/dist/toolkits/youtube/tools/update-video.d.ts +10 -0
  479. package/dist/toolkits/youtube/tools/update-video.js +56 -0
  480. package/dist/toolkits/youtube/tools/upload-shared.d.ts +15 -0
  481. package/dist/toolkits/youtube/tools/upload-shared.js +21 -0
  482. package/dist/toolkits/youtube/tools/upload-video.d.ts +30 -0
  483. package/dist/toolkits/youtube/tools/upload-video.js +56 -0
  484. package/package.json +1 -1
@@ -0,0 +1,158 @@
1
+ // @ts-nocheck
2
+ import { tool } from 'ai';
3
+ import { z } from 'zod';
4
+ import { classroomRequest, googleClassroomTokenField } from './client.js';
5
+ const assigneeMode = z.enum(['ALL_STUDENTS', 'INDIVIDUAL_STUDENTS']);
6
+ const materialSchema = z.record(z.any()).describe('Material with exactly one of driveFile, link, form, youtubeVideo');
7
+ const individualStudentsOptions = z.object({
8
+ studentIds: z.array(z.string()).describe('Students who can see the item'),
9
+ });
10
+ export const createAnnouncement = tool({
11
+ description: 'Creates an announcement (draft, published, or scheduled) in a course.',
12
+ inputSchema: z.object({
13
+ googleClassroomToken: googleClassroomTokenField,
14
+ courseId: z.string().describe('Course ID or alias'),
15
+ text: z.string().optional().describe('Announcement text'),
16
+ materials: z.array(materialSchema).optional(),
17
+ state: z.enum(['DRAFT', 'PUBLISHED', 'DELETED']).optional().describe('Defaults to PUBLISHED'),
18
+ scheduledTime: z.string().optional().describe('RFC3339 publish time'),
19
+ assigneeMode: assigneeMode.optional(),
20
+ individualStudentsOptions: individualStudentsOptions.optional(),
21
+ }),
22
+ execute: async ({ googleClassroomToken, courseId, ...body }) => {
23
+ try {
24
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/announcements`, {
25
+ method: 'POST',
26
+ body,
27
+ });
28
+ if (!result.ok)
29
+ return { error: 'Failed to create announcement', details: result.error };
30
+ return result.data;
31
+ }
32
+ catch (error) {
33
+ return { error: 'Error creating announcement', message: error instanceof Error ? error.message : 'Unknown error' };
34
+ }
35
+ },
36
+ });
37
+ export const deleteAnnouncement = tool({
38
+ description: 'Deletes an announcement. Confirm the announcement ID first.',
39
+ inputSchema: z.object({
40
+ googleClassroomToken: googleClassroomTokenField,
41
+ courseId: z.string(),
42
+ id: z.string().describe('Announcement ID to delete'),
43
+ }),
44
+ execute: async ({ googleClassroomToken, courseId, id }) => {
45
+ try {
46
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/announcements/${id}`, {
47
+ method: 'DELETE',
48
+ });
49
+ if (!result.ok)
50
+ return { error: 'Failed to delete announcement', details: result.error };
51
+ return result.data;
52
+ }
53
+ catch (error) {
54
+ return { error: 'Error deleting announcement', message: error instanceof Error ? error.message : 'Unknown error' };
55
+ }
56
+ },
57
+ });
58
+ export const getAnnouncement = tool({
59
+ description: 'Fetches an announcement by course and announcement ID.',
60
+ inputSchema: z.object({
61
+ googleClassroomToken: googleClassroomTokenField,
62
+ courseId: z.string().describe('Course ID or alias'),
63
+ id: z.string().describe('Announcement ID'),
64
+ }),
65
+ execute: async ({ googleClassroomToken, courseId, id }) => {
66
+ try {
67
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/announcements/${id}`);
68
+ if (!result.ok)
69
+ return { error: 'Failed to get announcement', details: result.error };
70
+ return result.data;
71
+ }
72
+ catch (error) {
73
+ return { error: 'Error getting announcement', message: error instanceof Error ? error.message : 'Unknown error' };
74
+ }
75
+ },
76
+ });
77
+ export const listAnnouncements = tool({
78
+ description: 'Pages through announcements in a course, newest or oldest first.',
79
+ inputSchema: z.object({
80
+ googleClassroomToken: googleClassroomTokenField,
81
+ courseId: z.string().describe('Course ID or alias'),
82
+ orderBy: z.enum(['updateTime asc', 'updateTime desc']).optional().describe('Sort order (default updateTime desc)'),
83
+ pageSize: z.number().min(1).max(100).optional(),
84
+ pageToken: z.string().optional(),
85
+ }),
86
+ execute: async ({ googleClassroomToken, courseId, orderBy, pageSize, pageToken }) => {
87
+ try {
88
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/announcements`, {
89
+ query: { orderBy, pageSize, pageToken },
90
+ });
91
+ if (!result.ok)
92
+ return { error: 'Failed to list announcements', details: result.error };
93
+ return result.data;
94
+ }
95
+ catch (error) {
96
+ return { error: 'Error listing announcements', message: error instanceof Error ? error.message : 'Unknown error' };
97
+ }
98
+ },
99
+ });
100
+ export const modifyAnnouncementAssignees = tool({
101
+ description: 'Changes who can view an announcement: all students or add/remove individual students.',
102
+ inputSchema: z.object({
103
+ googleClassroomToken: googleClassroomTokenField,
104
+ courseId: z.string().describe('Course ID or alias'),
105
+ id: z.string().describe('Announcement ID'),
106
+ assigneeMode: assigneeMode,
107
+ modifyIndividualStudentsOptions: z.object({
108
+ addStudentIds: z.array(z.string()).optional(),
109
+ removeStudentIds: z.array(z.string()).optional(),
110
+ }).optional().describe('Student changes for INDIVIDUAL_STUDENTS mode'),
111
+ }),
112
+ execute: async ({ googleClassroomToken, courseId, id, ...body }) => {
113
+ try {
114
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/announcements/${id}:modifyAssignees`, { method: 'POST', body });
115
+ if (!result.ok)
116
+ return { error: 'Failed to modify announcement assignees', details: result.error };
117
+ return result.data;
118
+ }
119
+ catch (error) {
120
+ return { error: 'Error modifying announcement assignees', message: error instanceof Error ? error.message : 'Unknown error' };
121
+ }
122
+ },
123
+ });
124
+ export const patchAnnouncement = tool({
125
+ description: 'Updates announcement fields. Only fields in updateMask change (e.g. text,scheduledTime).',
126
+ inputSchema: z.object({
127
+ googleClassroomToken: googleClassroomTokenField,
128
+ courseId: z.string(),
129
+ id: z.string().describe('Announcement ID to update'),
130
+ updateMask: z.string().describe("Fields to update, e.g. 'text,state'"),
131
+ text: z.string().optional(),
132
+ materials: z.array(materialSchema).optional(),
133
+ state: z.enum(['DRAFT', 'PUBLISHED', 'DELETED']).optional(),
134
+ scheduledTime: z.string().optional().describe('RFC3339 publish time'),
135
+ assigneeMode: assigneeMode.optional(),
136
+ individualStudentsOptions: individualStudentsOptions.optional(),
137
+ }),
138
+ execute: async ({ googleClassroomToken, courseId, id, updateMask, ...fields }) => {
139
+ try {
140
+ const body = {};
141
+ for (const [k, v] of Object.entries(fields))
142
+ if (v !== undefined)
143
+ body[k] = v;
144
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/announcements/${id}`, {
145
+ method: 'PATCH',
146
+ query: { updateMask },
147
+ body,
148
+ });
149
+ if (!result.ok)
150
+ return { error: 'Failed to patch announcement', details: result.error };
151
+ return result.data;
152
+ }
153
+ catch (error) {
154
+ return { error: 'Error patching announcement', message: error instanceof Error ? error.message : 'Unknown error' };
155
+ }
156
+ },
157
+ });
158
+ //# sourceMappingURL=announcements.js.map
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ export declare const CLASSROOM_API_BASE = "https://classroom.googleapis.com/v1";
3
+ export declare const googleClassroomTokenField: z.ZodString;
4
+ export declare function buildQuery(params: Record<string, string | number | boolean | string[] | undefined>): string;
5
+ export declare function classroomRequest(googleClassroomToken: string, path: string, options?: {
6
+ method?: string;
7
+ query?: Record<string, string | number | boolean | string[] | undefined>;
8
+ body?: unknown;
9
+ }): Promise<{
10
+ ok: false;
11
+ error: any;
12
+ data?: undefined;
13
+ } | {
14
+ ok: true;
15
+ data: any;
16
+ error?: undefined;
17
+ }>;
18
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1,41 @@
1
+ // @ts-nocheck
2
+ import { z } from 'zod';
3
+ export const CLASSROOM_API_BASE = 'https://classroom.googleapis.com/v1';
4
+ export const googleClassroomTokenField = z.string().describe('Google Classroom OAuth access token (Bearer)');
5
+ export function buildQuery(params) {
6
+ const search = new URLSearchParams();
7
+ for (const [key, value] of Object.entries(params)) {
8
+ if (value === undefined)
9
+ continue;
10
+ if (Array.isArray(value)) {
11
+ for (const v of value)
12
+ search.append(key, String(v));
13
+ }
14
+ else {
15
+ search.set(key, String(value));
16
+ }
17
+ }
18
+ const qs = search.toString();
19
+ return qs ? `?${qs}` : '';
20
+ }
21
+ export async function classroomRequest(googleClassroomToken, path, options) {
22
+ const url = `${CLASSROOM_API_BASE}${path}${buildQuery(options?.query ?? {})}`;
23
+ const response = await fetch(url, {
24
+ method: options?.method ?? 'GET',
25
+ headers: {
26
+ Authorization: `Bearer ${googleClassroomToken}`,
27
+ ...(options?.body !== undefined ? { 'Content-Type': 'application/json' } : {}),
28
+ },
29
+ body: options?.body !== undefined ? JSON.stringify(options.body) : undefined,
30
+ });
31
+ if (!response.ok) {
32
+ const details = await response.json().catch(() => ({}));
33
+ return { ok: false, error: details };
34
+ }
35
+ if (response.status === 204) {
36
+ return { ok: true, data: { success: true } };
37
+ }
38
+ const data = await response.json().catch(() => ({}));
39
+ return { ok: true, data };
40
+ }
41
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1,60 @@
1
+ export declare const createCourse: import("ai").Tool<{
2
+ name: string;
3
+ googleClassroomToken: string;
4
+ ownerId: string;
5
+ description?: string | undefined;
6
+ descriptionHeading?: string | undefined;
7
+ room?: string | undefined;
8
+ section?: string | undefined;
9
+ courseState?: "COURSE_STATE_UNSPECIFIED" | "ACTIVE" | "ARCHIVED" | "PROVISIONED" | "DECLINED" | undefined;
10
+ }, any>;
11
+ export declare const deleteCourse: import("ai").Tool<{
12
+ id: string;
13
+ googleClassroomToken: string;
14
+ }, any>;
15
+ export declare const getCourse: import("ai").Tool<{
16
+ id: string;
17
+ googleClassroomToken: string;
18
+ }, any>;
19
+ export declare const listCourses: import("ai").Tool<{
20
+ googleClassroomToken: string;
21
+ pageToken?: string | undefined;
22
+ pageSize?: number | undefined;
23
+ studentId?: string | undefined;
24
+ teacherId?: string | undefined;
25
+ courseStates?: ("COURSE_STATE_UNSPECIFIED" | "ACTIVE" | "ARCHIVED" | "PROVISIONED" | "DECLINED")[] | undefined;
26
+ }, any>;
27
+ export declare const patchCourse: import("ai").Tool<{
28
+ id: string;
29
+ updateMask: string;
30
+ googleClassroomToken: string;
31
+ description?: string | undefined;
32
+ name?: string | undefined;
33
+ ownerId?: string | undefined;
34
+ descriptionHeading?: string | undefined;
35
+ room?: string | undefined;
36
+ section?: string | undefined;
37
+ courseState?: "COURSE_STATE_UNSPECIFIED" | "ACTIVE" | "ARCHIVED" | "PROVISIONED" | "DECLINED" | undefined;
38
+ }, any>;
39
+ export declare const updateCourse: import("ai").Tool<{
40
+ id: string;
41
+ name: string;
42
+ googleClassroomToken: string;
43
+ ownerId: string;
44
+ description?: string | undefined;
45
+ descriptionHeading?: string | undefined;
46
+ room?: string | undefined;
47
+ section?: string | undefined;
48
+ courseState?: "COURSE_STATE_UNSPECIFIED" | "ACTIVE" | "ARCHIVED" | "PROVISIONED" | "DECLINED" | undefined;
49
+ }, any>;
50
+ export declare const getGradingPeriodSettings: import("ai").Tool<{
51
+ googleClassroomToken: string;
52
+ courseId: string;
53
+ }, any>;
54
+ export declare const listCourseStudentGroups: import("ai").Tool<{
55
+ googleClassroomToken: string;
56
+ courseId: string;
57
+ pageToken?: string | undefined;
58
+ pageSize?: number | undefined;
59
+ }, any>;
60
+ //# sourceMappingURL=courses.d.ts.map
@@ -0,0 +1,189 @@
1
+ // @ts-nocheck
2
+ import { tool } from 'ai';
3
+ import { z } from 'zod';
4
+ import { classroomRequest, googleClassroomTokenField } from './client.js';
5
+ const courseState = z.enum(['COURSE_STATE_UNSPECIFIED', 'ACTIVE', 'ARCHIVED', 'PROVISIONED', 'DECLINED']);
6
+ export const createCourse = tool({
7
+ description: 'Creates a course. Use when a teacher needs a Classroom course before enrollment.',
8
+ inputSchema: z.object({
9
+ googleClassroomToken: googleClassroomTokenField,
10
+ name: z.string().max(750).describe('Course name (required)'),
11
+ ownerId: z.string().describe('Owner user ID or email (required)'),
12
+ descriptionHeading: z.string().max(360).optional(),
13
+ description: z.string().max(30000).optional(),
14
+ room: z.string().max(64).optional(),
15
+ section: z.string().max(2800).optional(),
16
+ courseState: courseState.optional().describe('Initial state'),
17
+ }),
18
+ execute: async ({ googleClassroomToken, ...body }) => {
19
+ try {
20
+ const result = await classroomRequest(googleClassroomToken, '/courses', { method: 'POST', body });
21
+ if (!result.ok)
22
+ return { error: 'Failed to create course', details: result.error };
23
+ return result.data;
24
+ }
25
+ catch (error) {
26
+ return { error: 'Error creating course', message: error instanceof Error ? error.message : 'Unknown error' };
27
+ }
28
+ },
29
+ });
30
+ export const deleteCourse = tool({
31
+ description: 'Deletes a course. Confirm the course ID first; deletion removes access for all members.',
32
+ inputSchema: z.object({
33
+ googleClassroomToken: googleClassroomTokenField,
34
+ id: z.string().describe('Course ID or alias to delete'),
35
+ }),
36
+ execute: async ({ googleClassroomToken, id }) => {
37
+ try {
38
+ const result = await classroomRequest(googleClassroomToken, `/courses/${id}`, { method: 'DELETE' });
39
+ if (!result.ok)
40
+ return { error: 'Failed to delete course', details: result.error };
41
+ return result.data;
42
+ }
43
+ catch (error) {
44
+ return { error: 'Error deleting course', message: error instanceof Error ? error.message : 'Unknown error' };
45
+ }
46
+ },
47
+ });
48
+ export const getCourse = tool({
49
+ description: 'Gets full details for a course by ID or alias.',
50
+ inputSchema: z.object({
51
+ googleClassroomToken: googleClassroomTokenField,
52
+ id: z.string().describe('Course ID or alias'),
53
+ }),
54
+ execute: async ({ googleClassroomToken, id }) => {
55
+ try {
56
+ const result = await classroomRequest(googleClassroomToken, `/courses/${id}`);
57
+ if (!result.ok)
58
+ return { error: 'Failed to get course', details: result.error };
59
+ return result.data;
60
+ }
61
+ catch (error) {
62
+ return { error: 'Error getting course', message: error instanceof Error ? error.message : 'Unknown error' };
63
+ }
64
+ },
65
+ });
66
+ export const listCourses = tool({
67
+ description: 'Lists courses visible to you, with optional student/teacher/state filters and pagination.',
68
+ inputSchema: z.object({
69
+ googleClassroomToken: googleClassroomTokenField,
70
+ studentId: z.string().optional().describe("Filter to courses with this student ('me' or ID)"),
71
+ teacherId: z.string().optional().describe("Filter to courses taught by this teacher ('me' or ID)"),
72
+ courseStates: z.array(courseState).optional(),
73
+ pageSize: z.number().min(1).optional(),
74
+ pageToken: z.string().optional(),
75
+ }),
76
+ execute: async ({ googleClassroomToken, studentId, teacherId, courseStates, pageSize, pageToken }) => {
77
+ try {
78
+ const result = await classroomRequest(googleClassroomToken, '/courses', {
79
+ query: { studentId, teacherId, courseStates, pageSize, pageToken },
80
+ });
81
+ if (!result.ok)
82
+ return { error: 'Failed to list courses', details: result.error };
83
+ return result.data;
84
+ }
85
+ catch (error) {
86
+ return { error: 'Error listing courses', message: error instanceof Error ? error.message : 'Unknown error' };
87
+ }
88
+ },
89
+ });
90
+ export const patchCourse = tool({
91
+ description: 'Partially updates a course. Only fields in updateMask change (e.g. name,section).',
92
+ inputSchema: z.object({
93
+ googleClassroomToken: googleClassroomTokenField,
94
+ id: z.string().describe('Course ID or alias to update'),
95
+ updateMask: z.string().describe("Comma-separated fields, e.g. 'name,section'"),
96
+ name: z.string().optional(),
97
+ descriptionHeading: z.string().optional(),
98
+ description: z.string().optional(),
99
+ room: z.string().optional(),
100
+ section: z.string().optional(),
101
+ courseState: courseState.optional(),
102
+ ownerId: z.string().optional().describe('New owner user ID'),
103
+ }),
104
+ execute: async ({ googleClassroomToken, id, updateMask, ...fields }) => {
105
+ try {
106
+ const body = {};
107
+ for (const [k, v] of Object.entries(fields))
108
+ if (v !== undefined)
109
+ body[k] = v;
110
+ const result = await classroomRequest(googleClassroomToken, `/courses/${id}`, {
111
+ method: 'PATCH',
112
+ query: { updateMask },
113
+ body,
114
+ });
115
+ if (!result.ok)
116
+ return { error: 'Failed to patch course', details: result.error };
117
+ return result.data;
118
+ }
119
+ catch (error) {
120
+ return { error: 'Error patching course', message: error instanceof Error ? error.message : 'Unknown error' };
121
+ }
122
+ },
123
+ });
124
+ export const updateCourse = tool({
125
+ description: 'Fully replaces a course (PUT). Requires id, name, and ownerId; other fields optional.',
126
+ inputSchema: z.object({
127
+ googleClassroomToken: googleClassroomTokenField,
128
+ id: z.string().describe('Course ID or alias to update'),
129
+ name: z.string().max(750),
130
+ ownerId: z.string().describe('Owner user ID or email (admins only to change)'),
131
+ descriptionHeading: z.string().optional(),
132
+ description: z.string().max(30000).optional(),
133
+ room: z.string().max(650).optional(),
134
+ section: z.string().max(2800).optional(),
135
+ courseState: courseState.optional(),
136
+ }),
137
+ execute: async ({ googleClassroomToken, id, ...body }) => {
138
+ try {
139
+ const result = await classroomRequest(googleClassroomToken, `/courses/${id}`, { method: 'PUT', body });
140
+ if (!result.ok)
141
+ return { error: 'Failed to update course', details: result.error };
142
+ return result.data;
143
+ }
144
+ catch (error) {
145
+ return { error: 'Error updating course', message: error instanceof Error ? error.message : 'Unknown error' };
146
+ }
147
+ },
148
+ });
149
+ export const getGradingPeriodSettings = tool({
150
+ description: 'Gets grading periods configured for a course.',
151
+ inputSchema: z.object({
152
+ googleClassroomToken: googleClassroomTokenField,
153
+ courseId: z.string().describe('Course ID or alias'),
154
+ }),
155
+ execute: async ({ googleClassroomToken, courseId }) => {
156
+ try {
157
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/gradingPeriodSettings`);
158
+ if (!result.ok)
159
+ return { error: 'Failed to get grading period settings', details: result.error };
160
+ return result.data;
161
+ }
162
+ catch (error) {
163
+ return { error: 'Error getting grading period settings', message: error instanceof Error ? error.message : 'Unknown error' };
164
+ }
165
+ },
166
+ });
167
+ export const listCourseStudentGroups = tool({
168
+ description: 'Lists student groups in a course with pagination.',
169
+ inputSchema: z.object({
170
+ googleClassroomToken: googleClassroomTokenField,
171
+ courseId: z.string().describe('Course ID or alias'),
172
+ pageSize: z.number().min(0).optional(),
173
+ pageToken: z.string().optional(),
174
+ }),
175
+ execute: async ({ googleClassroomToken, courseId, pageSize, pageToken }) => {
176
+ try {
177
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/studentGroups`, {
178
+ query: { pageSize, pageToken },
179
+ });
180
+ if (!result.ok)
181
+ return { error: 'Failed to list student groups', details: result.error };
182
+ return result.data;
183
+ }
184
+ catch (error) {
185
+ return { error: 'Error listing student groups', message: error instanceof Error ? error.message : 'Unknown error' };
186
+ }
187
+ },
188
+ });
189
+ //# sourceMappingURL=courses.js.map
@@ -0,0 +1,25 @@
1
+ export declare const deleteCourseWorkAddOnAttachment: import("ai").Tool<{
2
+ attachmentId: string;
3
+ googleClassroomToken: string;
4
+ courseId: string;
5
+ itemId: string;
6
+ }, any>;
7
+ export declare const getCourseWorkAddOnAttachment: import("ai").Tool<{
8
+ attachmentId: string;
9
+ googleClassroomToken: string;
10
+ courseId: string;
11
+ postId: string;
12
+ }, any>;
13
+ export declare const listCourseWorkAddOnAttachments: import("ai").Tool<{
14
+ googleClassroomToken: string;
15
+ courseId: string;
16
+ postId: string;
17
+ }, any>;
18
+ export declare const getCourseWorkAddOnContext: import("ai").Tool<{
19
+ googleClassroomToken: string;
20
+ courseId: string;
21
+ itemId: string;
22
+ attachmentId?: string | undefined;
23
+ addOnToken?: string | undefined;
24
+ }, any>;
25
+ //# sourceMappingURL=coursework-addons.d.ts.map
@@ -0,0 +1,85 @@
1
+ // @ts-nocheck
2
+ import { tool } from 'ai';
3
+ import { z } from 'zod';
4
+ import { classroomRequest, googleClassroomTokenField } from './client.js';
5
+ export const deleteCourseWorkAddOnAttachment = tool({
6
+ description: 'Deletes an add-on attachment from coursework. The add-on must have created it.',
7
+ inputSchema: z.object({
8
+ googleClassroomToken: googleClassroomTokenField,
9
+ courseId: z.string(),
10
+ itemId: z.string().describe('Coursework ID'),
11
+ attachmentId: z.string().describe('Attachment ID to delete'),
12
+ }),
13
+ execute: async ({ googleClassroomToken, courseId, itemId, attachmentId }) => {
14
+ try {
15
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/courseWork/${itemId}/addOnAttachments/${attachmentId}`, { method: 'DELETE' });
16
+ if (!result.ok)
17
+ return { error: 'Failed to delete coursework add-on attachment', details: result.error };
18
+ return result.data;
19
+ }
20
+ catch (error) {
21
+ return { error: 'Error deleting coursework add-on attachment', message: error instanceof Error ? error.message : 'Unknown error' };
22
+ }
23
+ },
24
+ });
25
+ export const getCourseWorkAddOnAttachment = tool({
26
+ description: 'Gets an add-on attachment from coursework. The requesting add-on must have created it.',
27
+ inputSchema: z.object({
28
+ googleClassroomToken: googleClassroomTokenField,
29
+ courseId: z.string(),
30
+ postId: z.string().describe('Coursework ID containing the attachment'),
31
+ attachmentId: z.string().describe('Attachment ID'),
32
+ }),
33
+ execute: async ({ googleClassroomToken, courseId, postId, attachmentId }) => {
34
+ try {
35
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/courseWork/${postId}/addOnAttachments/${attachmentId}`);
36
+ if (!result.ok)
37
+ return { error: 'Failed to get coursework add-on attachment', details: result.error };
38
+ return result.data;
39
+ }
40
+ catch (error) {
41
+ return { error: 'Error getting coursework add-on attachment', message: error instanceof Error ? error.message : 'Unknown error' };
42
+ }
43
+ },
44
+ });
45
+ export const listCourseWorkAddOnAttachments = tool({
46
+ description: 'Lists add-on attachments on coursework created by the add-on.',
47
+ inputSchema: z.object({
48
+ googleClassroomToken: googleClassroomTokenField,
49
+ courseId: z.string(),
50
+ postId: z.string().describe('Coursework ID'),
51
+ }),
52
+ execute: async ({ googleClassroomToken, courseId, postId }) => {
53
+ try {
54
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/courseWork/${postId}/addOnAttachments`);
55
+ if (!result.ok)
56
+ return { error: 'Failed to list coursework add-on attachments', details: result.error };
57
+ return result.data;
58
+ }
59
+ catch (error) {
60
+ return { error: 'Error listing coursework add-on attachments', message: error instanceof Error ? error.message : 'Unknown error' };
61
+ }
62
+ },
63
+ });
64
+ export const getCourseWorkAddOnContext = tool({
65
+ description: 'Gets add-on iframe metadata for coursework: user role, submission ID, grade support.',
66
+ inputSchema: z.object({
67
+ googleClassroomToken: googleClassroomTokenField,
68
+ courseId: z.string(),
69
+ itemId: z.string().describe('Coursework ID with the attached add-on'),
70
+ addOnToken: z.string().optional(),
71
+ attachmentId: z.string().optional().describe('Required except for Attachment Discovery iframe'),
72
+ }),
73
+ execute: async ({ googleClassroomToken, courseId, itemId, addOnToken, attachmentId }) => {
74
+ try {
75
+ const result = await classroomRequest(googleClassroomToken, `/courses/${courseId}/courseWork/${itemId}/addOnContext`, { query: { addOnToken, attachmentId } });
76
+ if (!result.ok)
77
+ return { error: 'Failed to get coursework add-on context', details: result.error };
78
+ return result.data;
79
+ }
80
+ catch (error) {
81
+ return { error: 'Error getting coursework add-on context', message: error instanceof Error ? error.message : 'Unknown error' };
82
+ }
83
+ },
84
+ });
85
+ //# sourceMappingURL=coursework-addons.js.map