@webskill/sdk 0.21.0 → 0.22.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 (132) hide show
  1. package/dist/abnfDiagram-O67JEVCF-DtYFjfqO.js +109 -0
  2. package/dist/agent.d.ts +3 -3
  3. package/dist/agent.js +1012 -130
  4. package/dist/{approval-DwN2o2QG.js → approval-DWQlDPbY.js} +102 -16
  5. package/dist/arc-8U_6NQWm.js +130 -0
  6. package/dist/architecture-7GRP2DOG-RTw1wpAq.js +4 -0
  7. package/dist/architectureDiagram-NJMV4G6O-XmmXrJAK.js +7473 -0
  8. package/dist/array-DQfpQNY8.js +8 -0
  9. package/dist/blockDiagram-BEXU5L5S-D4yjnCD1.js +2582 -0
  10. package/dist/browser.d.ts +444 -48
  11. package/dist/browser.js +1771 -91
  12. package/dist/c4Diagram-YGBWAQC7-BLmA_JSd.js +3668 -0
  13. package/dist/channel-CZxxLrG7.js +9 -0
  14. package/dist/chunk-2Q5K7J3B-Ck03gkFR.js +21 -0
  15. package/dist/chunk-3FUC2YCW-tr6jmbQf.js +530 -0
  16. package/dist/chunk-5DYCD2WN-Bt97YGTd.js +58 -0
  17. package/dist/chunk-5VM5RSS4-BBxa48HL.js +21 -0
  18. package/dist/chunk-6AEJRKK7-JXK89I-O.js +14 -0
  19. package/dist/chunk-742MDFTN-CPmgCGwC.js +466 -0
  20. package/dist/chunk-7INBJB4K-C9jq9o66.js +6552 -0
  21. package/dist/chunk-7M6MHVWA-BrKCWcR1.js +4894 -0
  22. package/dist/chunk-7PRAP22T-BHED6GVs.js +95 -0
  23. package/dist/chunk-DUW6YSOI-DoZj78PO.js +19 -0
  24. package/dist/chunk-FOHPRMQF-Dkbp819z.js +27189 -0
  25. package/dist/chunk-GNY47TPC-Bpvq1T49.js +87 -0
  26. package/dist/chunk-GTNCS2PH-CLmh4I2c.js +686 -0
  27. package/dist/chunk-GWA4HPMP-B6vN3fkL.js +95 -0
  28. package/dist/chunk-J5ZVWO5B-Bi_Pcobw.js +26 -0
  29. package/dist/chunk-JWPE2WC7-D1rC79GS.js +12 -0
  30. package/dist/chunk-LNGE3PJU-D5OIoe3Z.js +2582 -0
  31. package/dist/chunk-MBY4JIJT-C34L7a4f.js +2276 -0
  32. package/dist/chunk-NETBCI7D-Cg84k8N8.js +321 -0
  33. package/dist/chunk-O7XYJQB3-B6K0KOSL.js +8846 -0
  34. package/dist/chunk-UA2S7LBM-DxHM29_K.js +612 -0
  35. package/dist/chunk-WEXAMYUT-Ba6jFWhB.js +33 -0
  36. package/dist/chunk-XXDRQBXY-DPbSy4kg.js +12 -0
  37. package/dist/chunk-Y2CYZVJY-U3QOMqrW.js +15 -0
  38. package/dist/chunk-Z7XXMR3K-oLg1h8F3.js +1038 -0
  39. package/dist/chunk-ZIGJFQKS-DqEFBuHR.js +2215 -0
  40. package/dist/classDiagram-v2-NBCMYWYE-BqnOWIUt.js +3845 -0
  41. package/dist/cose-bilkent-JH36ORCC-C0dTAHVK.js +4270 -0
  42. package/dist/cynefin-OW5HDTMX-B2QvgEQj.js +4 -0
  43. package/dist/cynefinDiagram-VND7K2PF-yAWc6Z3W.js +479 -0
  44. package/dist/cytoscape.esm-C64mRh9B.js +28325 -0
  45. package/dist/dagre-6A5THRUB-D0w2W27v.js +4816 -0
  46. package/dist/defaultLocale-B_EoOkSF.js +249 -0
  47. package/dist/diagram-22UHCM2B-DvgzhUzP.js +6115 -0
  48. package/dist/diagram-3UASUU5V-DWgUB-ef.js +795 -0
  49. package/dist/diagram-ATOU4E4O-P1olqwIs.js +553 -0
  50. package/dist/diagram-CDSNMT55-BUlZuLUe.js +402 -0
  51. package/dist/diagram-MLGK6HIB-6w5qmkGt.js +186 -0
  52. package/dist/diagram-MPIPVDR6-DEFiSo8o.js +289 -0
  53. package/dist/dist-UajCDt3n.js +92 -0
  54. package/dist/ebnfDiagram-ZINNZB2B-CI8liCfR.js +123 -0
  55. package/dist/elk-276RUBZZ-3SvW6OAK.js +90034 -0
  56. package/dist/erDiagram-OPXOYQCR-CPTbKhwP.js +2301 -0
  57. package/dist/eventmodeling-NTZA5JFV-BlyuqGp0.js +4 -0
  58. package/dist/flowDiagram-KWPJA3E3-CcUJ6HbV.js +18 -0
  59. package/dist/ganttDiagram-FUAMR5RP-31UjY0KK.js +3939 -0
  60. package/dist/{toolSource-C9oNuKmr.js → geometry-wx5ZTYzi.js} +162 -12
  61. package/dist/gitGraph-4MIJSDKK-ChdVlrk7.js +4 -0
  62. package/dist/gitGraphDiagram-X574FWY7-DKuxJymB.js +1153 -0
  63. package/dist/governance.d.ts +3 -3
  64. package/dist/graphlib-tk9gQYuN.js +4194 -0
  65. package/dist/{index-B8Tgmpwh.d.ts → index-BiO9_XRk.d.ts} +2 -2
  66. package/dist/{index-CYLt5u4L.d.ts → index-CjwdZQOS.d.ts} +700 -12
  67. package/dist/{index-DHopiH_m.d.ts → index-YPd8ZSEa.d.ts} +156 -9
  68. package/dist/index.d.ts +4 -4
  69. package/dist/index.js +6 -6
  70. package/dist/info-A6RAGUB7-CxRAt9S9.js +4 -0
  71. package/dist/infoDiagram-VRGFBTTK-pRspGfjZ.js +25 -0
  72. package/dist/init-CMOIWdg-.js +16 -0
  73. package/dist/ishikawaDiagram-OU5B5YK6-DKerAPAg.js +975 -0
  74. package/dist/journeyDiagram-ZHPQQLJL-C4MK-YO5.js +1227 -0
  75. package/dist/kanban-definition-PNTS6WVX-BqsZpMXx.js +1244 -0
  76. package/dist/katex-BcRRvyh_.js +26465 -0
  77. package/dist/{kind-DaKqLX2F.js → kind-Dc8x0HWz.js} +54 -7
  78. package/dist/line-LgV8iVMV.js +48 -0
  79. package/dist/linear-BWKR0Tqd.js +393 -0
  80. package/dist/linkedDocument-CIuh_Yp0.js +416 -0
  81. package/dist/mcp.d.ts +2 -2
  82. package/dist/{memoryArtifactStore-D6dLeY55.js → memoryArtifactStore-Bs7glPqm.js} +14 -0
  83. package/dist/mermaid-parser.core-pYR5siSx.js +754 -0
  84. package/dist/mermaid.core-DMtwGCHy.js +1756 -0
  85. package/dist/mindmap-definition-NLK3R4M7-CXbD-myG.js +1312 -0
  86. package/dist/node.d.ts +3 -3
  87. package/dist/node.js +2 -2
  88. package/dist/{openUiLibrary-b0i7F_oZ.js → openUiLibrary-B7j3rLrm.js} +1 -1
  89. package/dist/{openUiSpecLang-CLXJEeRU.js → openUiSpecLang-BSYYnjay.js} +1 -1
  90. package/dist/ordinal-CxA6GHQS.js +84 -0
  91. package/dist/packet-AYTQ26CC-BOm08cxl.js +4 -0
  92. package/dist/path-C27Z2Bjv.js +106 -0
  93. package/dist/pegDiagram-GJSIUBJH-BLGJOewQ.js +115 -0
  94. package/dist/pie-WAS4IAKB-Dvg7glpk.js +4 -0
  95. package/dist/pieDiagram-5QR66LMP-laoaV_PB.js +298 -0
  96. package/dist/quadrantDiagram-O4NWA36T-Db_wFBkT.js +2236 -0
  97. package/dist/radar-RG4KPBEZ-BZDaTu06.js +4 -0
  98. package/dist/railroad-74A4TZTK-C-UhjkOy.js +4 -0
  99. package/dist/railroad-abnf-HS5TGJTU-dUKVA4OS.js +4 -0
  100. package/dist/railroad-ebnf-LZEXJU2U-DzQumk18.js +4 -0
  101. package/dist/railroad-peg-WCYAUIDC-B3vvTWed.js +4 -0
  102. package/dist/railroadDiagram-XR7U4H2S-BY0sTM4X.js +89 -0
  103. package/dist/requirementDiagram-PLB6GJNP-3rkQfEhs.js +2474 -0
  104. package/dist/rough.cjs-AmDd_NQk.js +1395 -0
  105. package/dist/sankeyDiagram-IPEJSGJF-CGAJhyG2.js +3578 -0
  106. package/dist/sequenceDiagram-PO4LG4MO-9FJjFX06.js +5522 -0
  107. package/dist/sizeCapture-INFHLROL-D8PWxdOn.js +56 -0
  108. package/dist/{skillVersionStore-B24Jjjry-BkOk9wI_.d.ts → skillVersionStore-B24Jjjry-BY1H7Krp.d.ts} +1 -1
  109. package/dist/src-NkhI3UMl.js +2653 -0
  110. package/dist/stateDiagram-v2-GCMORJYK-B0O3wc1-.js +2715 -0
  111. package/dist/swimlanes-2SLR337P-D4EOnrpu.js +6637 -0
  112. package/dist/swimlanesDiagram-TC7HE7FX-BUx29EJ9.js +30 -0
  113. package/dist/testing.d.ts +2 -1
  114. package/dist/testing.js +1 -1
  115. package/dist/timeline-definition-EJHVYXUP-CrgiiB4C.js +1513 -0
  116. package/dist/treeView-Q6P3EWNA-C1by-Gzc.js +4 -0
  117. package/dist/treemap-WGGIJYW6-mC2NZ6ad.js +4 -0
  118. package/dist/{types-BvTV_05--BW8zDuEk.d.ts → types-CpDRZ0rA-BM5FI9oN.d.ts} +59 -8
  119. package/dist/ui-react.d.ts +3 -3
  120. package/dist/ui-react.js +3718 -77
  121. package/dist/ui-vue.d.ts +1 -1
  122. package/dist/ui.d.ts +3 -3
  123. package/dist/ui.js +2 -2
  124. package/dist/usecaseDiagram-POWQR4AR-BUt_TQOY.js +14397 -0
  125. package/dist/vennDiagram-UO4OBE2U-CwXr0wjA.js +2808 -0
  126. package/dist/wardley-WFR3VGLG-CVSYjq_S.js +4 -0
  127. package/dist/wardleyDiagram-VNRHLVJA-Cpfd47dQ.js +874 -0
  128. package/dist/{webSkillApi-Cib6G-94.js → webSkillApi-Dy-Zjv0y.js} +1 -1
  129. package/dist/{webskillLitCatalog-W06npwej.js → webskillLitCatalog-D5BCiMCU.js} +1 -1
  130. package/dist/xychartDiagram-PMCCYNJV-e1TeVoc6.js +2704 -0
  131. package/package.json +1 -1
  132. package/dist/linkedDocument-C0gj1sMq.js +0 -245
