@opengeni/contracts 0.50.0 → 1.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/dist/agent-authored-durable-text.d.ts +70 -0
  2. package/dist/agent-config.d.ts +869 -0
  3. package/dist/agent-instruction-changes.d.ts +110 -0
  4. package/dist/agent-learning.d.ts +243 -0
  5. package/dist/agent-topology.d.ts +292 -0
  6. package/dist/allowance-refusal.d.ts +9 -0
  7. package/dist/allowance-refusal.js +50 -0
  8. package/dist/allowance-refusal.js.map +1 -0
  9. package/dist/analytics-consent-report.d.ts +19 -0
  10. package/dist/analytics-consent-report.js +10 -0
  11. package/dist/analytics-consent-report.js.map +1 -0
  12. package/dist/api-key-presets.d.ts +19 -0
  13. package/dist/artifact-catalog.d.ts +161 -0
  14. package/dist/artifacts.d.ts +135 -11
  15. package/dist/atlassian-native-retirement.d.ts +16 -0
  16. package/dist/atlassian-native-retirement.js +30 -0
  17. package/dist/atlassian-native-retirement.js.map +1 -0
  18. package/dist/atlassian.d.ts +2 -0
  19. package/dist/atlassian.js +26 -12
  20. package/dist/browser-storage.d.ts +5 -0
  21. package/dist/browser-storage.js +9 -0
  22. package/dist/browser-storage.js.map +1 -0
  23. package/dist/bundled-skills.d.ts +40 -0
  24. package/dist/chunk-2ACYHZFB.js +292 -0
  25. package/dist/chunk-2ACYHZFB.js.map +1 -0
  26. package/dist/chunk-2VORLN2R.js +353 -0
  27. package/dist/chunk-2VORLN2R.js.map +1 -0
  28. package/dist/{chunk-Y3MLSLB4.js → chunk-3SIZGL3O.js} +42 -30
  29. package/dist/chunk-3SIZGL3O.js.map +1 -0
  30. package/dist/chunk-46KLD2UH.js +186 -0
  31. package/dist/chunk-46KLD2UH.js.map +1 -0
  32. package/dist/chunk-4JGHSSB7.js +11 -0
  33. package/dist/chunk-4JGHSSB7.js.map +1 -0
  34. package/dist/{chunk-M5ZGRVIQ.js → chunk-5IXYF6XN.js} +14 -5
  35. package/dist/chunk-5IXYF6XN.js.map +1 -0
  36. package/dist/chunk-BCS7WHCK.js +139 -0
  37. package/dist/chunk-BCS7WHCK.js.map +1 -0
  38. package/dist/chunk-EK7NDGFR.js +128 -0
  39. package/dist/chunk-EK7NDGFR.js.map +1 -0
  40. package/dist/{chunk-5UDNP7AO.js → chunk-FZ6BXQHL.js} +78 -38
  41. package/dist/chunk-FZ6BXQHL.js.map +1 -0
  42. package/dist/{chunk-CM6BMECR.js → chunk-GRG7PHWQ.js} +2 -1
  43. package/dist/chunk-GRG7PHWQ.js.map +1 -0
  44. package/dist/chunk-KHHZTBP7.js +11 -0
  45. package/dist/chunk-KHHZTBP7.js.map +1 -0
  46. package/dist/chunk-KR2V42UZ.js +187 -0
  47. package/dist/chunk-KR2V42UZ.js.map +1 -0
  48. package/dist/chunk-MZLBPKFE.js +168 -0
  49. package/dist/chunk-MZLBPKFE.js.map +1 -0
  50. package/dist/{chunk-LW7OH6CS.js → chunk-NRMCVHAU.js} +6 -5
  51. package/dist/chunk-NRMCVHAU.js.map +1 -0
  52. package/dist/{chunk-TZ6YEYN4.js → chunk-NVJMJWLL.js} +3 -1
  53. package/dist/chunk-NVJMJWLL.js.map +1 -0
  54. package/dist/chunk-O77VSFYZ.js +70 -0
  55. package/dist/chunk-O77VSFYZ.js.map +1 -0
  56. package/dist/chunk-PX3VCKAU.js +29 -0
  57. package/dist/chunk-PX3VCKAU.js.map +1 -0
  58. package/dist/chunk-QR5D2IQC.js +61 -0
  59. package/dist/chunk-QR5D2IQC.js.map +1 -0
  60. package/dist/chunk-RJ76DRPO.js +117 -0
  61. package/dist/chunk-RJ76DRPO.js.map +1 -0
  62. package/dist/chunk-RKX3NQYS.js +28 -0
  63. package/dist/chunk-RKX3NQYS.js.map +1 -0
  64. package/dist/{chunk-JBCIY7QD.js → chunk-SIOU2K4U.js} +45 -22
  65. package/dist/chunk-SIOU2K4U.js.map +1 -0
  66. package/dist/chunk-TSCDAGET.js +75 -0
  67. package/dist/chunk-TSCDAGET.js.map +1 -0
  68. package/dist/{chunk-LSB7GRLG.js → chunk-TXTQIYCV.js} +15 -11
  69. package/dist/chunk-TXTQIYCV.js.map +1 -0
  70. package/dist/chunk-X7ETVO4P.js +26544 -0
  71. package/dist/chunk-X7ETVO4P.js.map +1 -0
  72. package/dist/{chunk-CADSX6UN.js → chunk-Y3KNXVTD.js} +2 -2
  73. package/dist/chunk-YBW5JSA3.js +251 -0
  74. package/dist/chunk-YBW5JSA3.js.map +1 -0
  75. package/dist/chunk-YRXAWWCU.js +45 -0
  76. package/dist/chunk-YRXAWWCU.js.map +1 -0
  77. package/dist/claude-provider-account-authority.d.ts +18 -0
  78. package/dist/claude-subscription-oauth.d.ts +42 -0
  79. package/dist/claude-subscription-usage.d.ts +159 -0
  80. package/dist/client-error-report.d.ts +109 -0
  81. package/dist/client-error-report.js +87 -0
  82. package/dist/client-error-report.js.map +1 -0
  83. package/dist/code-search.d.ts +52 -0
  84. package/dist/code-search.js +40 -0
  85. package/dist/code-search.js.map +1 -0
  86. package/dist/company-brain-governed-writes.d.ts +475 -0
  87. package/dist/company-brain.d.ts +336 -0
  88. package/dist/company-profile.d.ts +566 -0
  89. package/dist/connect.d.ts +325 -0
  90. package/dist/connect.js +191 -0
  91. package/dist/connect.js.map +1 -0
  92. package/dist/connection-account-label.d.ts +2 -0
  93. package/dist/connection-account-label.js +35 -0
  94. package/dist/connection-account-label.js.map +1 -0
  95. package/dist/connection-authority.d.ts +193 -0
  96. package/dist/connection-authority.js +50 -0
  97. package/dist/connection-authority.js.map +1 -0
  98. package/dist/connector-attachments.d.ts +95 -0
  99. package/dist/connector-attachments.js +51 -0
  100. package/dist/connector-attachments.js.map +1 -0
  101. package/dist/connector-tool-permissions.d.ts +73 -0
  102. package/dist/direct-model-provider.d.ts +36 -0
  103. package/dist/editable-artifact-codec-registry.d.ts +16 -7
  104. package/dist/editable-artifact-codec-registry.js +18 -8
  105. package/dist/editable-artifact-committed-transaction.d.ts +2 -2
  106. package/dist/editable-artifact-committed-transaction.js +2 -2
  107. package/dist/editable-artifact-live.d.ts +11 -12
  108. package/dist/editable-artifact-live.js +110 -45
  109. package/dist/editable-artifact-live.js.map +1 -1
  110. package/dist/editable-artifact-serialized-commit.d.ts +2 -1
  111. package/dist/editable-artifact-serialized-commit.js +8 -7
  112. package/dist/editable-artifact-versions.d.ts +20 -5
  113. package/dist/editable-artifact-versions.js +23 -5
  114. package/dist/editable-artifacts.d.ts +2 -0
  115. package/dist/editable-artifacts.js +47 -35
  116. package/dist/external-identities.d.ts +784 -0
  117. package/dist/external-identities.js +44 -0
  118. package/dist/external-identities.js.map +1 -0
  119. package/dist/feedback.d.ts +51 -0
  120. package/dist/github-repository-contracts.d.ts +36 -0
  121. package/dist/github-repository-contracts.js +59 -0
  122. package/dist/github-repository-contracts.js.map +1 -0
  123. package/dist/github-repository.d.ts +14 -0
  124. package/dist/github-repository.js +36 -0
  125. package/dist/github-repository.js.map +1 -0
  126. package/dist/google-drive.d.ts +90 -1
  127. package/dist/google-drive.js +90 -16
  128. package/dist/google-drive.js.map +1 -1
  129. package/dist/governed-learning-activation.d.ts +154 -0
  130. package/dist/governed-learning-evaluator.d.ts +152 -0
  131. package/dist/host-mcp-bindings.d.ts +326 -0
  132. package/dist/host-mcp-bindings.js +252 -0
  133. package/dist/host-mcp-bindings.js.map +1 -0
  134. package/dist/image-generation.d.ts +1 -0
  135. package/dist/index.d.ts +32396 -11386
  136. package/dist/index.js +2198 -164
  137. package/dist/insights-usage.d.ts +877 -0
  138. package/dist/insights-usage.js +509 -0
  139. package/dist/insights-usage.js.map +1 -0
  140. package/dist/interaction.d.ts +344 -0
  141. package/dist/knowledge-entries.d.ts +982 -0
  142. package/dist/knowledge-preparation.d.ts +237 -0
  143. package/dist/knowledge.d.ts +197 -0
  144. package/dist/managed-auth-session-sets.d.ts +241 -0
  145. package/dist/managed-auth-session-sets.js +191 -0
  146. package/dist/managed-auth-session-sets.js.map +1 -0
  147. package/dist/managed-sign-in-methods.d.ts +56 -0
  148. package/dist/managed-sign-in-methods.js +46 -0
  149. package/dist/managed-sign-in-methods.js.map +1 -0
  150. package/dist/mcp-catalog-limits.d.ts +2 -0
  151. package/dist/mcp-endpoint.d.ts +7 -0
  152. package/dist/mcp-endpoint.js +9 -0
  153. package/dist/mcp-endpoint.js.map +1 -0
  154. package/dist/mcp-oauth.d.ts +71 -0
  155. package/dist/modal-native-proof-v2.d.ts +587 -0
  156. package/dist/modal-native-proof-v2.js +37 -0
  157. package/dist/modal-native-proof-v2.js.map +1 -0
  158. package/dist/model-availability.d.ts +15 -0
  159. package/dist/model-connection-access.d.ts +24 -0
  160. package/dist/model-context-inspector.d.ts +329 -0
  161. package/dist/model-display.d.ts +38 -0
  162. package/dist/model-display.js +134 -0
  163. package/dist/model-display.js.map +1 -0
  164. package/dist/model-picker-order.d.ts +25 -0
  165. package/dist/model-picker-order.js +42 -0
  166. package/dist/model-picker-order.js.map +1 -0
  167. package/dist/organization-access.d.ts +231 -0
  168. package/dist/organization-access.js +34 -0
  169. package/dist/organization-access.js.map +1 -0
  170. package/dist/organization-integration-policy.d.ts +27 -0
  171. package/dist/organization-membership-lifecycle.d.ts +1022 -0
  172. package/dist/organization-model-usage.d.ts +146 -0
  173. package/dist/organization-model-usage.js +67 -0
  174. package/dist/organization-model-usage.js.map +1 -0
  175. package/dist/organization-recovery.d.ts +337 -0
  176. package/dist/organization-recovery.js +37 -0
  177. package/dist/organization-recovery.js.map +1 -0
  178. package/dist/organization-usage.d.ts +138 -0
  179. package/dist/permissions.d.ts +54 -0
  180. package/dist/personal-github.d.ts +320 -0
  181. package/dist/personal-github.js +222 -0
  182. package/dist/personal-github.js.map +1 -0
  183. package/dist/plugin-discovery.d.ts +35 -0
  184. package/dist/plugin-discovery.js +7 -0
  185. package/dist/plugin-discovery.js.map +1 -0
  186. package/dist/preference-registry.d.ts +44 -1
  187. package/dist/product-analytics.d.ts +113 -0
  188. package/dist/product-lifecycle-facts.d.ts +73 -0
  189. package/dist/remember.d.ts +350 -0
  190. package/dist/retained-output.d.ts +8 -0
  191. package/dist/sandbox-file-artifacts.d.ts +57 -0
  192. package/dist/sandbox-provider-command.d.ts +113 -0
  193. package/dist/sandbox-recovery.d.ts +146 -0
  194. package/dist/sandbox-snapshots.d.ts +39 -0
  195. package/dist/session-final-reply.d.ts +6 -0
  196. package/dist/session-final-reply.js +9 -0
  197. package/dist/session-final-reply.js.map +1 -0
  198. package/dist/session-goal-reports.d.ts +21 -0
  199. package/dist/session-history-import.d.ts +947 -0
  200. package/dist/session-list-entries.d.ts +4 -0
  201. package/dist/session-list-entries.js +51 -0
  202. package/dist/session-list-entries.js.map +1 -0
  203. package/dist/session-mcp-projections.d.ts +215 -0
  204. package/dist/session-message-search.d.ts +68 -0
  205. package/dist/session-titles.d.ts +68 -0
  206. package/dist/session-titles.js +25 -0
  207. package/dist/session-titles.js.map +1 -0
  208. package/dist/session-topology-primitives.d.ts +22 -0
  209. package/dist/signup-attribution.d.ts +39 -0
  210. package/dist/site-request-headers.test.d.ts +1 -0
  211. package/dist/site-session-http.d.ts +11 -0
  212. package/dist/site-session-http.js +11 -0
  213. package/dist/site-session-http.js.map +1 -0
  214. package/dist/skill-catalog-context.d.ts +7 -0
  215. package/dist/skill-files.d.ts +12 -0
  216. package/dist/skill-metadata.d.ts +9 -0
  217. package/dist/skill-use.d.ts +61 -0
  218. package/dist/skills.d.ts +185 -0
  219. package/dist/slack-bot-scopes.d.ts +46 -21
  220. package/dist/slack-bot-scopes.js +14 -3
  221. package/dist/slack-rest-mcp.d.ts +31 -0
  222. package/dist/slack-rest-mcp.js +19 -0
  223. package/dist/slack-rest-mcp.js.map +1 -0
  224. package/dist/spreadsheet-artifact-commands.d.ts +2 -3
  225. package/dist/spreadsheet-artifact-commands.js +4 -2
  226. package/dist/spreadsheet-artifact-query.js +3 -2
  227. package/dist/subscription-account-pools.d.ts +292 -0
  228. package/dist/task-notes.d.ts +42 -1
  229. package/dist/tool-catalog.d.ts +286 -0
  230. package/dist/tool-result-spill.d.ts +16 -0
  231. package/dist/usage-allowances.d.ts +285 -0
  232. package/dist/usage-allowances.js +49 -0
  233. package/dist/usage-allowances.js.map +1 -0
  234. package/dist/video-generation.d.ts +3 -0
  235. package/dist/video-generation.js +1 -1
  236. package/dist/work-claims.d.ts +411 -0
  237. package/dist/workspace-instruction-policies.d.ts +94 -0
  238. package/dist/workspace-integration-wire.d.ts +36 -0
  239. package/dist/workspace-integration-wire.js +23 -0
  240. package/dist/workspace-integration-wire.js.map +1 -0
  241. package/dist/workspace-integrations.d.ts +948 -0
  242. package/dist/workspace-learning-administration.d.ts +289 -0
  243. package/dist/workspace-learning-policy.d.ts +1 -1
  244. package/dist/workspace-state.d.ts +85 -416
  245. package/dist/xai-provider-account-authority.d.ts +3 -0
  246. package/dist/xai-provider-account-authority.js +1 -1
  247. package/package.json +134 -1
  248. package/src/agent-authored-durable-text.ts +116 -0
  249. package/src/agent-config.ts +1527 -0
  250. package/src/agent-instruction-changes.ts +98 -0
  251. package/src/agent-learning.ts +161 -0
  252. package/src/agent-topology.ts +69 -0
  253. package/src/allowance-refusal.ts +81 -0
  254. package/src/analytics-consent-report.ts +20 -0
  255. package/src/api-key-presets.ts +25 -0
  256. package/src/artifact-catalog.ts +60 -0
  257. package/src/artifacts.ts +146 -18
  258. package/src/atlassian-native-retirement.ts +33 -0
  259. package/src/browser-storage.ts +10 -0
  260. package/src/bundled-skills.ts +73 -0
  261. package/src/claude-provider-account-authority.ts +12 -0
  262. package/src/claude-subscription-oauth.ts +62 -0
  263. package/src/claude-subscription-usage.ts +59 -0
  264. package/src/client-error-report.ts +184 -0
  265. package/src/code-search.ts +105 -0
  266. package/src/company-brain-governed-writes.ts +356 -0
  267. package/src/company-brain.ts +201 -0
  268. package/src/company-profile.ts +167 -1
  269. package/src/connect.ts +202 -0
  270. package/src/connection-account-label.ts +46 -0
  271. package/src/connection-authority.ts +213 -0
  272. package/src/connector-attachments.ts +327 -0
  273. package/src/connector-tool-permissions.ts +60 -0
  274. package/src/direct-model-provider.ts +98 -0
  275. package/src/editable-artifact-codec-registry.ts +55 -17
  276. package/src/editable-artifact-committed-transaction.ts +44 -31
  277. package/src/editable-artifact-live.ts +123 -57
  278. package/src/editable-artifact-serialized-commit.ts +2 -1
  279. package/src/editable-artifact-versions.ts +26 -5
  280. package/src/editable-artifacts.ts +2 -0
  281. package/src/external-identities.ts +285 -0
  282. package/src/feedback.ts +39 -0
  283. package/src/github-repository-contracts.ts +85 -0
  284. package/src/github-repository.ts +59 -0
  285. package/src/google-drive.ts +76 -4
  286. package/src/governed-learning-activation.ts +191 -0
  287. package/src/governed-learning-evaluator.ts +176 -0
  288. package/src/host-mcp-bindings.ts +298 -0
  289. package/src/image-generation.ts +8 -2
  290. package/src/index.ts +7093 -1466
  291. package/src/insights-usage.ts +679 -0
  292. package/src/interaction.ts +220 -5
  293. package/src/knowledge-entries.ts +375 -0
  294. package/src/knowledge-preparation.ts +50 -0
  295. package/src/knowledge.ts +134 -6
  296. package/src/managed-auth-session-sets.ts +253 -0
  297. package/src/managed-sign-in-methods.ts +37 -0
  298. package/src/mcp-catalog-limits.ts +2 -0
  299. package/src/mcp-endpoint.ts +30 -0
  300. package/src/mcp-oauth.ts +66 -0
  301. package/src/modal-native-proof-v2.ts +398 -0
  302. package/src/model-availability.ts +22 -0
  303. package/src/model-connection-access.ts +17 -0
  304. package/src/model-context-inspector.ts +139 -0
  305. package/src/model-display.ts +195 -0
  306. package/src/model-picker-order.ts +97 -0
  307. package/src/organization-access.ts +176 -0
  308. package/src/organization-integration-policy.ts +54 -0
  309. package/src/organization-membership-lifecycle.ts +559 -0
  310. package/src/organization-model-usage.ts +72 -0
  311. package/src/organization-recovery.ts +186 -0
  312. package/src/organization-usage.ts +79 -0
  313. package/src/permissions.ts +58 -0
  314. package/src/personal-github.ts +267 -0
  315. package/src/plugin-discovery.ts +33 -0
  316. package/src/preference-registry.ts +20 -1
  317. package/src/product-analytics.ts +253 -0
  318. package/src/product-lifecycle-facts.ts +121 -0
  319. package/src/remember.ts +243 -0
  320. package/src/retained-output.ts +20 -3
  321. package/src/sandbox-file-artifacts.ts +73 -0
  322. package/src/sandbox-provider-command.ts +82 -0
  323. package/src/sandbox-recovery.ts +116 -0
  324. package/src/sandbox-snapshots.ts +142 -0
  325. package/src/session-final-reply.ts +16 -0
  326. package/src/session-goal-reports.ts +55 -0
  327. package/src/session-history-import.ts +159 -0
  328. package/src/session-list-entries.ts +91 -0
  329. package/src/session-mcp-projections.ts +273 -0
  330. package/src/session-message-search.ts +54 -0
  331. package/src/session-titles.ts +467 -0
  332. package/src/session-topology-primitives.ts +21 -0
  333. package/src/signup-attribution.ts +81 -0
  334. package/src/site-request-headers.test.ts +28 -0
  335. package/src/site-session-http.ts +63 -0
  336. package/src/skill-catalog-context.ts +50 -0
  337. package/src/skill-files.ts +52 -0
  338. package/src/skill-metadata.ts +40 -0
  339. package/src/skill-use.ts +77 -0
  340. package/src/skills.ts +136 -0
  341. package/src/slack-bot-scopes.ts +106 -42
  342. package/src/slack-rest-mcp.ts +194 -0
  343. package/src/spreadsheet-artifact-commands.ts +12 -13
  344. package/src/subscription-account-pools.ts +44 -0
  345. package/src/task-notes.ts +14 -1
  346. package/src/tool-catalog.ts +155 -0
  347. package/src/tool-result-spill.ts +35 -0
  348. package/src/usage-allowances.ts +187 -0
  349. package/src/work-claims.ts +266 -0
  350. package/src/workspace-instruction-policies.ts +31 -0
  351. package/src/workspace-integration-wire.ts +99 -0
  352. package/src/workspace-integrations.ts +640 -0
  353. package/src/workspace-learning-administration.ts +88 -0
  354. package/src/workspace-learning-policy.ts +4 -3
  355. package/src/workspace-state.ts +16 -126
  356. package/src/xai-provider-account-authority.ts +1 -0
  357. package/dist/chunk-5UDNP7AO.js.map +0 -1
  358. package/dist/chunk-BVGIYW7D.js +0 -11
  359. package/dist/chunk-BVGIYW7D.js.map +0 -1
  360. package/dist/chunk-CM6BMECR.js.map +0 -1
  361. package/dist/chunk-JBCIY7QD.js.map +0 -1
  362. package/dist/chunk-LSB7GRLG.js.map +0 -1
  363. package/dist/chunk-LW7OH6CS.js.map +0 -1
  364. package/dist/chunk-M5ZGRVIQ.js.map +0 -1
  365. package/dist/chunk-Q6A7XT2N.js +0 -16734
  366. package/dist/chunk-Q6A7XT2N.js.map +0 -1
  367. package/dist/chunk-TZ6YEYN4.js.map +0 -1
  368. package/dist/chunk-Y3MLSLB4.js.map +0 -1
  369. /package/dist/{chunk-CADSX6UN.js.map → chunk-Y3KNXVTD.js.map} +0 -0
