@particle-academy/agent-integrations 0.6.2 → 0.7.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 (59) hide show
  1. package/dist/bridges/artboard.d.cts +78 -0
  2. package/dist/bridges/artboard.d.ts +78 -0
  3. package/dist/bridges/charts.d.cts +3 -3
  4. package/dist/bridges/charts.d.ts +3 -3
  5. package/dist/bridges/code.d.cts +3 -3
  6. package/dist/bridges/code.d.ts +3 -3
  7. package/dist/bridges/flow.d.cts +3 -3
  8. package/dist/bridges/flow.d.ts +3 -3
  9. package/dist/bridges/forms.d.cts +3 -3
  10. package/dist/bridges/forms.d.ts +3 -3
  11. package/dist/bridges/scene.d.cts +3 -3
  12. package/dist/bridges/scene.d.ts +3 -3
  13. package/dist/bridges/screens.d.cts +3 -3
  14. package/dist/bridges/screens.d.ts +3 -3
  15. package/dist/bridges/sheets.d.cts +3 -3
  16. package/dist/bridges/sheets.d.ts +3 -3
  17. package/dist/bridges/slides.d.cts +58 -0
  18. package/dist/bridges/slides.d.ts +58 -0
  19. package/dist/bridges/whiteboard.d.cts +3 -3
  20. package/dist/bridges/whiteboard.d.ts +3 -3
  21. package/dist/bridges-artboard.cjs +576 -0
  22. package/dist/bridges-artboard.cjs.map +1 -0
  23. package/dist/bridges-artboard.js +418 -0
  24. package/dist/bridges-artboard.js.map +1 -0
  25. package/dist/bridges-slides.cjs +438 -0
  26. package/dist/bridges-slides.cjs.map +1 -0
  27. package/dist/bridges-slides.js +6 -0
  28. package/dist/bridges-slides.js.map +1 -0
  29. package/dist/chunk-NE3GIGQD.js +384 -0
  30. package/dist/chunk-NE3GIGQD.js.map +1 -0
  31. package/dist/components/SharedWhiteboard/index.d.cts +1 -1
  32. package/dist/components/SharedWhiteboard/index.d.ts +1 -1
  33. package/dist/index.cjs +377 -0
  34. package/dist/index.cjs.map +1 -1
  35. package/dist/index.d.cts +9 -7
  36. package/dist/index.d.ts +9 -7
  37. package/dist/index.js +3 -2
  38. package/dist/index.js.map +1 -1
  39. package/dist/mcp/index.d.cts +5 -5
  40. package/dist/mcp/index.d.ts +5 -5
  41. package/dist/presence/index.d.cts +1 -1
  42. package/dist/presence/index.d.ts +1 -1
  43. package/dist/{server-BsSwfemr.d.cts → server-C2OpfPEo.d.cts} +3 -3
  44. package/dist/{server-Du3-IGqM.d.ts → server-CKAqFTyc.d.ts} +3 -3
  45. package/dist/sharing/index.d.cts +4 -4
  46. package/dist/sharing/index.d.ts +4 -4
  47. package/dist/sheets-adapter.d.cts +3 -3
  48. package/dist/sheets-adapter.d.ts +3 -3
  49. package/dist/{token-CrJF76oH.d.cts → token-C1O22GxJ.d.cts} +1 -1
  50. package/dist/{token-CrJF76oH.d.ts → token-C1O22GxJ.d.ts} +1 -1
  51. package/dist/{tool-host-BQuUygLF.d.cts → tool-host-CX3WFXgh.d.cts} +1 -1
  52. package/dist/{tool-host-C8JMMGYq.d.ts → tool-host-DldwGNqR.d.ts} +1 -1
  53. package/dist/{types-aOQLTW0E.d.cts → types-C2zdUpzn.d.cts} +1 -1
  54. package/dist/{types-aOQLTW0E.d.ts → types-C2zdUpzn.d.ts} +1 -1
  55. package/dist/{types-CCSBGW9T.d.cts → types-Cq5u8MJ8.d.cts} +1 -1
  56. package/dist/{types-DIVNcIQO.d.ts → types-DyaHnqNC.d.ts} +1 -1
  57. package/dist/undo/index.d.cts +2 -2
  58. package/dist/undo/index.d.ts +2 -2
  59. package/package.json +17 -4