package/dist/browser.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { At as UnsignedPolicy, Dt as TrustedKeyStore, H as FileStat, Mt as VerifyResult, N as ArchiveLimits, Nt as WebSkillError, S as UiBridge, U as FileSystemProvider, W as FileWriteStream, b as RenderResultRequest, c as InteractionResponse, l as LlmClient, m as LlmStreamEvent, mt as SkillInstallSource, o as InteractionPolicy, p as LlmResponse, s as InteractionRequest, u as LlmCompleteInput, v as MemoryStore, vt as SkillManifest, wt as SkillsLockfile } from "./types-BvTV_05--BW8zDuEk.js";
2
- import { M as DocumentSurfaceHost, R as ExternalSkillProvider, Rr as parseBridgeRequest, S as BridgeResponse, Sn as ToolDefinition, Tn as ToolResult, Xt as ScriptExecutor, Yt as ScriptExecutionContext, ct as NetworkPolicy, fr as bridgeError, ir as WebSkillApi, m as ApprovalScope, ot as LinkedDocumentReader, x as BridgeRequest, y as BridgeCapabilities, z as ExternalToolSource } from "./index-DHopiH_m.js";
3
- import { At as PageActionRequest, Et as PageActionOutcome, H as DocxDocumentContent, It as PageAuditSink, Ln as XlsxDocumentContent, Lt as PagePerceptionPolicy, Mt as PageActionScopeInput, Nt as PageActionTarget, Qt as PerceptionResult, Rn as XlsxDocumentReader, U as DocxDocumentReader, Ut as PdfDocumentReader, Yt as PerceptionCaptureOptions, _n as SubtreeRejection, dt as NestedFrameRef, en as PerceptionScopeInput, qt as PerceivedNode, s as ConsentUi, wt as PageActionExecutor, zt as PagePerceptionReader } from "./index-CYLt5u4L.js";
1
+ import { G as FileStat, It as VerifyResult, K as FileSystemProvider, Lt as WebSkillError, N as ArchiveLimits, Ot as SkillsLockfile, Pt as UnsignedPolicy, S as UiBridge, St as SkillManifest, b as RenderResultRequest, c as InteractionResponse, jt as TrustedKeyStore, l as LlmClient, m as LlmStreamEvent, o as InteractionPolicy, p as LlmResponse, q as FileWriteStream, s as InteractionRequest, u as LlmCompleteInput, v as MemoryStore, vt as SkillInstallSource } from "./types-CpDRZ0rA-BM5FI9oN.js";
2
+ import { $ as ImageOmission, B as ExternalToolSource, C as BridgeResponse, N as DocumentSurfaceHost, Pn as ToolResult, S as BridgeRequest, Sr as bridgeError, Yr as parseBridgeRequest, b as BridgeCapabilities, ct as LinkedDocumentReader, en as ScriptExecutionContext, jn as ToolDefinition, m as ApprovalScope, mr as WebSkillApi, sr as ViewerImageFact, tn as ScriptExecutor, ut as NetworkPolicy, z as ExternalSkillProvider } from "./index-YPd8ZSEa.js";
3
+ import { In as PerceptionScopeInput, K as DocxDocumentContent, Ln as PptxDocumentContent, Lr as XlsxDocumentContent, Pn as PerceptionResult, Rn as PptxDocumentReader, Rr as XlsxDocumentReader, Tn as PdfDocumentReader, Ut as NestedFrameRef, cn as PageActionRequest, dn as PageActionTarget, in as PageActionOutcome, jn as PerceptionCaptureOptions, kn as PerceivedNode, mn as PageAuditSink, nn as PageActionExecutor, q as DocxDocumentReader, sr as SubtreeRejection, u as ConsentUi, un as PageActionScopeInput, xn as PagePerceptionReader, yn as PagePerceptionPolicy } from "./index-CjwdZQOS.js";
4
4
  //#region ../browser/dist/index.d.ts
5
5
  //#region src/fs/featureDetection.d.ts
6
6
  /** 检测当前环境是否可用 OPFS(navigator.storage.getDirectory) */