@@ -0,0 +1,185 @@
1
+ import { z } from "zod";
2
+ export { parseSkillFrontmatter, readSkillMetadata } from "./skill-metadata.js";
3
+ export * from "./skill-files.js";
4
+ /** Files are UTF-8 text, relative to the Skill root. No executable authority. */
5
+ export declare const SkillFile: z.ZodObject<{
6
+ path: z.ZodString;
7
+ content: z.ZodString;
8
+ }, z.core.$strip>;
9
+ export type SkillFile = z.infer<typeof SkillFile>;
10
+ export declare const SkillActor: z.ZodDiscriminatedUnion<[z.ZodObject<{
11
+ kind: z.ZodLiteral<"service">;
12
+ subjectId: z.ZodString;
13
+ principalKind: z.ZodEnum<{
14
+ api_key: "api_key";
15
+ configured_key: "configured_key";
16
+ service: "service";
17
+ }>;
18
+ }, z.core.$strip>, z.ZodObject<{
19
+ kind: z.ZodLiteral<"human">;
20
+ subjectId: z.ZodString;
21
+ principalKind: z.ZodLiteral<"human_session">;
22
+ }, z.core.$strip>, z.ZodObject<{
23
+ kind: z.ZodLiteral<"agent">;
24
+ sessionId: z.ZodUUID;
25
+ turnId: z.ZodUUID;
26
+ attemptId: z.ZodUUID;
27
+ executionGeneration: z.ZodNumber;
28
+ }, z.core.$strip>], "kind">;
29
+ export type SkillActor = z.infer<typeof SkillActor>;
30
+ export type SkillScope = "workspace" | "organization" | "user";
31
+ export type SkillWriteContext = {
32
+ accountId: string;
33
+ workspaceId: string;
34
+ actor: SkillActor;
35
+ };
36
+ export type SkillSaveInput = SkillWriteContext & {
37
+ operationId: string;
38
+ skillId: string;
39
+ expectedRevisionId: string | null;
40
+ expectedScopeVersion: number;
41
+ stableKey: string;
42
+ files: SkillFile[];
43
+ scope?: SkillScope;
44
+ reason: string;
45
+ };
46
+ export type SkillRevisionInput = SkillWriteContext & {
47
+ removalOperationId?: string | undefined;
48
+ operationId: string;
49
+ skillId: string;
50
+ revisionId: string;
51
+ expectedRevisionId: string | null;
52
+ expectedScopeVersion: number;
53
+ reason: string;
54
+ };
55
+ export type SkillRemoveInput = SkillWriteContext & {
56
+ operationId: string;
57
+ skillId: string;
58
+ expectedRevisionId: string | null;
59
+ expectedScopeVersion: number;
60
+ reason: string;
61
+ };
62
+ export type SkillInstallInput = SkillWriteContext & {
63
+ operationId: string;
64
+ skillFacetId: string;
65
+ reason: string;
66
+ };
67
+ export declare const SkillReviewReference: z.ZodObject<{
68
+ removalOperationId: z.ZodOptional<z.ZodUUID>;
69
+ sourceOperationId: z.ZodUUID;
70
+ skillId: z.ZodUUID;
71
+ revisionId: z.ZodUUID;
72
+ expectedRevisionId: z.ZodNullable<z.ZodUUID>;
73
+ expectedScopeVersion: z.ZodNumber;
74
+ }, z.core.$strip>;
75
+ export type SkillReviewReference = z.infer<typeof SkillReviewReference>;
76
+ export declare function skillReviewHumanInput(skillReview: SkillReviewReference): {
77
+ questions: {
78
+ id: string;
79
+ kind: "single_select";
80
+ label: string;
81
+ prompt: string;
82
+ helpText: string;
83
+ options: {
84
+ id: string;
85
+ label: string;
86
+ }[];
87
+ required: boolean;
88
+ allowOther: boolean;
89
+ skillReview: {
90
+ removalOperationId?: string | undefined;
91
+ sourceOperationId: string;
92
+ skillId: string;
93
+ revisionId: string;
94
+ expectedRevisionId: string | null;
95
+ expectedScopeVersion: number;
96
+ };
97
+ }[];
98
+ };
99
+ export declare const SkillWriteReceipt: z.ZodObject<{
100
+ removed: z.ZodOptional<z.ZodBoolean>;
101
+ operationId: z.ZodUUID;
102
+ skillId: z.ZodUUID;
103
+ revisionId: z.ZodUUID;
104
+ outcome: z.ZodEnum<{
105
+ applied: "applied";
106
+ pending: "pending";
107
+ preserved: "preserved";
108
+ }>;
109
+ decision: z.ZodOptional<z.ZodLiteral<"rejected">>;
110
+ pendingReason: z.ZodOptional<z.ZodEnum<{
111
+ approval: "approval";
112
+ source_finalization: "source_finalization";
113
+ }>>;
114
+ skillReview: z.ZodOptional<z.ZodObject<{
115
+ removalOperationId: z.ZodOptional<z.ZodUUID>;
116
+ sourceOperationId: z.ZodUUID;
117
+ skillId: z.ZodUUID;
118
+ revisionId: z.ZodUUID;
119
+ expectedRevisionId: z.ZodNullable<z.ZodUUID>;
120
+ expectedScopeVersion: z.ZodNumber;
121
+ }, z.core.$strip>>;
122
+ replayed: z.ZodBoolean;
123
+ }, z.core.$strip>;
124
+ export type SkillWriteReceipt = z.infer<typeof SkillWriteReceipt>;
125
+ export declare const SkillPublicationReceipt: z.ZodObject<{
126
+ removed: z.ZodOptional<z.ZodBoolean>;
127
+ operationId: z.ZodUUID;
128
+ skillId: z.ZodUUID;
129
+ revisionId: z.ZodUUID;
130
+ outcome: z.ZodEnum<{
131
+ applied: "applied";
132
+ pending: "pending";
133
+ preserved: "preserved";
134
+ }>;
135
+ decision: z.ZodOptional<z.ZodLiteral<"rejected">>;
136
+ pendingReason: z.ZodOptional<z.ZodEnum<{
137
+ approval: "approval";
138
+ source_finalization: "source_finalization";
139
+ }>>;
140
+ skillReview: z.ZodOptional<z.ZodObject<{
141
+ removalOperationId: z.ZodOptional<z.ZodUUID>;
142
+ sourceOperationId: z.ZodUUID;
143
+ skillId: z.ZodUUID;
144
+ revisionId: z.ZodUUID;
145
+ expectedRevisionId: z.ZodNullable<z.ZodUUID>;
146
+ expectedScopeVersion: z.ZodNumber;
147
+ }, z.core.$strip>>;
148
+ replayed: z.ZodBoolean;
149
+ sourceOperationId: z.ZodUUID;
150
+ activationEventId: z.ZodNullable<z.ZodUUID>;
151
+ }, z.core.$strip>;
152
+ export type SkillPublicationReceipt = z.infer<typeof SkillPublicationReceipt>;
153
+ export declare const SkillSourceReleaseReceipt: z.ZodObject<{
154
+ skillId: z.ZodUUID;
155
+ revisionId: z.ZodNullable<z.ZodUUID>;
156
+ disposition: z.ZodEnum<{
157
+ deactivated: "deactivated";
158
+ inactive: "inactive";
159
+ preserved: "preserved";
160
+ }>;
161
+ eventId: z.ZodNullable<z.ZodUUID>;
162
+ warning: z.ZodNullable<z.ZodString>;
163
+ }, z.core.$strip>;
164
+ export type SkillSourceReleaseReceipt = z.infer<typeof SkillSourceReleaseReceipt>;
165
+ export type SkillRecord = {
166
+ removalOperationId?: string | null;
167
+ activationMode: "workspace_managed" | "session_selected";
168
+ pendingRevisionIds: string[];
169
+ id: string;
170
+ stableKey: string;
171
+ scope: SkillScope;
172
+ scopeVersion: number;
173
+ status: string;
174
+ activeRevisionId: string | null;
175
+ revisionId: string | null;
176
+ title: string | null;
177
+ description: string | null;
178
+ contentHash: string | null;
179
+ files: SkillFile[];
180
+ source: {
181
+ pluginId: string;
182
+ facetKey: string;
183
+ skillFacetId: string;
184
+ } | null;
185
+ };
@@ -1,52 +1,75 @@
1
1
  export declare const OPENGENI_SLACK_BOT_REQUIRED_SCOPES: readonly ["app_mentions:read", "canvases:read", "channels:history", "channels:read", "chat:write", "commands", "files:read", "groups:history", "groups:read", "im:history", "im:read", "im:write", "mpim:history", "mpim:read", "users:read"];