@@ -0,0 +1,78 @@
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
+
5
+ /**
6
+ * Transport-level JSON shapes. These intentionally mirror fancy-artboard's
7
+ * public `ArtBoardValue` but are defined LOCALLY so this bridge builds
8
+ * independently of the sibling package — they are plain JSON crossing the
9
+ * MCP wire, not the live component types. Keep them in sync with
10
+ * @particle-academy/fancy-artboard's public surface.
11
+ */
12
+ type Viewport = {
13
+ x: number;
14
+ y: number;
15
+ zoom: number;
16
+ };
17
+ type ArtPieceContent = {
18
+ kind: "image";
19
+ src: string;
20
+ alt?: string;
21
+ } | {
22
+ kind: "html";
23
+ html: string;
24
+ } | {
25
+ kind: "node";
26
+ };
27
+ type ArtPieceData = {
28
+ id: string;
29
+ label?: string;
30
+ width?: number;
31
+ height?: number;
32
+ content: ArtPieceContent;
33
+ pending?: boolean;
34
+ };
35
+ type ArtSectionData = {
36
+ id: string;
37
+ title: string;
38
+ subtitle?: string;
39
+ pieces: ArtPieceData[];
40
+ };
41
+ type ArtBoardValue = {
42
+ sections: ArtSectionData[];
43
+ };
44
+ /**
45
+ * State accessors / mutators the bridge needs from the host. The host owns
46
+ * artboard state (controlled props on fancy-artboard components); the bridge
47
+ * calls into these to read or change it.
48
+ */
49
+ type ArtboardBridgeAdapter = {
50
+ getValue: () => ArtBoardValue;
51
+ setValue: (next: ArtBoardValue | ((prev: ArtBoardValue) => ArtBoardValue)) => void;
52
+ getViewport: () => Viewport;
53
+ setViewport: (next: Viewport) => void;
54
+ getFocus: () => string | null;
55
+ setFocus: (id: string | null) => void;
56
+ /** Optional: agent presence cursor (for the visualizer). */
57
+ setAgentCursor?: (cursor: {
58
+ x: number;
59
+ y: number;
60
+ } | null) => void;
61
+ };
62
+ type ArtboardBridgeOptions = {
63
+ adapter: ArtboardBridgeAdapter;
64
+ /** Identity used when the agent stamps authorship / cursor. */
65
+ agent?: {
66
+ id: string;
67
+ name?: string;
68
+ color?: string;
69
+ };
70
+ };
71
+ /**
72
+ * registerArtboardBridge — wires a full MCP tool set against a fancy-artboard
73
+ * session controlled by the host. Returns a Bridge handle the host can dispose
74
+ * to tear everything down.
75
+ */
76
+ declare function registerArtboardBridge(host: ToolHost, options: ArtboardBridgeOptions): Bridge;
77
+
78
+ export { type ArtboardBridgeAdapter, type ArtboardBridgeOptions, registerArtboardBridge };
@@ -0,0 +1,78 @@
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
+
5
+ /**
6
+ * Transport-level JSON shapes. These intentionally mirror fancy-artboard's
7
+ * public `ArtBoardValue` but are defined LOCALLY so this bridge builds
8
+ * independently of the sibling package — they are plain JSON crossing the
9
+ * MCP wire, not the live component types. Keep them in sync with
10
+ * @particle-academy/fancy-artboard's public surface.
11
+ */
12
+ type Viewport = {
13
+ x: number;
14
+ y: number;
15
+ zoom: number;
16
+ };
17
+ type ArtPieceContent = {
18
+ kind: "image";
19
+ src: string;
20
+ alt?: string;
21
+ } | {
22
+ kind: "html";
23
+ html: string;
24
+ } | {
25
+ kind: "node";
26
+ };
27
+ type ArtPieceData = {
28
+ id: string;
29
+ label?: string;
30
+ width?: number;
31
+ height?: number;
32
+ content: ArtPieceContent;
33
+ pending?: boolean;
34
+ };
35
+ type ArtSectionData = {
36
+ id: string;
37
+ title: string;
38
+ subtitle?: string;
39
+ pieces: ArtPieceData[];
40
+ };
41
+ type ArtBoardValue = {
42
+ sections: ArtSectionData[];
43
+ };
44
+ /**
45
+ * State accessors / mutators the bridge needs from the host. The host owns
46
+ * artboard state (controlled props on fancy-artboard components); the bridge
47
+ * calls into these to read or change it.
48
+ */
49
+ type ArtboardBridgeAdapter = {
50
+ getValue: () => ArtBoardValue;
51
+ setValue: (next: ArtBoardValue | ((prev: ArtBoardValue) => ArtBoardValue)) => void;
52
+ getViewport: () => Viewport;
53
+ setViewport: (next: Viewport) => void;
54
+ getFocus: () => string | null;
55
+ setFocus: (id: string | null) => void;
56
+ /** Optional: agent presence cursor (for the visualizer). */
57
+ setAgentCursor?: (cursor: {
58
+ x: number;
59
+ y: number;
60
+ } | null) => void;
61
+ };
62
+ type ArtboardBridgeOptions = {
63
+ adapter: ArtboardBridgeAdapter;
64
+ /** Identity used when the agent stamps authorship / cursor. */
65
+ agent?: {
66
+ id: string;
67
+ name?: string;
68
+ color?: string;
69
+ };
70
+ };
71
+ /**
72
+ * registerArtboardBridge — wires a full MCP tool set against a fancy-artboard
73
+ * session controlled by the host. Returns a Bridge handle the host can dispose
74
+ * to tear everything down.
75
+ */
76
+ declare function registerArtboardBridge(host: ToolHost, options: ArtboardBridgeOptions): Bridge;
77
+
78
+ export { type ArtboardBridgeAdapter, type ArtboardBridgeOptions, registerArtboardBridge };
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  /**
6
6
  * Adapter wires a single fancy-echarts chart to the bridge. Charts are
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  /**
6
6
  * Adapter wires a single fancy-echarts chart to the bridge. Charts are
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  /**
6
6
  * Adapter the host wires to a fancy-code CodeEditor (typically via the
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  /**
6
6
  * Adapter the host wires to a fancy-code CodeEditor (typically via the
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  type FlowNode = {
6
6
  id: string;
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  type FlowNode = {
6
6
  id: string;
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  /**
6
6
  * Field descriptor — what the host says about each form field. Mirrors the
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  /**
6
6
  * Field descriptor — what the host says about each form field. Mirrors the
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  /**
6
6
  * Loose Scene types — mirror the public surface of fancy-3d's Scene
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  /**
6
6
  * Loose Scene types — mirror the public surface of fancy-3d's Scene
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  /**
6
6
  * Loose snapshot of a screen — what's in fancy-screens' ScreenMeta plus
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  /**
6
6
  * Loose snapshot of a screen — what's in fancy-screens' ScreenMeta plus
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
2
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
3
- import '../types-aOQLTW0E.cjs';
1
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
2
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
3
+ import '../types-C2zdUpzn.cjs';
4
4
 
5
5
  /**
6
6
  * Loose types — kept here so the bridge builds without a hard dep on
@@ -1,6 +1,6 @@
1
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
2
- import { B as Bridge } from '../types-DIVNcIQO.js';
3
- import '../types-aOQLTW0E.js';
1
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
2
+ import { B as Bridge } from '../types-DyaHnqNC.js';
3
+ import '../types-C2zdUpzn.js';
4
4
 
5
5
  /**
6
6
  * Loose types — kept here so the bridge builds without a hard dep on
@@ -0,0 +1,58 @@
1
+ import { Deck, DeckOp } from '@particle-academy/fancy-slides';
2
+ export { reduceDeck } from '@particle-academy/fancy-slides';
3
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
4
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
5
+ import '../types-C2zdUpzn.cjs';
6
+
7
+ /**
8
+ * Adapter — the bridge calls into these to read or change deck state. The
9
+ * host owns the deck (it's a controlled prop on `DeckEditor` / `SlideViewer`).
10
+ * Every mutation funnels through `apply(op)`, which the host typically
11
+ * implements as `setDeck(deck => reduceDeck(deck, op))`.
12
+ */
13
+ type SlidesBridgeAdapter = {
14
+ /** Read the current deck. */
15
+ getDeck: () => Deck;
16
+ /**
17
+ * Apply a typed DeckOp. The same operations the editor + agent use,
18
+ * so the host's reducer + undo stack handle both code paths identically.
19
+ */
20
+ apply: (op: DeckOp) => void;
21
+ /** Optional screen id for cross-screen presence highlighting. */
22
+ screenId?: string;
23
+ };
24
+ type SlidesBridgeOptions = {
25
+ adapter: SlidesBridgeAdapter;
26
+ /** Identity stamped on activity / op metadata. */
27
+ agent?: {
28
+ id: string;
29
+ name?: string;
30
+ color?: string;
31
+ };
32
+ };
33
+ /**
34
+ * registerSlidesBridge — wires the full slide-editor MCP surface against
35
+ * a fancy-slides Deck. Tools map 1:1 to `DeckOp` cases (plus read-only
36
+ * helpers); humans and agents take identical paths through the reducer.
37
+ *
38
+ * deck_describe read-only deck summary
39
+ * deck_get full deck JSON
40
+ * deck_set_title rename
41
+ * deck_apply_theme swap theme
42
+ * slide_list ordered list of slide ids + titles
43
+ * slide_get full slide JSON
44
+ * slide_add insert a slide
45
+ * slide_remove delete a slide
46
+ * slide_reorder move a slide
47
+ * slide_set_layout change layout preset
48
+ * slide_set_notes update speaker notes
49
+ * slide_set_background background color / image / gradient
50
+ * element_add insert an element onto a slide
51
+ * element_remove delete an element
52
+ * element_update patch an element's fields
53
+ * element_move set element x/y
54
+ * element_resize set element w/h
55
+ */
56
+ declare function registerSlidesBridge(host: ToolHost, options: SlidesBridgeOptions): Bridge;
57
+
58
+ export { type SlidesBridgeAdapter, type SlidesBridgeOptions, registerSlidesBridge };
@@ -0,0 +1,58 @@
1
+ import { Deck, DeckOp } from '@particle-academy/fancy-slides';
2
+ export { reduceDeck } from '@particle-academy/fancy-slides';
3
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
4
+ import { B as Bridge } from '../types-DyaHnqNC.js';
5
+ import '../types-C2zdUpzn.js';
6
+
7
+ /**
8
+ * Adapter — the bridge calls into these to read or change deck state. The
9
+ * host owns the deck (it's a controlled prop on `DeckEditor` / `SlideViewer`).
10
+ * Every mutation funnels through `apply(op)`, which the host typically
11
+ * implements as `setDeck(deck => reduceDeck(deck, op))`.
12
+ */
13
+ type SlidesBridgeAdapter = {
14
+ /** Read the current deck. */
15
+ getDeck: () => Deck;
16
+ /**
17
+ * Apply a typed DeckOp. The same operations the editor + agent use,
18
+ * so the host's reducer + undo stack handle both code paths identically.
19
+ */
20
+ apply: (op: DeckOp) => void;
21
+ /** Optional screen id for cross-screen presence highlighting. */
22
+ screenId?: string;
23
+ };
24
+ type SlidesBridgeOptions = {
25
+ adapter: SlidesBridgeAdapter;
26
+ /** Identity stamped on activity / op metadata. */
27
+ agent?: {
28
+ id: string;
29
+ name?: string;
30
+ color?: string;
31
+ };
32
+ };
33
+ /**
34
+ * registerSlidesBridge — wires the full slide-editor MCP surface against
35
+ * a fancy-slides Deck. Tools map 1:1 to `DeckOp` cases (plus read-only
36
+ * helpers); humans and agents take identical paths through the reducer.
37
+ *
38
+ * deck_describe read-only deck summary
39
+ * deck_get full deck JSON
40
+ * deck_set_title rename
41
+ * deck_apply_theme swap theme
42
+ * slide_list ordered list of slide ids + titles
43
+ * slide_get full slide JSON
44
+ * slide_add insert a slide
45
+ * slide_remove delete a slide
46
+ * slide_reorder move a slide
47
+ * slide_set_layout change layout preset
48
+ * slide_set_notes update speaker notes
49
+ * slide_set_background background color / image / gradient
50
+ * element_add insert an element onto a slide
51
+ * element_remove delete an element
52
+ * element_update patch an element's fields
53
+ * element_move set element x/y
54
+ * element_resize set element w/h
55
+ */
56
+ declare function registerSlidesBridge(host: ToolHost, options: SlidesBridgeOptions): Bridge;
57
+
58
+ export { type SlidesBridgeAdapter, type SlidesBridgeOptions, registerSlidesBridge };
@@ -1,7 +1,7 @@
1
1
  import { StickyNoteItem, ShapeItem, ConnectorItem, Stroke, Viewport, RemoteCursor } from '@particle-academy/fancy-whiteboard';