@@ -506,6 +506,160 @@ interface CompressResult {
506
506
  */
507
507
  declare function compressImageToBudget(file: Blob, maxBytes: number): Promise<CompressResult>;
508
508
  //#endregion
509
+ //#region src/dom/imageCapture.d.ts
510
+ /**
511
+ * 取像级别(0.6.0 FR-12.1)。裁决 D-3 已取消 L3 栅格化,只剩两级。
512
+ * @experimental
513
+ */
514
+ type CaptureLevel = 'src' | 'canvas';
515
+ /** @experimental */
516
+ interface CapturedImage {
517
+ id: string;
518
+ mimeType: string;
519
+ /** base64,不含 `data:` 前缀 */
520
+ data: string;
521
+ level: CaptureLevel;
522
+ originalBytes: number;
523
+ /** 压缩后字节数;未压缩时与 `originalBytes` 相同 */
524
+ bytes: number;
525
+ }
526
+ /** @experimental */
527
+ interface CaptureFailure {
528
+ id: string;
529
+ /** 必须说明是哪一级、为什么;只写 "image unavailable" 不足以让用户判断该怎么办 */
530
+ reason: string;
531
+ triedLevels: readonly CaptureLevel[];
532
+ }
533
+ /** @experimental */
534
+ declare function isCaptureFailure<T extends object>(result: T | CaptureFailure): result is CaptureFailure;
535
+ /** 只有这三种标签能取像;其余元素连取像入口都不进(FR-12.1,由 T-02-15 守门) @experimental */
536
+ declare function isCapturableElement(element: Element): boolean;
537
+ /**
538
+ * 投放与导出通道的目标集:`docx` 与 `pptxgenjs` 都不吃 WebP,
539
+ * 而 WebP 在现代网页上遍地都是。归一化放在写进 `src` 之前,
540
+ * 下游三处永远只见得到 PNG 与 JPEG(设计 12 §4.2)。
541
+ *
542
+ * 导出编码器判断「这张图嵌不嵌得进去」必须读同一份清单(0.22.0 FR-14.3):
543
+ * 各写一遍就会出现「投放时归一成了 A,导出却认为 A 不受支持」。
544
+ * @experimental
545
+ */
546
+ declare const DOCUMENT_IMAGE_MIME_TYPES: ReadonlySet<string>;
547
+ /**
548
+ * 一张已归一化、可直接写进投放文档的图片(0.22.0 FR-11.6)。
549
+ * @experimental
550
+ */
551
+ interface DocumentImage {
552
+ /** base64,不含 `data:` 前缀 */
553
+ data: string;
554
+ /** 一定是 `image/png` 或 `image/jpeg`——两个导出编码器的交集 */
555
+ mimeType: string;
556
+ width: number;
557
+ height: number;
558
+ bytes: number;
559
+ }
560
+ /**
561
+ * 把任意来源的图片字节归一成投放文档能显示、两个导出编码器都收得下的形态(0.22.0 FR-11.6)。
562
+ *
563
+ * 上传图、页面图、外链图在这里走的是**同一个函数**——AC-G1 要的不是三条分支行为一致,
564
+ * 而是根本只有一条分支,所以这个签名里没有「来源」这个参数。
565
+ *
566
+ * 宽高一律实测:像素数是投放载荷预算的硬兜底维度(FR-10.7),采信声明等于让被限制方自报限额。
567
+ * 失败抛错并带可执行的原因,由调用方转成丢图归因(FR-11.8)。
568
+ * @experimental
569
+ */
570
+ declare function toDocumentImage(bytes: Uint8Array, options: {
571
+ maxBytes: number;
572
+ declaredMimeType?: string;
573
+ }): Promise<DocumentImage>;
574
+ /**
575
+ * 取一个元素的图像(0.6.0 FR-12.1)。
576
+ *
577
+ * 按元素类型分派,不做无意义的尝试:`<img>` 只走 L1,`<canvas>` / `<svg>` 只走 L2,
578
+ * 两者互不兜底。失败返回 `CaptureFailure` 而不是抛错——一张图抓不到不该让整次感知失败。
579
+ * @experimental
580
+ */ declare function captureElementImage(element: Element, options: {
581
+ id: string;
582
+ maxBytes: number;
583
+ }): Promise<CapturedImage | CaptureFailure>;
584
+ /**
585
+ * 取一张宿主页面上的图,并归一成投放 / 导出通道吃得下的形态(0.22.0 FR-12.1)。
586
+ *
587
+ * 取像本身**原样复用** `captureElementImage`:两级策略与「互不兜底」的裁决 D-3 一字未改。
588
+ * 这里只把归一化的目标集换成 `png` / `jpeg`——产物一旦落盘就该是下游直接能用的格式,
589
+ * 否则「投放看得见、导出才消失」会以另一种形态回来。
590
+ * @experimental
591
+ */
592
+ declare function captureDocumentImage(element: Element, options: {
593
+ id: string;
594
+ maxBytes: number;
595
+ }): Promise<DocumentImage | CaptureFailure>;
596
+ //#endregion
597
+ //#region src/net/fetchImage.d.ts
598
+ /**
599
+ * 抓取失败的分类(0.22.0 分册 13 FR-13.4)。
600
+ *
601
+ * 分类存在的理由只有一个:`failed to fetch` 让模型无从判断该换一个 URL、该重试、
602
+ * 还是该放弃。每一档对应一个**不同的下一步**。
603
+ * @experimental
604
+ */
605
+ type RemoteFetchFailure = 'blocked' | 'unreachable' | 'refused' | 'not-an-image' | 'too-large' | 'timeout';
606
+ /** 单次抓取超时(设计 14 §5.1)。一个不响应的 URL 不得把整个 run 拖死 @experimental */
607
+ declare const REMOTE_IMAGE_TIMEOUT_MS = 15000;
608
+ /** 单张外链图的原始字节上界(设计 14 §5.1)。超限先压,压不下去才丢 @experimental */
609
+ declare const MAX_REMOTE_IMAGE_BYTES: number;
610
+ /** @experimental */
611
+ interface RemoteImageFailure {
612
+ kind: RemoteFetchFailure;
613
+ /** 英文、可执行:说清是哪一类失败、以及下一步能做什么 */
614
+ reason: string;
615
+ }
616
+ /** @experimental */
617
+ interface FetchRemoteImageOptions {
618
+ /** 归一化后的字节上界,与页面图共用同一个预算 */
619
+ maxBytes: number;
620
+ /** 原始响应体的上界;缺省 `MAX_REMOTE_IMAGE_BYTES` */
621
+ maxSourceBytes?: number;
622
+ timeoutMs?: number;
623
+ /** 仅供测试注入;缺省用全局 `fetch` */
624
+ fetch?: typeof globalThis.fetch;
625
+ }
626
+ /**
627
+ * 把一次抓取失败归档(AC-13.4)。
628
+ *
629
+ * 纯函数:实测表明扩展上 `http` 全通(设计 14 §1),「被浏览器阻断」在 e2e 里
630
+ * 根本构造不出来,所以这一档的正确性只能由单测按真实错误形态喂进来验。
631
+ * @experimental
632
+ */
633
+ declare function classifyFetchFailure(error: unknown, response?: Response): RemoteFetchFailure;
634
+ /**
635
+ * 抓一张外链图并归一成可直接写进文档的形态(分册 13 FR-13.1 ~ FR-13.5)。
636
+ *
637
+ * **授权不在这里**:调用方必须在调用之前拿到用户同意(AC-13.5 要求断言网络层零请求,
638
+ * 所以判定必须发生在 `fetch` 之前,不能靠拿到响应再丢弃)。
639
+ *
640
+ * SSRF 由 `assertRemoteUrlAllowed` 原样兜住,不另写一份(FR-13.5)。已知口子:
641
+ * 它校验的是**初始 URL**,跟随重定向落到私有网段它管不着(见 docs/deferred-items.md)。
642
+ * @experimental
643
+ */
644
+ declare function fetchRemoteImage(url: string, options: FetchRemoteImageOptions): Promise<DocumentImage | RemoteImageFailure>;
645
+ /** @experimental */
646
+ declare function isRemoteImageFailure(result: DocumentImage | RemoteImageFailure): result is RemoteImageFailure;
647
+ /**
648
+ * 宿主侧的外链抓取出口(与 `PageImageHost` 对称)。
649
+ *
650
+ * 注入与否就是「这个宿主抓不抓得到跨域字节」这个事实本身:
651
+ * 扩展的侧栏页能抓(实测,设计 14 §1),普通网页受同源策略抓不到,
652
+ * 于是在后者上工具压根不注册,而不是注册了每次都失败。
653
+ * @experimental
654
+ */
655
+ interface RemoteImageHost {
656
+ fetch(url: string, maxBytes: number): Promise<DocumentImage | RemoteImageFailure>;
657
+ }
658
+ /** @experimental */
659
+ declare function createRemoteImageHost(options?: {
660
+ fetch?: typeof globalThis.fetch;
661
+ }): RemoteImageHost;
662
+ //#endregion
509
663
  //#region src/dom/promotion.d.ts
510
664
  /**
511
665
  * 非标可交互元素的识别与角色提升(0.14.0 分册 15)。
@@ -525,9 +679,10 @@ interface RoleHint {
525
679
  /**
526
680
  * 句柄的用途(分册 14 §6.1)。`anchor` 只能做 `perceive_page` 的子树根,
527
681
  * 拿去 `act_on_page` 一律被拒——否则放宽读的范围会顺带放宽写的范围。
682
+ * `image`(0.22.0 FR-12.1)同理:它只能交给 `capture_page_image`。
528
683
  * @experimental
529
684
  */
530
- type HandleKind = 'action' | 'anchor';
685
+ type HandleKind = 'action' | 'anchor' | 'image';
531
686
  interface DomPerceptionReaderOptions {
532
687
  /** 选择器求值的根;缺省 `globalThis.document` */
533
688
  document?: Document;
@@ -653,6 +808,17 @@ type PageAgentRequest = {
653
808
  } | {
654
809
  type: 'execute';
655
810
  request: PageActionRequest;
811
+ } |
812
+ /**
813
+ * 取一张页面上的图(0.22.0 分册 12)。与 `execute` 同样按 ref 投回原帧。
814
+ *
815
+ * 与 `perceive` 的 `capture` 是**两条流**:那条取了图是为了让模型看懂(会走视觉委派),
816
+ * 这条取了图是为了落产物、进文档。两者不得互相触发(需求总览 §4 第 2 条)。
817
+ */
818
+ {
819
+ type: 'capture-image';
820
+ ref: string;
821
+ maxBytes: number;
656
822
  };
657
823
  /**
658
824
  * 应答。失败走 `error` 变体而**不是**让 `send()` reject:
@@ -672,6 +838,15 @@ type PageAgentReply = {
672
838
  } | {
673
839
  type: 'execute-result';
674
840
  outcome: PageActionOutcome;
841
+ } |
842
+ /**
843
+ * 取像结果。失败走 `result` 里的 `CaptureFailure` 而不是 `error` 变体:
844
+ * 「这张图取不到」是页面的事实,不是协议故障,而且 `triedLevels` 得原样带回去(FR-12.4)。
845
+ * 图片字节走 base64 字符串,**不是** `number[]`(AC-11.10)。
846
+ */
847
+ {
848
+ type: 'capture-image-result';
849
+ result: DocumentImage | CaptureFailure;
675
850
  } | {
676
851
  type: 'error';
677
852
  code: string;
@@ -859,6 +1034,33 @@ interface RemotePageActionExecutorOptions {
859
1034
  */
860
1035
  declare function createRemotePageActionExecutor(options: RemotePageActionExecutorOptions): PageActionExecutor;
861
1036
  //#endregion
1037
+ //#region src/remote/pageImage.d.ts
1038
+ /**
1039
+ * 宿主页面取像端口(0.22.0 分册 12 FR-12.1)。
1040
+ *
1041
+ * 只有一个方法,且**不含授权**:授权卡、会话记忆、产物落盘都在引擎那一侧。
1042
+ * 宿主交出来的就是「把这个句柄指的那张图变成字节」这一件事。
1043
+ * @experimental
1044
+ */
1045
+ interface PageImageHost {
1046
+ capture(ref: string, maxBytes: number): Promise<DocumentImage | CaptureFailure>;
1047
+ }
1048
+ /** @experimental */
1049
+ interface RemotePageImageHostOptions {
1050
+ transport: PageAgentTransport;
1051
+ /** 单次取像超时毫秒;缺省 10000 */
1052
+ timeoutMs?: number;
1053
+ }
1054
+ /**
1055
+ * 跨上下文的取像端口(分册 12 §2)。
1056
+ *
1057
+ * 与 `createRemotePageActionExecutor` 同一条装配规矩:句柄表在页面那一侧,
1058
+ * 这边只负责把一次请求送过去。**不与感知期的取像共用任何状态**——
1059
+ * 那条流是为了让模型看懂,这条流是为了落产物,两者不得互相触发。
1060
+ * @experimental
1061
+ */
1062
+ declare function createRemotePageImageHost(options: RemotePageImageHostOptions): PageImageHost;
1063
+ //#endregion
862
1064
  //#region src/remote/handler.d.ts
863
1065
  /** @experimental */
864
1066
  interface PageAgentHandlerOptions {
@@ -978,6 +1180,10 @@ interface FrameRouter {
978
1180
  execute(request: PageAgentRequest & {
979
1181
  type: 'execute';
980
1182
  }): Promise<PageAgentReply>;
1183
+ /** 取像(0.22.0 分册 12):与 `execute` 同一条寻址规矩,句柄发自哪一帧就投回哪一帧 */
1184
+ captureImage(request: PageAgentRequest & {
1185
+ type: 'capture-image';
1186
+ }): Promise<PageAgentReply>;
981
1187
  }
982
1188
  /**
983
1189
  * 逐帧下钻并汇总(分册 16 FR-16.2 / FR-16.3 / FR-16.4,分册 11 FR-11.2)。
@@ -989,45 +1195,6 @@ interface FrameRouter {
989
1195
  */
990
1196
  declare function createFrameRouter<A>(options: FrameRouterOptions<A>): FrameRouter;
991
1197
  //#endregion
992
- //#region src/dom/imageCapture.d.ts
993
- /**
994
- * 取像级别(0.6.0 FR-12.1)。裁决 D-3 已取消 L3 栅格化,只剩两级。
995
- * @experimental
996
- */
997
- type CaptureLevel = 'src' | 'canvas';
998
- /** @experimental */
999
- interface CapturedImage {
1000
- id: string;
1001
- mimeType: string;
1002
- /** base64,不含 `data:` 前缀 */
1003
- data: string;
1004
- level: CaptureLevel;
1005
- originalBytes: number;
1006
- /** 压缩后字节数;未压缩时与 `originalBytes` 相同 */
1007
- bytes: number;
1008
- }
1009
- /** @experimental */
1010
- interface CaptureFailure {
1011
- id: string;
1012
- /** 必须说明是哪一级、为什么;只写 "image unavailable" 不足以让用户判断该怎么办 */
1013
- reason: string;
1014
- triedLevels: readonly CaptureLevel[];
1015
- }
1016
- /** @experimental */
1017
- declare function isCaptureFailure(result: CapturedImage | CaptureFailure): result is CaptureFailure;
1018
- /** 只有这三种标签能取像;其余元素连取像入口都不进(FR-12.1,由 T-02-15 守门) @experimental */
1019
- declare function isCapturableElement(element: Element): boolean;
1020
- /**
1021
- * 取一个元素的图像(0.6.0 FR-12.1)。
1022
- *
1023
- * 按元素类型分派,不做无意义的尝试:`<img>` 只走 L1,`<canvas>` / `<svg>` 只走 L2,
1024
- * 两者互不兜底。失败返回 `CaptureFailure` 而不是抛错——一张图抓不到不该让整次感知失败。
1025
- * @experimental
1026
- */ declare function captureElementImage(element: Element, options: {
1027
- id: string;
1028
- maxBytes: number;
1029
- }): Promise<CapturedImage | CaptureFailure>;
1030
- //#endregion
1031
1198
  //#region src/host/protocol.d.ts
1032
1199
  /** 主线程 → Worker 的 LLM 配置;mockResponses 供 E2E/测试注入确定性 Mock */
1033
1200
  interface LlmClientConfig {
@@ -1471,7 +1638,177 @@ declare function createXlsxBlockReader(): XlsxDocumentReader;
1471
1638
  */
1472
1639
  declare function readXlsxBlocks(bytes: Uint8Array): Promise<XlsxDocumentContent>;
1473
1640
  //#endregion
1641
+ //#region src/document/pptxBlocks.d.ts
1642
+ /** @experimental */
1643
+ declare function createPptxBlockReader(): PptxDocumentReader;
1644
+ /**
1645
+ * @throws WebSkillError 归档损坏、缺 `ppt/presentation.xml`、XML 解析失败
1646
+ * @experimental
1647
+ */
1648
+ declare function readPptxBlocks(bytes: Uint8Array): Promise<PptxDocumentContent>;
1649
+ //#endregion
1650
+ //#region src/document/pptx.d.ts
1651
+ /**
1652
+ * pptx 正文抽取(0.22.0 分册 18)。
1653
+ *
1654
+ * 与 `readPptxBlocks` 同源:文本形态只是把逐页的文本块按放映顺序拼起来,
1655
+ * 两条路给出的文字因此**永远一致**——同一份文稿不会因为走哪条路而多出或少掉一段。
1656
+ *
1657
+ * ⚠️ 与 docx/xlsx 一样依赖 `DOMParser`,所以只在 `@webskill/browser`。
1658
+ */
1659
+ /**
1660
+ * **不抽取**的内容,逐条写明而不是笼统说「尽力而为」:
1661
+ * 版式、动画、切换效果、母版与版式上的模板文字、图表的底层数据。
1662
+ *
1663
+ * 插图不在此列但也不在文本里:图要按页取,走 `read_document`。
1664
+ */
1665
+ declare const PPTX_UNEXTRACTED: readonly ["layout and positioning", "animations and transitions", "master and layout placeholders", "chart source data", "pictures"];
1666
+ /** 抽不出任何文字时的占位,与 docx/xlsx 同款口径 @experimental */
1667
+ declare const PPTX_UNEXTRACTED_NOTICE: string;
1668
+ /**
1669
+ * @throws WebSkillError 归档损坏、缺 `ppt/presentation.xml`、XML 解析失败
1670
+ * @experimental
1671
+ */
1672
+ declare function extractPptxText(bytes: Uint8Array): Promise<string>;
1673
+ //#endregion
1674
+ //#region src/document/xlsxTemplate.d.ts
1675
+ interface XlsxTemplateSheet {
1676
+ readonly name: string;
1677
+ /** dimension,如 `A1:H19` */
1678
+ readonly range: string;
1679
+ /** `formula` 在时这格由模板算出,不得填(FR-42.28);共享公式已按本格行号展开 */
1680
+ readonly cells: ReadonlyArray<{
1681
+ readonly address: string;
1682
+ readonly text: string;
1683
+ readonly formula?: string;
1684
+ }>;
1685
+ readonly merges: readonly string[];
1686
+ readonly columnWidths: readonly number[];
1687
+ }
1688
+ interface XlsxTemplateSkeleton {
1689
+ readonly sheets: readonly XlsxTemplateSheet[];
1690
+ }
1691
+ interface XlsxCellFill {
1692
+ readonly sheet?: string;
1693
+ readonly address: string;
1694
+ readonly value: string;
1695
+ }
1696
+ interface XlsxRowInsert {
1697
+ readonly sheet?: string;
1698
+ /** 1 基:新行从这一行开始插 */
1699
+ readonly at: number;
1700
+ readonly count: number;
1701
+ /** 1 基:照抄哪一行的样式与行高。默认用 `at - 1` */
1702
+ readonly copyStyleFrom?: number;
1703
+ }
1704
+ interface XlsxImagePlacement {
1705
+ readonly sheet?: string;
1706
+ /** 落点单元格;若它是某个合并区的左上角,图按整个合并区缩放 */
1707
+ readonly address: string;
1708
+ readonly bytes: Uint8Array;
1709
+ /** `png` / `jpeg` */
1710
+ readonly extension: string;
1711
+ readonly contentType: string;
1712
+ }
1713
+ interface XlsxTemplateSpec {
1714
+ readonly rows?: readonly XlsxRowInsert[];
1715
+ readonly cells?: readonly XlsxCellFill[];
1716
+ readonly images?: readonly XlsxImagePlacement[];
1717
+ }
1718
+ /** 读带坐标的骨架(FR-42.1)。模型据此决定往哪儿写。 */
1719
+ declare function readXlsxTemplate(bytes: Uint8Array): Promise<XlsxTemplateSkeleton>;
1720
+ /**
1721
+ * 照模板出新文件。
1722
+ *
1723
+ * 顺序是**先插行、后填值**:填值用的地址是插行之后的坐标,反过来会逼模型心算偏移。
1724
+ *
1725
+ * @throws WebSkillError 模板不是 xlsx、地址不合法、目标不存在、插行越界
1726
+ */
1727
+ declare function fillXlsxTemplate(bytes: Uint8Array, spec: XlsxTemplateSpec): Promise<Uint8Array>;
1728
+ //#endregion
1729
+ //#region src/document/docxTemplate.d.ts
1730
+ interface DocxTemplateParagraph {
1731
+ /** 0 基,正文段落序号(表格内的段落不计入) */
1732
+ readonly index: number;
1733
+ readonly text: string;
1734
+ }
1735
+ interface DocxTemplateCell {
1736
+ readonly table: number;
1737
+ readonly row: number;
1738
+ readonly column: number;
1739
+ readonly text: string;
1740
+ readonly gridSpan?: number;
1741
+ readonly vMerge?: string;
1742
+ }
1743
+ interface DocxTemplateSkeleton {
1744
+ readonly paragraphs: readonly DocxTemplateParagraph[];
1745
+ readonly cells: readonly DocxTemplateCell[];
1746
+ }
1747
+ interface DocxTextFill {
1748
+ readonly paragraph?: number;
1749
+ readonly table?: number;
1750
+ readonly row?: number;
1751
+ readonly column?: number;
1752
+ readonly value: string;
1753
+ }
1754
+ interface DocxImagePlacement {
1755
+ readonly paragraph?: number;
1756
+ readonly table?: number;
1757
+ readonly row?: number;
1758
+ readonly column?: number;
1759
+ readonly bytes: Uint8Array;
1760
+ readonly extension: string;
1761
+ readonly contentType: string;
1762
+ }
1763
+ interface DocxTemplateSpec {
1764
+ readonly texts?: readonly DocxTextFill[];
1765
+ readonly images?: readonly DocxImagePlacement[];
1766
+ }
1767
+ /** 读带坐标的骨架(FR-42.1) */
1768
+ declare function readDocxTemplate(bytes: Uint8Array): Promise<DocxTemplateSkeleton>;
1769
+ /**
1770
+ * 照模板出新文件。
1771
+ *
1772
+ * @throws WebSkillError 模板不是 docx、坐标指到不存在的表 / 行 / 列 / 段落、图片认不出来
1773
+ */
1774
+ declare function fillDocxTemplate(bytes: Uint8Array, spec: DocxTemplateSpec): Promise<Uint8Array>;
1775
+ //#endregion
1776
+ //#region src/document/ooxmlPart.d.ts
1777
+ /** 解开后的包:部件名 → 字节。顺序即写回顺序。 */
1778
+ type OoxmlPackage = Map<string, Uint8Array>;
1779
+ /** @throws WebSkillError 归档损坏,或不是 OOXML(缺 `[Content_Types].xml`) */
1780
+ declare function readOoxmlPackage(bytes: Uint8Array): Promise<OoxmlPackage>;
1781
+ declare function writeOoxmlPackage(pkg: OoxmlPackage): Uint8Array;
1782
+ /**
1783
+ * 结构自检(AC-42.27)。
1784
+ *
1785
+ * 「打开不提示修复」没法进 CI(本仓没有可脚本化的 Office 实现,见设计 10 §6.2),
1786
+ * 但迄今实测出的坏文件成因都是结构性的:悬空关系、没登记的扩展名、解析不了的部件。
1787
+ * 这三条能当场查出来,所以每次重封之前都查一遍。
1788
+ *
1789
+ * @returns 英文问题描述,空数组表示干净
1790
+ */
1791
+ declare function auditOoxmlPackage(pkg: OoxmlPackage): string[];
1792
+ //#endregion
1474
1793
  //#region src/viewer/viewerCsp.d.ts
1794
+ /**
1795
+ * 投放面图片来源的单一事实源(0.22.0 分册 13 FR-13.9)。
1796
+ *
1797
+ * **不含宿主自身**:两套宿主写法不同——站点写自己的 origin(opaque origin 下 `'self'` 匹配不上),
1798
+ * 扩展的 sandbox 页写 `'self'`。能收敛的是**除宿主之外**放行了哪些来源,
1799
+ * 而那恰恰是会漂走的部分(扩展的 sandbox CSP 此前整条 `img-src` 都不存在,等于全放)。
1800
+ * @experimental
1801
+ */
1802
+ declare const VIEWER_IMG_SRC_BASE: readonly string[];
1803
+ /**
1804
+ * 降级形态(外链图,FR-13.6)额外需要的来源。
1805
+ *
1806
+ * ⚠️ 加它进来的代价见 `ViewerCspOptions.imgSrc`:投放面因此多了一条外发信道。
1807
+ * `http:` 也在其中,因为需求裁决了「`http` 尽力而为」(分册 13 §2.2)——
1808
+ * 抓得到就嵌字节,抓不到才落到这条外链上,此时拦掉它只会让图变成一个破图标。
1809
+ * @experimental
1810
+ */
1811
+ declare const VIEWER_IMG_SRC_REMOTE: readonly string[];
1475
1812
  /** 宿主可配置的白名单方向;技能声明不了这些(FR-18.3 第 3 条) */
1476
1813
  interface ViewerCspOptions {
1477
1814
  /**
@@ -1486,7 +1823,15 @@ interface ViewerCspOptions {
1486
1823
  hostOrigin: string;
1487
1824
  /** 文档可外发的目标;缺省 `'none'` —— 数据经 postMessage 下发,不需要外连 */
1488
1825
  connectSrc?: readonly string[];
1489
- /** 图片来源;缺省宿主自身 + `data:`(内联图不走网络) */
1826
+ /**
1827
+ * 图片来源;缺省宿主自身 + `data:`(内联图不走网络)。
1828
+ *
1829
+ * ⚠️ **放行外链图等于给投放面开了一条外发信道**:图片 URL 的路径与 query
1830
+ * 能携带文档内容,`connect-src` 至今守着的那条线(0.11.0 AC-18.5)会因此被绕开一半。
1831
+ * 因此它不是 SDK 的默认值,只能由宿主显式给出(0.22.0 FR-13.10 / FR-13.11)。
1832
+ * 需要它的场景只有一个:宁主拓不到字节时,图以外链形态进文档(FR-13.6)。
1833
+ * 放宽时用 `VIEWER_IMG_SRC_REMOTE`,不要自己拼一份。
1834
+ */
1490
1835
  imgSrc?: readonly string[];
1491
1836
  /** 字体来源;缺省只有宿主自身,外链公文字体需宿主显式放行(FR-20.5) */
1492
1837
  fontSrc?: readonly string[];
@@ -1553,7 +1898,32 @@ interface OpenDocumentInput {
1553
1898
  /** 数据来源描述,进告知与审计 */
1554
1899
  dataSource: string;
1555
1900
  document: ViewerDocument;
1556
- }
1901
+ /**
1902
+ * 已填进 `document.html` 的图片事实(0.22.0 FR-10.7)。
1903
+ *
1904
+ * 像素维度只能靠它:`document` 里图片是 base64 的压缩字节,
1905
+ * 从载荷本身看不出解码后会占多少位图内存。
1906
+ */
1907
+ images?: readonly ViewerImageFact[];
1908
+ /**
1909
+ * 解析阶段丢掉的图片(0.22.0 FR-11.8)。
1910
+ *
1911
+ * 进审计而**不**参与预算核算:它们一个字节也没进载荷。留痕的意义在于
1912
+ * 事后能回答「这份文档为什么缺了一张图」——那是本版要消灭的静默失败。
1913
+ */
1914
+ omissions?: readonly ImageOmission[];
1915
+ }
1916
+ /** 超软阈值时随确认一并交给宿主的事实;措辞由宿主写(FR-10.4) */
1917
+ interface PayloadSizeNotice {
1918
+ /** 载荷的 UTF-16 code unit 数 */
1919
+ units: number;
1920
+ /** 图片解码后的总像素数 */
1921
+ pixels: number;
1922
+ /** 是哪一维进了软区间 */
1923
+ trigger: PayloadDimension;
1924
+ }
1925
+ /** 载荷预算的两个维度(0.22.0 FR-10.7) */
1926
+ type PayloadDimension = 'bytes' | 'pixels' | 'both';
1557
1927
  interface DocumentSurfaceOptions {
1558
1928
  /** 宿主的 viewer 路由地址(必须能下发 CSP 响应头,见 viewerCsp.ts) */
1559
1929
  viewerUrl: string;
@@ -1561,10 +1931,23 @@ interface DocumentSurfaceOptions {
1561
1931
  confirm(input: {
1562
1932
  skillName: string;
1563
1933
  dataSource: string;
1934
+ sizeNotice?: PayloadSizeNotice;
1564
1935
  }): Promise<boolean>;
1565
1936
  audit?: DocumentSurfaceAudit;
1566
- /** 投递载荷上限;超限拒绝而不是静默截断(AC-18.11) */
1937
+ /**
1938
+ * 载荷硬兜底;超限拒绝而不是静默截断(AC-18.11)。
1939
+ *
1940
+ * 名字里的 `Bytes` 是历史口径:实际比较的是 UTF-16 code unit 数(`PayloadCost.units`)。
1941
+ * 逼近阈值的载荷必然是图片主导的,而 base64 是纯 ASCII,两者 1:1;
1942
+ * CJK 文本会被低估约 3 倍,但要达到硬兜底得有上亿个汉字。
1943
+ */
1567
1944
  maxPayloadBytes?: number;
1945
+ /** 载荷软阈值;超过它照常打开,只是给 `confirm` 带一条 `sizeNotice`(FR-10.4/10.5) */
1946
+ softPayloadBytes?: number;
1947
+ /** 图片总像素硬兜底(FR-10.7) */
1948
+ maxPayloadPixels?: number;
1949
+ /** 图片总像素软阈值(FR-10.7) */
1950
+ softPayloadPixels?: number;
1568
1951
  /** 握手超时;viewer 起不来时不能无限等 */
1569
1952
  handshakeTimeoutMs?: number;
1570
1953
  /** 仅供测试注入;缺省用 `window.open` */
@@ -1576,7 +1959,20 @@ interface WindowLike {
1576
1959
  close(): void;
1577
1960
  postMessage(message: unknown, targetOrigin: string): void;
1578
1961
  }
1579
- declare const DEFAULT_MAX_VIEWER_PAYLOAD_BYTES = 2000000;
1962
+ /**
1963
+ * 载荷硬兜底(0.22.0 FR-10.1)。
1964
+ *
1965
+ * 从 0.11.0 的 2 MB 提到这里,是因为那个值从未被论证过,而实测表明它离任何真实边界都很远:
1966
+ * 128 MB 的结构化克隆只要 23 ms,V8 的字符串上限在 512 MB 左右才会抛 `RangeError`。
1967
+ * 留 4 倍余量是给同一个标签页里的 React、图表库与对话历史用的。
1968
+ */
1969
+ declare const DEFAULT_MAX_VIEWER_PAYLOAD_BYTES = 128000000;
1970
+ /** 载荷软阈值:到这里不是「慢」,而是「这份文档异常大」,值得先告诉用户一声 */
1971
+ declare const DEFAULT_SOFT_VIEWER_PAYLOAD_BYTES = 32000000;
1972
+ /** 像素硬兜底,约合 1 GB 位图;实测 60 张 4000×3000 达 2.7 GB,那是崩标签页的量级 */
1973
+ declare const DEFAULT_MAX_VIEWER_PAYLOAD_PIXELS = 256000000;
1974
+ /** 像素软阈值,约合 256 MB 位图;实测 60 M 像素仍然流畅 */
1975
+ declare const DEFAULT_SOFT_VIEWER_PAYLOAD_PIXELS = 64000000;
1580
1976
  /** 审计事件类型(与既有事件同一条链) */
1581
1977
  declare const DOCUMENT_SURFACE_AUDIT_EVENT = "document.surface.open";
1582
1978
  /**
@@ -2307,4 +2703,4 @@ interface WebOfficeToolSourceOptions {
2307
2703
  */
2308
2704
  declare function createWebOfficeToolSource(options: WebOfficeToolSourceOptions): ExternalToolSource;
2309
2705
  //#endregion
2310
- export { type BlockedEventLike, type BridgeCapabilities, type BridgeRequest, type BridgeResponse, type BrowserHostBundle, type BrowserHostOptions, type BrowserHostOverrides, BrowserSkillManager, BrowserWorkerScriptExecutor, type BuiltinSkillManifest, type CameraAvailability, type CameraOptions, type CameraSession, type CaptureFailure, type CaptureLevel, type CapturePhotoOptions, type CapturedImage, type ChromeBuiltinAvailability, ChromeBuiltinLlmClient, type CompressResult, type ConfiguredLlmClient, DEFAULT_CAMERA_MAX_DIMENSION, DEFAULT_FRAME_BUDGET, DEFAULT_MAX_VIEWER_PAYLOAD_BYTES, DOCUMENT_SURFACE_AUDIT_EVENT, DOCX_IMAGE_WIDTH_RATIO, DOCX_UNEXTRACTED, type DictationAvailability, type DictationOptions, type DictationSession, type DocumentBlock, type DocumentLocationView, type DocumentSurfaceAudit, type DocumentSurfaceOptions, type DomPageActionExecutor, type DomPageActionOptions, type DomPerceptionReader, type DomPerceptionReaderOptions, type FetchLinkedDocumentOptions, type FrameBudget, type FrameDelivery, type FrameDispatcher, type FrameResolveContext, type FrameRouter, type FrameRouterOptions, HOST_PORT_MATRIX, type HandleKind, type HostChatbotAdapterShape, type HostConnectFacadeShape, type HostConsoleBackendShape, type HostKind, type HostSurface, type IframeSandboxOptions, IframeWorkerLike, type InspectHostWiringInput, LIST_WEBOFFICE_DOCUMENTS_TOOL, type LlmClientConfig, type LlmEntryConfig, type MainToWorkerMessage, type OpenDocumentInput, OpfsProvider, type PageAgentHandler, type PageAgentHandlerOptions, type PageAgentReply, type PageAgentRequest, type PageAgentTargetEntry, type PageAgentTransport, type PageDocumentIdentity, type PdfPage, type PortApplicability, type PortReport, type PortSpec, type PortStatus, type PresentationSlide, type PresentationSourceDocument, type PresentationSourceReader, type PresentationSourceSlide, READ_WEBOFFICE_DOCUMENT_TOOL, type RemotePageActionExecutorOptions, type RemotePerceptionReaderOptions, type RemoteTargetRegistry, type RemoteTargetRegistryOptions, type RoleHint, SANDBOX_PAGE_SCRIPT_SOURCE, SHARD_SOFT_LIMIT, type SandboxMode, type SandboxTokenDiff, type SeedSkillsFromHttpOptions, type SerializedError, type TargetResolution, TsTranspiler, type TypeScriptSupportOptions, VIEWER_SANDBOX_TOKENS, type ViewerBlockedHost, type ViewerBlockedNotice, type ViewerBlockedResult, type ViewerCspOptions, type ViewerDocument, type ViewerShellHost, type ViewerShellMount, type ViewerShellResult, type VisionCaptureOptions, WEBOFFICE_BUDGET, WEBOFFICE_UNEXTRACTED, WEB_OFFICE_OFFICE_TYPES, WEB_OFFICE_READ_METHODS, WEB_OFFICE_SUPPORTED_TYPES, WORKER_BOOTSTRAP_SOURCE, type WebOfficeAction, type WebOfficeApiSurface, type WebOfficeAuditRecord, type WebOfficeAuthorizationInput, type WebOfficeAuthorizationKey, type WebOfficeAuthorizationOutcome, type WebOfficeBudget, WebOfficeBudgetGuard, type WebOfficeChannel, type WebOfficeConsent, type WebOfficeContent, type WebOfficeDisplayHints, type WebOfficeExtractOptions, type WebOfficeFailure, type WebOfficeFingerprintResult, type WebOfficeHost, type WebOfficeInstanceRecord, type WebOfficeListing, WebOfficePolicy, type WebOfficePolicyOptions, type WebOfficeReadCursor, type WebOfficeReadOptions, type WebOfficeReadPort, type WebOfficeReadResult, type WebOfficeScrollPosition, type WebOfficeSupportedType, type WebOfficeToolSourceOptions, type WebOfficeVisionPort, type WindowLike, type WorkbookSheet, type WorkerEvent, type WorkerFactory, type WorkerLike, type WorkerRequest, WorkerRuntimeClient, type WorkerRuntimeClientDeps, type WorkerRuntimeHostOverrides, type WorkerScopeLike, WorkerUiBridge, XLSX_IMAGE_MIN_COLUMNS, XLSX_IMAGE_MIN_ROWS, XLSX_UNEXTRACTED, assertWebOfficeFingerprint, blockedMessage, bridgeError, callWebOfficeMethod, captureByScrolling, captureElementImage, capturePhoto, checkCameraAvailability, checkDictationAvailability, checkWebOfficeFingerprint, compressImageToBudget, contentKindOf, createBrowserChatbotHost, createDocumentSurfaceHost, createDocxBlockReader, createDomPageActionExecutor, createDomPerceptionReader, createEncryptedMemoryStore, createFetchLinkedDocumentReader, createFrameRouter, createIframeWorker, createLlmClient, createPageAgentHandler, createRemotePageActionExecutor, createRemotePerceptionReader, createRemoteTargetRegistry, createWebOfficeHandle, createWebOfficeToolSource, createXlsxBlockReader, deleteMemoryEncryptionKey, describeScreenshotOverlap, diffSandboxTokens, documentKey, explainResolution, extractDocxText, extractWebOfficeContent, extractXlsxText, extractZipWeb, generateMemoryEncryptionKey, headingLevelOf, inspectHostWiring, installWebSkillNavigator, isCapturableElement, isCaptureFailure, isEncryptedMemoryValue, isOpfsAvailable, isWebOfficeReadMethod, missingPorts, openCamera, openDocumentSurface, openMemoryEncryptionKey, parseBridgeRequest, parseMainMessage, parseWorkerEvent, probeChromeBuiltinAvailability, readDocxBlocks, readXlsxBlocks, resolveWebOfficeAuthorization, seedSkillsFromHttp, sha256HexWeb, startDictation, startViewerShell, startWorkerRuntimeHost, viewerCspHeader, watchBlockedResources, webOfficeFailure };
2706
+ export { type BlockedEventLike, type BridgeCapabilities, type BridgeRequest, type BridgeResponse, type BrowserHostBundle, type BrowserHostOptions, type BrowserHostOverrides, BrowserSkillManager, BrowserWorkerScriptExecutor, type BuiltinSkillManifest, type CameraAvailability, type CameraOptions, type CameraSession, type CaptureFailure, type CaptureLevel, type CapturePhotoOptions, type CapturedImage, type ChromeBuiltinAvailability, ChromeBuiltinLlmClient, type CompressResult, type ConfiguredLlmClient, DEFAULT_CAMERA_MAX_DIMENSION, DEFAULT_FRAME_BUDGET, DEFAULT_MAX_VIEWER_PAYLOAD_BYTES, DEFAULT_MAX_VIEWER_PAYLOAD_PIXELS, DEFAULT_SOFT_VIEWER_PAYLOAD_BYTES, DEFAULT_SOFT_VIEWER_PAYLOAD_PIXELS, DOCUMENT_IMAGE_MIME_TYPES, DOCUMENT_SURFACE_AUDIT_EVENT, DOCX_IMAGE_WIDTH_RATIO, DOCX_UNEXTRACTED, type DictationAvailability, type DictationOptions, type DictationSession, type DocumentBlock, type DocumentImage, type DocumentLocationView, type DocumentSurfaceAudit, type DocumentSurfaceOptions, type DocxImagePlacement, type DocxTemplateCell, type DocxTemplateParagraph, type DocxTemplateSkeleton, type DocxTemplateSpec, type DocxTextFill, type DomPageActionExecutor, type DomPageActionOptions, type DomPerceptionReader, type DomPerceptionReaderOptions, type FetchLinkedDocumentOptions, type FetchRemoteImageOptions, type FrameBudget, type FrameDelivery, type FrameDispatcher, type FrameResolveContext, type FrameRouter, type FrameRouterOptions, HOST_PORT_MATRIX, type HandleKind, type HostChatbotAdapterShape, type HostConnectFacadeShape, type HostConsoleBackendShape, type HostKind, type HostSurface, type IframeSandboxOptions, IframeWorkerLike, type InspectHostWiringInput, LIST_WEBOFFICE_DOCUMENTS_TOOL, type LlmClientConfig, type LlmEntryConfig, MAX_REMOTE_IMAGE_BYTES, type MainToWorkerMessage, type OoxmlPackage, type OpenDocumentInput, OpfsProvider, PPTX_UNEXTRACTED, PPTX_UNEXTRACTED_NOTICE, type PageAgentHandler, type PageAgentHandlerOptions, type PageAgentReply, type PageAgentRequest, type PageAgentTargetEntry, type PageAgentTransport, type PageDocumentIdentity, type PageImageHost, type PayloadDimension, type PayloadSizeNotice, type PdfPage, type PortApplicability, type PortReport, type PortSpec, type PortStatus, type PresentationSlide, type PresentationSourceDocument, type PresentationSourceReader, type PresentationSourceSlide, READ_WEBOFFICE_DOCUMENT_TOOL, REMOTE_IMAGE_TIMEOUT_MS, type RemoteFetchFailure, type RemoteImageFailure, type RemoteImageHost, type RemotePageActionExecutorOptions, type RemotePageImageHostOptions, type RemotePerceptionReaderOptions, type RemoteTargetRegistry, type RemoteTargetRegistryOptions, type RoleHint, SANDBOX_PAGE_SCRIPT_SOURCE, SHARD_SOFT_LIMIT, type SandboxMode, type SandboxTokenDiff, type SeedSkillsFromHttpOptions, type SerializedError, type TargetResolution, TsTranspiler, type TypeScriptSupportOptions, VIEWER_IMG_SRC_BASE, VIEWER_IMG_SRC_REMOTE, VIEWER_SANDBOX_TOKENS, type ViewerBlockedHost, type ViewerBlockedNotice, type ViewerBlockedResult, type ViewerCspOptions, type ViewerDocument, type ViewerShellHost, type ViewerShellMount, type ViewerShellResult, type VisionCaptureOptions, WEBOFFICE_BUDGET, WEBOFFICE_UNEXTRACTED, WEB_OFFICE_OFFICE_TYPES, WEB_OFFICE_READ_METHODS, WEB_OFFICE_SUPPORTED_TYPES, WORKER_BOOTSTRAP_SOURCE, type WebOfficeAction, type WebOfficeApiSurface, type WebOfficeAuditRecord, type WebOfficeAuthorizationInput, type WebOfficeAuthorizationKey, type WebOfficeAuthorizationOutcome, type WebOfficeBudget, WebOfficeBudgetGuard, type WebOfficeChannel, type WebOfficeConsent, type WebOfficeContent, type WebOfficeDisplayHints, type WebOfficeExtractOptions, type WebOfficeFailure, type WebOfficeFingerprintResult, type WebOfficeHost, type WebOfficeInstanceRecord, type WebOfficeListing, WebOfficePolicy, type WebOfficePolicyOptions, type WebOfficeReadCursor, type WebOfficeReadOptions, type WebOfficeReadPort, type WebOfficeReadResult, type WebOfficeScrollPosition, type WebOfficeSupportedType, type WebOfficeToolSourceOptions, type WebOfficeVisionPort, type WindowLike, type WorkbookSheet, type WorkerEvent, type WorkerFactory, type WorkerLike, type WorkerRequest, WorkerRuntimeClient, type WorkerRuntimeClientDeps, type WorkerRuntimeHostOverrides, type WorkerScopeLike, WorkerUiBridge, XLSX_IMAGE_MIN_COLUMNS, XLSX_IMAGE_MIN_ROWS, XLSX_UNEXTRACTED, type XlsxCellFill, type XlsxImagePlacement, type XlsxRowInsert, type XlsxTemplateSheet, type XlsxTemplateSkeleton, type XlsxTemplateSpec, assertWebOfficeFingerprint, auditOoxmlPackage, blockedMessage, bridgeError, callWebOfficeMethod, captureByScrolling, captureDocumentImage, captureElementImage, capturePhoto, checkCameraAvailability, checkDictationAvailability, checkWebOfficeFingerprint, classifyFetchFailure, compressImageToBudget, contentKindOf, createBrowserChatbotHost, createDocumentSurfaceHost, createDocxBlockReader, createDomPageActionExecutor, createDomPerceptionReader, createEncryptedMemoryStore, createFetchLinkedDocumentReader, createFrameRouter, createIframeWorker, createLlmClient, createPageAgentHandler, createPptxBlockReader, createRemoteImageHost, createRemotePageActionExecutor, createRemotePageImageHost, createRemotePerceptionReader, createRemoteTargetRegistry, createWebOfficeHandle, createWebOfficeToolSource, createXlsxBlockReader, deleteMemoryEncryptionKey, describeScreenshotOverlap, diffSandboxTokens, documentKey, explainResolution, extractDocxText, extractPptxText, extractWebOfficeContent, extractXlsxText, extractZipWeb, fetchRemoteImage, fillDocxTemplate, fillXlsxTemplate, generateMemoryEncryptionKey, headingLevelOf, inspectHostWiring, installWebSkillNavigator, isCapturableElement, isCaptureFailure, isEncryptedMemoryValue, isOpfsAvailable, isRemoteImageFailure, isWebOfficeReadMethod, missingPorts, openCamera, openDocumentSurface, openMemoryEncryptionKey, parseBridgeRequest, parseMainMessage, parseWorkerEvent, probeChromeBuiltinAvailability, readDocxBlocks, readDocxTemplate, readOoxmlPackage, readPptxBlocks, readXlsxBlocks, readXlsxTemplate, resolveWebOfficeAuthorization, seedSkillsFromHttp, sha256HexWeb, startDictation, startViewerShell, startWorkerRuntimeHost, toDocumentImage, viewerCspHeader, watchBlockedResources, webOfficeFailure, writeOoxmlPackage };