2
2
  /** Read-only scope needed only for the optional emoji-reaction summon surface. */
3
3
  export declare const OPENGENI_SLACK_REACTION_REQUIRED_SCOPE: "reactions:read";
4
+ /** Optional grant for explicit retained-file delivery to a task's Slack thread. */
5
+ export declare const OPENGENI_SLACK_FILE_UPLOAD_REQUIRED_SCOPE: "files:write";
6
+ /**
7
+ * Bot-token search scopes for Slack's Real-time Search API
8
+ * (`assistant.search.context`). Slack accepts these as BOT scopes, so
9
+ * workspace-wide public search runs under the bot identity and never needs a
10
+ * human proxy token. Private-channel, DM, and MPIM search remain user-token
11
+ * only and belong exclusively to the personal hosted-MCP grant.
12
+ */
13
+ export declare const OPENGENI_SLACK_BOT_SEARCH_SCOPES: readonly ["search:read.public", "search:read.files", "search:read.users"];
4
14
  /**
5
15
  * Scopes requested by the managed and generated self-hosted manifests.
6
16
  *
7
- * `reactions:read` is deliberately not part of the base eligibility contract:
8
- * legacy installations may continue using existing Slack interactions and
9
- * tools while the reaction setting stays disabled and the UI asks an admin to
10
- * reinstall.
17
+ * `reactions:read`, `files:write`, and the bot search scopes are not part of the
18
+ * base eligibility contract: legacy installations may continue using existing
19
+ * Slack interactions and tools while the reaction setting stays disabled, bot
20
+ * search and file delivery stay unavailable, and the tools ask an admin to reinstall.
11
21
  */