2
- import { T as ToolHost } from '../tool-host-BQuUygLF.cjs';
3
- import { B as Bridge } from '../types-CCSBGW9T.cjs';
4
- import '../types-aOQLTW0E.cjs';
2
+ import { T as ToolHost } from '../tool-host-CX3WFXgh.cjs';
3
+ import { B as Bridge } from '../types-Cq5u8MJ8.cjs';
4
+ import '../types-C2zdUpzn.cjs';
5
5
 
6
6
  /**
7
7
  * State accessors / mutators the bridge needs from the host. The host owns
@@ -1,7 +1,7 @@
1
1
  import { StickyNoteItem, ShapeItem, ConnectorItem, Stroke, Viewport, RemoteCursor } from '@particle-academy/fancy-whiteboard';
2
- import { T as ToolHost } from '../tool-host-C8JMMGYq.js';
3
- import { B as Bridge } from '../types-DIVNcIQO.js';
4
- import '../types-aOQLTW0E.js';
2
+ import { T as ToolHost } from '../tool-host-DldwGNqR.js';
3
+ import { B as Bridge } from '../types-DyaHnqNC.js';
4
+ import '../types-C2zdUpzn.js';
5
5
 
6
6
  /**
7
7
  * State accessors / mutators the bridge needs from the host. The host owns