12
- export declare const OPENGENI_SLACK_BOT_REQUESTED_SCOPES: readonly ["app_mentions:read", "canvases:read", "channels:history", "channels:read", "chat:write", "commands", "files:read", "groups:history", "groups:read", "im:history", "im:read", "im:write", "mpim:history", "mpim:read", "users:read", "reactions:read"];
13
- export declare const OPENGENI_SLACK_BOT_EVENTS: readonly ["app_mention", "message.channels", "message.groups", "message.im", "message.mpim", "reaction_added"];
14
- /** Full user-token scope set for every tool currently exposed by Slack's hosted MCP server. */
15
- export declare const OPENGENI_SLACK_MCP_USER_SCOPES: readonly ["search:read.public", "search:read.private", "search:read.mpim", "search:read.im", "search:read.files", "files:read", "emoji:read", "search:read.users", "chat:write", "channels:history", "groups:history", "mpim:history", "im:history", "channels:write", "groups:write", "im:write", "mpim:write", "reactions:write", "canvases:read", "canvases:write", "users:read", "users:read.email", "channels:read", "groups:read", "mpim:read"];
22
+ export declare const OPENGENI_SLACK_BOT_REQUESTED_SCOPES: readonly ["app_mentions:read", "canvases:read", "channels:history", "channels:read", "chat:write", "commands", "files:read", "groups:history", "groups:read", "im:history", "im:read", "im:write", "mpim:history", "mpim:read", "users:read", "reactions:read", "files:write"];
23
+ export declare function openGeniSlackBotRequestedScopes(mode?: "limited" | "full"): string[];
24
+ export declare const OPENGENI_SLACK_BOT_EVENTS: readonly ["app_home_opened", "app_mention", "message.channels", "message.groups", "message.im", "message.mpim", "reaction_added"];
25
+ /** User grants required by the reviewed Slack API MCP tools. */
26
+ export declare const OPENGENI_SLACK_MCP_USER_SCOPES: readonly ["channels:read", "groups:read", "im:read", "mpim:read", "channels:history", "groups:history", "im:history", "mpim:history", "users:read", "im:write", "chat:write"];
16
27
  export declare const OPENGENI_MANAGED_PUBLIC_BASE_URL: "https://app.opengeni.ai";
28
+ export type OpenGeniSlackBotManifestOptions = Readonly<{
29
+ appName?: string;
30
+ botDisplayName?: string;
31
+ slashCommand?: string;
32
+ shortcutName?: string;
33
+ accessMode?: "limited" | "full";
34
+ }>;
17
35
  /** Canonical managed/self-hosted Slack app manifest. Slack accepts JSON manifests. */
18
- export declare function buildOpenGeniSlackBotManifest(publicBaseUrl: string): {
36
+ export declare function buildOpenGeniSlackBotManifest(publicBaseUrl: string, options?: OpenGeniSlackBotManifestOptions): {
19
37
  readonly display_information: {
20
- readonly name: "OpenGeni";
38
+ readonly name: string;
21
39
  };
22
40
  readonly features: {
41
+ readonly app_home: {
42
+ readonly home_tab_enabled: true;
43
+ readonly messages_tab_enabled: true;
44
+ readonly messages_tab_read_only_enabled: false;
45
+ };
23
46
  readonly bot_user: {
24
- readonly display_name: "OpenGeni";
47
+ readonly display_name: string;
25
48
  readonly always_online: false;
26
49
  };
27
50
  readonly slash_commands: readonly [{
28
- readonly command: "/opengeni";
29
- readonly description: "Start an OpenGeni task in this channel";
51
+ readonly command: string;
52
+ readonly description: "Start an Opengeni task in this channel";
30
53
  readonly should_escape: false;
31
54
  readonly url: `${string}/v1/integrations/slack/commands`;
32
55
  }];
33
56
  readonly shortcuts: readonly [{
34
57
  readonly callback_id: "opengeni_message";
35
- readonly description: "Start an OpenGeni task from this Slack message";
36
- readonly name: "Open in OpenGeni";
58
+ readonly description: "Start an Opengeni task from this Slack message";
59
+ readonly name: string;
37
60
  readonly type: "message";
38
61
  }];
39
62
  };
40
63
  readonly oauth_config: {
41
64
  readonly redirect_urls: readonly [`${string}/v1/integrations/oauth/callback`, `${string}/v1/integrations/slack/callback`];
42
65
  readonly scopes: {
43
- readonly bot: readonly ["app_mentions:read", "canvases:read", "channels:history", "channels:read", "chat:write", "commands", "files:read", "groups:history", "groups:read", "im:history", "im:read", "im:write", "mpim:history", "mpim:read", "users:read", "reactions:read"];
44
- readonly user: readonly ["search:read.public", "search:read.private", "search:read.mpim", "search:read.im", "search:read.files", "files:read", "emoji:read", "search:read.users", "chat:write", "channels:history", "groups:history", "mpim:history", "im:history", "channels:write", "groups:write", "im:write", "mpim:write", "reactions:write", "canvases:read", "canvases:write", "users:read", "users:read.email", "channels:read", "groups:read", "mpim:read"];
66
+ readonly bot: string[];
67
+ readonly user: readonly ["channels:read", "groups:read", "im:read", "mpim:read", "channels:history", "groups:history", "im:history", "mpim:history", "users:read", "im:write", "chat:write"];
45
68
  };
46
69
  };
47
70
  readonly settings: {
48
71
  readonly event_subscriptions: {
49
- readonly bot_events: readonly ["app_mention", "message.channels", "message.groups", "message.im", "message.mpim", "reaction_added"];
72
+ readonly bot_events: readonly ["app_home_opened", "app_mention", "message.channels", "message.groups", "message.im", "message.mpim", "reaction_added"];
50
73
  readonly request_url: `${string}/v1/integrations/slack/events`;
51
74
  };
52
75
  readonly interactivity: {
@@ -60,11 +83,13 @@ export declare function buildOpenGeniSlackBotManifest(publicBaseUrl: string): {
60
83
  };
61
84
  };
62
85
  /**
63
- * Optional bot grants that remain inside the shipped bot's read/identity
64
- * boundary. Every other unrequired scope fails closed, including unknown future
86
+ * Optional bot grants used by the shipped read/identity and task-file-delivery
87
+ * surfaces. Every other unrequired scope fails closed, including unknown future
65
88
  * Slack scopes, so verification, core routing, and UI eligibility cannot drift.
66
89
  */
67
- export declare const OPENGENI_SLACK_BOT_SAFE_OPTIONAL_SCOPES: readonly ["team:read", "reactions:read"];
90
+ export declare const OPENGENI_SLACK_BOT_SAFE_OPTIONAL_SCOPES: readonly ["team:read", "reactions:read", "files:write", "search:read.public", "search:read.files", "search:read.users"];
91
+ export declare function hasOpenGeniSlackFileUploadScope(grantedScopes: readonly string[]): boolean;
92
+ export declare function hasOpenGeniSlackBotSearchScopes(grantedScopes: readonly string[]): boolean;
68
93
  /** @deprecated Use evaluateOpenGeniSlackBotScopes; an allowlist is the policy. */
69
94
  export declare const OPENGENI_SLACK_BOT_FORBIDDEN_SCOPES: readonly ["channels:join", "chat:write.public"];
70
95
  export type OpenGeniSlackBotScopePolicy = {
@@ -5,13 +5,19 @@ import {
5
5
  OPENGENI_SLACK_BOT_REQUESTED_SCOPES,
6
6
  OPENGENI_SLACK_BOT_REQUIRED_SCOPES,
7
7
  OPENGENI_SLACK_BOT_SAFE_OPTIONAL_SCOPES,
8
+ OPENGENI_SLACK_BOT_SEARCH_SCOPES,
9
+ OPENGENI_SLACK_FILE_UPLOAD_REQUIRED_SCOPE,
8
10
  OPENGENI_SLACK_MCP_USER_SCOPES,
9
11
  OPENGENI_SLACK_REACTION_REQUIRED_SCOPE,
10
12
  areOpenGeniSlackBotScopesAccepted,
11
13
  buildOpenGeniSlackBotManifest,
12
14
  evaluateOpenGeniSlackBotScopes,
13
- hasOpenGeniSlackReactionScope
14
- } from "./chunk-5UDNP7AO.js";
15
+ hasOpenGeniSlackBotSearchScopes,
16
+ hasOpenGeniSlackFileUploadScope,
17
+ hasOpenGeniSlackReactionScope,
18
+ openGeniSlackBotRequestedScopes
19
+ } from "./chunk-FZ6BXQHL.js";
20
+ import "./chunk-MZLBPKFE.js";
15
21
  export {
16
22
  OPENGENI_MANAGED_PUBLIC_BASE_URL,
17
23
  OPENGENI_SLACK_BOT_EVENTS,
@@ -19,11 +25,16 @@ export {
19
25
  OPENGENI_SLACK_BOT_REQUESTED_SCOPES,
20
26
  OPENGENI_SLACK_BOT_REQUIRED_SCOPES,
21
27
  OPENGENI_SLACK_BOT_SAFE_OPTIONAL_SCOPES,
28
+ OPENGENI_SLACK_BOT_SEARCH_SCOPES,
29
+ OPENGENI_SLACK_FILE_UPLOAD_REQUIRED_SCOPE,
22
30
  OPENGENI_SLACK_MCP_USER_SCOPES,
23
31
  OPENGENI_SLACK_REACTION_REQUIRED_SCOPE,
24
32
  areOpenGeniSlackBotScopesAccepted,
25
33
  buildOpenGeniSlackBotManifest,
26
34
  evaluateOpenGeniSlackBotScopes,
27
- hasOpenGeniSlackReactionScope
35
+ hasOpenGeniSlackBotSearchScopes,
36
+ hasOpenGeniSlackFileUploadScope,
37
+ hasOpenGeniSlackReactionScope,
38
+ openGeniSlackBotRequestedScopes
28
39
  };
29
40
  //# sourceMappingURL=slack-bot-scopes.js.map
@@ -0,0 +1,31 @@
1
+ /** The catalog and OAuth identity stay stable while calls use the ordinary Web API. */
2
+ export declare const OFFICIAL_SLACK_MCP_URL = "https://mcp.slack.com/mcp";
3
+ export declare const SLACK_REST_API_BASE = "https://slack.com/api/";
4
+ export declare const OPENGENI_SLACK_REST_USER_SCOPES: readonly ["channels:read", "groups:read", "im:read", "mpim:read", "channels:history", "groups:history", "im:history", "mpim:history", "users:read", "im:write", "chat:write"];
5
+ /** Slack returns comma-delimited scopes, including in existing saved grants. */
6
+ export declare function normalizeSlackScopes(scopes: readonly string[] | string | undefined | null): string[];
7
+ export type SlackRestMcpTool = {
8
+ name: string;
9
+ description: string;
10
+ inputSchema: {
11
+ type: "object";
12
+ properties: Record<string, unknown>;
13
+ required: string[];
14
+ additionalProperties: false;
15
+ };
16
+ annotations: {
17
+ readOnlyHint: boolean;
18
+ destructiveHint: false;
19
+ idempotentHint: boolean;
20
+ openWorldHint: true;
21
+ };
22
+ };
23
+ /** Static reviewed pilot surface. Each call reads only one explicitly requested page. */
24
+ export declare const SLACK_REST_MCP_TOOLS: SlackRestMcpTool[];
25
+ export declare function slackRestMcpToolsForScopes(scopes: readonly string[] | string): SlackRestMcpTool[];
26
+ export declare const SLACK_CONVERSATION_READ_SCOPE_BY_TYPE: {
27
+ readonly public_channel: "channels:read";
28
+ readonly private_channel: "groups:read";
29
+ readonly im: "im:read";
30
+ readonly mpim: "mpim:read";
31
+ };
@@ -0,0 +1,19 @@
1
+ import {
2
+ OFFICIAL_SLACK_MCP_URL,
3
+ OPENGENI_SLACK_REST_USER_SCOPES,
4
+ SLACK_CONVERSATION_READ_SCOPE_BY_TYPE,
5
+ SLACK_REST_API_BASE,
6
+ SLACK_REST_MCP_TOOLS,
7
+ normalizeSlackScopes,
8
+ slackRestMcpToolsForScopes
9
+ } from "./chunk-MZLBPKFE.js";
10
+ export {
11
+ OFFICIAL_SLACK_MCP_URL,
12
+ OPENGENI_SLACK_REST_USER_SCOPES,
13
+ SLACK_CONVERSATION_READ_SCOPE_BY_TYPE,
14
+ SLACK_REST_API_BASE,
15
+ SLACK_REST_MCP_TOOLS,
16
+ normalizeSlackScopes,
17
+ slackRestMcpToolsForScopes
18
+ };
19
+ //# sourceMappingURL=slack-rest-mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,10 +1,11 @@
1
+ import { SPREADSHEET_ARTIFACT_COMMAND_VERSION } from "./editable-artifact-versions.js";
1
2
  /**
2
3
  * Canonical, identity-free spreadsheet mutation commands nested inside
3
4
  * `OGATX001`. Artifact, actor, transaction, delivery, and causal identity must
4
5
  * never be added here: the outer authored-intent envelope is their sole wire
5
6
  * authority.
6
7
  */
7
- export declare const SPREADSHEET_ARTIFACT_COMMAND_VERSION: 1;
8
+ export { SPREADSHEET_ARTIFACT_COMMAND_VERSION } from "./editable-artifact-versions.js";
8
9
  export declare const SPREADSHEET_ARTIFACT_COMMAND_MAX_BYTES: number;
9
10
  export declare const SPREADSHEET_ARTIFACT_COMMAND_MAX_COMMANDS = 4096;
10
11
  export declare const SPREADSHEET_ARTIFACT_COMMAND_MAX_CELLS = 1000000;
@@ -53,7 +54,6 @@ export type SpreadsheetDateValue = Readonly<{
53
54
  export type SpreadsheetCellScalar = null | boolean | number | string | SpreadsheetDateValue | SpreadsheetFormulaError;
54
55
  export type SpreadsheetFormulaCell = Readonly<{
55
56
  formula: string;
56
- cached: SpreadsheetCellScalar;
57
57
  }>;
58
58
  export type SpreadsheetCellInput = SpreadsheetCellScalar | SpreadsheetFormulaCell;
59
59
  export type SpreadsheetCreateSheetCommand = Readonly<{
@@ -98,4 +98,3 @@ export declare function encodeSpreadsheetArtifactCommandBatch(input: Spreadsheet
98
98
  export declare function decodeSpreadsheetArtifactCommandBatch(bytes: Uint8Array): SpreadsheetArtifactCommandBatch;
99
99
  /** Decodes, re-encodes, and proves byte-for-byte canonicality. */
100
100
  export declare function assertCanonicalSpreadsheetArtifactCommandBytes(bytes: Uint8Array): Uint8Array;
101
- export {};
@@ -3,14 +3,16 @@ import {
3
3
  SPREADSHEET_ARTIFACT_COMMAND_MAX_CELLS,
4
4
  SPREADSHEET_ARTIFACT_COMMAND_MAX_COMMANDS,
5
5
  SPREADSHEET_ARTIFACT_COMMAND_MAX_STRING_BYTES,
6
- SPREADSHEET_ARTIFACT_COMMAND_VERSION,
7
6
  SPREADSHEET_ARTIFACT_SHEET_NAME_MAX_UTF16_UNITS,
8
7
  assertCanonicalSpreadsheetArtifactCommandBytes,
9
8
  decodeSpreadsheetArtifactCommandBatch,
10
9
  editableArtifactStableId,
11
10
  encodeSpreadsheetArtifactCommandBatch,
12
11
  spreadsheetSheetId
13
- } from "./chunk-LSB7GRLG.js";
12
+ } from "./chunk-TXTQIYCV.js";
13
+ import {
14
+ SPREADSHEET_ARTIFACT_COMMAND_VERSION
15
+ } from "./chunk-PX3VCKAU.js";
14
16
  export {
15
17
  SPREADSHEET_ARTIFACT_COMMAND_MAX_BYTES,
16
18
  SPREADSHEET_ARTIFACT_COMMAND_MAX_CELLS,
@@ -20,8 +20,9 @@ import {
20
20
  encodeSpreadsheetMetadataKernelQuery,
21
21
  encodeSpreadsheetViewportKernelProjection,
22
22
  encodeSpreadsheetViewportKernelQuery
23
- } from "./chunk-CADSX6UN.js";
24
- import "./chunk-LSB7GRLG.js";
23
+ } from "./chunk-Y3KNXVTD.js";
24
+ import "./chunk-TXTQIYCV.js";
25
+ import "./chunk-PX3VCKAU.js";
25
26
  export {
26
27
  SPREADSHEET_ARTIFACT_METADATA_MAX_SHEETS,
27
28
  SPREADSHEET_ARTIFACT_METADATA_MIN_RESPONSE_BYTES,