@runtypelabs/persona 4.15.0 → 4.16.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.
- package/dist/codegen.cjs +1 -1
- package/dist/codegen.js +1 -1
- package/dist/context-mentions.d.cts +283 -9
- package/dist/context-mentions.d.ts +283 -9
- package/dist/index.cjs +68 -68
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +299 -10
- package/dist/index.d.ts +299 -10
- package/dist/index.global.js +57 -57
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +69 -69
- package/dist/index.js.map +1 -1
- package/dist/launcher.global.js +2 -2
- package/dist/launcher.global.js.map +1 -1
- package/dist/smart-dom-reader.d.cts +283 -9
- package/dist/smart-dom-reader.d.ts +283 -9
- package/dist/testing.cjs +3 -3
- package/dist/testing.d.cts +7 -0
- package/dist/testing.d.ts +7 -0
- package/dist/testing.js +3 -3
- package/dist/theme-editor-preview.cjs +64 -64
- package/dist/theme-editor-preview.d.cts +283 -9
- package/dist/theme-editor-preview.d.ts +283 -9
- package/dist/theme-editor-preview.js +56 -56
- package/dist/theme-editor.cjs +10 -10
- package/dist/theme-editor.d.cts +283 -10
- package/dist/theme-editor.d.ts +283 -10
- package/dist/theme-editor.js +10 -10
- package/dist/theme-reference.cjs +1 -1
- package/dist/theme-reference.d.cts +66 -3
- package/dist/theme-reference.d.ts +66 -3
- package/dist/theme-reference.js +1 -1
- package/dist/widget.css +1 -1
- package/package.json +1 -1
- package/src/components/artifact-pane.test.ts +27 -0
- package/src/components/artifact-pane.ts +7 -3
- package/src/components/header-builder.ts +27 -2
- package/src/components/header-layouts.test.ts +56 -0
- package/src/components/header-layouts.ts +29 -9
- package/src/components/launcher-surface.test.ts +403 -0
- package/src/components/launcher.ts +297 -2
- package/src/components/panel.ts +69 -74
- package/src/components/suggestions.test.ts +40 -0
- package/src/components/suggestions.ts +213 -153
- package/src/components/welcome.test.ts +121 -0
- package/src/components/welcome.ts +305 -0
- package/src/components/widget-view.test.ts +5 -3
- package/src/components/widget-view.ts +14 -7
- package/src/defaults.ts +2 -2
- package/src/index-core.ts +12 -1
- package/src/launcher-global.ts +10 -7
- package/src/plugins/types.ts +66 -1
- package/src/styles/widget-styles.test.ts +220 -0
- package/src/styles/widget.css +353 -9
- package/src/testing/mock-stream.test.ts +19 -0
- package/src/testing/mock-stream.ts +20 -0
- package/src/theme-editor/sections.ts +30 -1
- package/src/theme-reference.ts +26 -4
- package/src/types/theme.ts +40 -3
- package/src/types.ts +164 -6
- package/src/ui.body-top-slot.test.ts +95 -0
- package/src/ui.content-width.test.ts +91 -0
- package/src/ui.docked.test.ts +7 -4
- package/src/ui.launcher-teaser.test.ts +162 -0
- package/src/ui.rebuild-composer.test.ts +491 -0
- package/src/ui.render-welcome.test.ts +505 -0
- package/src/ui.scroll-additive.test.ts +91 -21
- package/src/ui.scroll.test.ts +302 -14
- package/src/ui.suggest-replies.test.ts +46 -0
- package/src/ui.ts +747 -136
- package/src/ui.welcome.test.ts +504 -0
- package/src/utils/artifact-gate.test.ts +27 -0
- package/src/utils/artifact-gate.ts +9 -0
- package/src/utils/attachment-manager.test.ts +37 -0
- package/src/utils/attachment-manager.ts +15 -0
- package/src/utils/auto-follow.test.ts +23 -0
- package/src/utils/auto-follow.ts +11 -1
- package/src/utils/config-merge.ts +2 -0
- package/src/utils/content-width.test.ts +37 -0
- package/src/utils/content-width.ts +17 -0
- package/src/utils/plugin-storage.test.ts +94 -0
- package/src/utils/plugin-storage.ts +98 -0
- package/src/utils/theme.test.ts +137 -0
- package/src/utils/tokens.ts +49 -3
- package/src/welcome.test.ts +213 -0
- package/src/welcome.ts +130 -0
package/dist/index.d.cts
CHANGED
|
@@ -2,6 +2,37 @@ import { IconNode } from 'lucide';
|
|
|
2
2
|
import { Marked } from 'marked';
|
|
3
3
|
import DOMPurify from 'dompurify';
|
|
4
4
|
|
|
5
|
+
interface ResolvedWelcomeConfig {
|
|
6
|
+
title: string;
|
|
7
|
+
subtitle: string;
|
|
8
|
+
icon?: AgentWidgetWelcomeIcon;
|
|
9
|
+
variant: AgentWidgetWelcomeVariant;
|
|
10
|
+
dismiss: AgentWidgetWelcomeDismiss;
|
|
11
|
+
/** Undefined under `variant: "hero"`, which suppresses the greeting. */
|
|
12
|
+
message?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Per-field, presence-based precedence: `welcome.*` wins, else the legacy
|
|
16
|
+
* `copy` alias, else the default above.
|
|
17
|
+
*/
|
|
18
|
+
declare const resolveWelcomeConfig: (config?: AgentWidgetConfig) => ResolvedWelcomeConfig;
|
|
19
|
+
/**
|
|
20
|
+
* Derived visibility, never stored. "User activity" is the same predicate the
|
|
21
|
+
* starters use: the session contains at least one `role: "user"` message.
|
|
22
|
+
*/
|
|
23
|
+
declare const isWelcomeVisible: (resolved: ResolvedWelcomeConfig, messages: readonly AgentWidgetMessage[] | undefined) => boolean;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Synchronous key-value store handed to plugin render hooks. Backed by
|
|
27
|
+
* `localStorage`, namespaced per plugin id. The async `storageAdapter` cannot
|
|
28
|
+
* back a synchronous API and `persistState` is not a general key-value surface.
|
|
29
|
+
*/
|
|
30
|
+
interface AgentWidgetPluginStorage {
|
|
31
|
+
get: (key: string) => string | null;
|
|
32
|
+
set: (key: string, value: string) => void;
|
|
33
|
+
remove: (key: string) => void;
|
|
34
|
+
}
|
|
35
|
+
|
|
5
36
|
type AgentWidgetTransformSuggestionsContext = {
|
|
6
37
|
/**
|
|
7
38
|
* Fresh copy of the suggestions entering this plugin, already normalized:
|
|
@@ -29,6 +60,27 @@ type AgentWidgetRenderSuggestionContext = {
|
|
|
29
60
|
*/
|
|
30
61
|
select: () => void;
|
|
31
62
|
};
|
|
63
|
+
type AgentWidgetRenderWelcomeContext = {
|
|
64
|
+
/** Alias-resolved welcome config; never the raw `copy.welcome*` shape. */
|
|
65
|
+
config: ResolvedWelcomeConfig;
|
|
66
|
+
variant: AgentWidgetWelcomeVariant;
|
|
67
|
+
/** Derived visibility for this render; governs the default renderer only. */
|
|
68
|
+
visible: boolean;
|
|
69
|
+
/** The core-owned welcome card, live-updated by `controller.update()`. */
|
|
70
|
+
defaultRenderer: () => HTMLElement;
|
|
71
|
+
sendMessage: (text: string) => void;
|
|
72
|
+
/** Re-run welcome arbitration: cleanups run, previous content is removed. */
|
|
73
|
+
requestRender: () => void;
|
|
74
|
+
/**
|
|
75
|
+
* Persona's starter renderer, wired through the full select pipeline:
|
|
76
|
+
* `onSuggestionSelect`, cancelable `persona:suggestion:*` events, send/fill.
|
|
77
|
+
*/
|
|
78
|
+
renderStarter: (suggestion: AgentWidgetSuggestion) => HTMLElement;
|
|
79
|
+
/** Sync store namespaced by `persistState.keyPrefix` plus the plugin id. */
|
|
80
|
+
storage: AgentWidgetPluginStorage;
|
|
81
|
+
/** Teardown for this render; runs before the next one and on destroy. */
|
|
82
|
+
onCleanup: (fn: () => void) => void;
|
|
83
|
+
};
|
|
32
84
|
type AgentWidgetSuggestionSelectContext = {
|
|
33
85
|
suggestion: AgentWidgetResolvedSuggestion;
|
|
34
86
|
surface: AgentWidgetSuggestionSurface;
|
|
@@ -85,6 +137,34 @@ interface AgentWidgetPlugin {
|
|
|
85
137
|
defaultRenderer: () => HTMLElement;
|
|
86
138
|
onToggle: () => void;
|
|
87
139
|
}) => HTMLElement | null;
|
|
140
|
+
/**
|
|
141
|
+
* Custom renderer for the welcome surface (card, hero, greeting stack).
|
|
142
|
+
* First plugin returning an element wins; null falls through to the default,
|
|
143
|
+
* same contract as `renderSuggestion`.
|
|
144
|
+
*
|
|
145
|
+
* The core owns the welcome host: it stays mounted for the panel's lifetime
|
|
146
|
+
* and content is swapped inside it. A plugin element renders regardless of
|
|
147
|
+
* `ctx.visible` (derived visibility governs the default renderer only) and
|
|
148
|
+
* the host overlays the transcript while that element is active, so a home
|
|
149
|
+
* screen can return over an existing conversation. Return null again to
|
|
150
|
+
* clear the overlay.
|
|
151
|
+
*
|
|
152
|
+
* The ctx carries no controller: plugins are host-instantiated, so close a
|
|
153
|
+
* factory over the init handle (`plugin.attach(controller)`).
|
|
154
|
+
*
|
|
155
|
+
* @example
|
|
156
|
+
* ```typescript
|
|
157
|
+
* renderWelcome: ({ config, renderStarter, requestRender, onCleanup }) => {
|
|
158
|
+
* const root = document.createElement("div");
|
|
159
|
+
* root.textContent = config.title;
|
|
160
|
+
* root.appendChild(renderStarter({ label: "Track my order" }));
|
|
161
|
+
* const timer = setInterval(requestRender, 60_000);
|
|
162
|
+
* onCleanup(() => clearInterval(timer));
|
|
163
|
+
* return root;
|
|
164
|
+
* }
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
renderWelcome?: (context: AgentWidgetRenderWelcomeContext) => HTMLElement | null;
|
|
88
168
|
/**
|
|
89
169
|
* Custom renderer for panel header
|
|
90
170
|
* Return null to use default renderer
|
|
@@ -129,6 +209,15 @@ interface AgentWidgetPlugin {
|
|
|
129
209
|
* Omitted when `config.voiceRecognition.enabled` is not true.
|
|
130
210
|
*/
|
|
131
211
|
onVoiceToggle?: () => void;
|
|
212
|
+
/**
|
|
213
|
+
* Re-run composer arbitration and swap the footer in place. The hook runs
|
|
214
|
+
* once at panel construction, so this is how a composer plugin unlocks
|
|
215
|
+
* (returns null) or re-renders later. Pending attachments, the mention
|
|
216
|
+
* affordances, and the composer listener registry are re-wired by the core.
|
|
217
|
+
*/
|
|
218
|
+
requestRender: () => void;
|
|
219
|
+
/** Same sync store as the `renderWelcome` ctx, namespaced per plugin id. */
|
|
220
|
+
storage: AgentWidgetPluginStorage;
|
|
132
221
|
}) => HTMLElement | null;
|
|
133
222
|
/**
|
|
134
223
|
* Custom renderer for reasoning bubbles
|
|
@@ -509,6 +598,15 @@ interface PanelTokens extends ComponentTokenSet {
|
|
|
509
598
|
/** Background of the region revealed behind a detached panel. */
|
|
510
599
|
canvasBackground?: string;
|
|
511
600
|
}
|
|
601
|
+
/** Per-element text styling shared by themable text surfaces. */
|
|
602
|
+
interface TextStyleTokens {
|
|
603
|
+
fontFamily?: string;
|
|
604
|
+
fontSize?: string;
|
|
605
|
+
fontWeight?: string;
|
|
606
|
+
lineHeight?: string;
|
|
607
|
+
letterSpacing?: string;
|
|
608
|
+
color?: TokenReference<'color'>;
|
|
609
|
+
}
|
|
512
610
|
interface HeaderTokens extends ComponentTokenSet {
|
|
513
611
|
background: TokenReference<'color'>;
|
|
514
612
|
border: TokenReference<'color'>;
|
|
@@ -517,10 +615,14 @@ interface HeaderTokens extends ComponentTokenSet {
|
|
|
517
615
|
iconBackground: TokenReference<'color'>;
|
|
518
616
|
/** Foreground (glyph stroke or emoji text) on the header avatar tile. */
|
|
519
617
|
iconForeground: TokenReference<'color'>;
|
|
520
|
-
/**
|
|
618
|
+
/** Legacy alias of `title.color`; `title.color` wins when both are set. */
|
|
521
619
|
titleForeground: TokenReference<'color'>;
|
|
522
|
-
/**
|
|
620
|
+
/** Legacy alias of `subtitle.color`; `subtitle.color` wins when both are set. */
|
|
523
621
|
subtitleForeground: TokenReference<'color'>;
|
|
622
|
+
/** Header title typography (next to the icon, or minimal layout title). */
|
|
623
|
+
title?: TextStyleTokens;
|
|
624
|
+
/** Header subtitle typography, for the line under the title. */
|
|
625
|
+
subtitle?: TextStyleTokens;
|
|
524
626
|
/** Default color for clear / close icon buttons when launcher overrides are unset. */
|
|
525
627
|
actionIconForeground: TokenReference<'color'>;
|
|
526
628
|
/** Box-shadow on the header (e.g., a fade shadow to replace the default border). */
|
|
@@ -550,7 +652,7 @@ interface MessageTokens {
|
|
|
550
652
|
}
|
|
551
653
|
/**
|
|
552
654
|
* Welcome / intro card rendered above the message list when no messages exist.
|
|
553
|
-
* Set `
|
|
655
|
+
* Set `welcome.variant: "none"` to hide it; use `layout.slots["body-top"]`
|
|
554
656
|
* to replace it wholesale.
|
|
555
657
|
*/
|
|
556
658
|
interface IntroCardTokens extends ComponentTokenSet {
|
|
@@ -559,6 +661,12 @@ interface IntroCardTokens extends ComponentTokenSet {
|
|
|
559
661
|
padding?: TokenReference<'spacing'>;
|
|
560
662
|
/** Box-shadow on the intro card (token ref or raw CSS, e.g. `none`). */
|
|
561
663
|
shadow?: string;
|
|
664
|
+
/** Full border shorthand on the intro card (raw CSS, e.g. `"1px solid rgba(0,0,0,0.1)"`). @default "none" */
|
|
665
|
+
border?: string;
|
|
666
|
+
/** Welcome title typography. */
|
|
667
|
+
title?: TextStyleTokens;
|
|
668
|
+
/** Welcome subtitle typography. */
|
|
669
|
+
subtitle?: TextStyleTokens;
|
|
562
670
|
}
|
|
563
671
|
/** Collapsible widget chrome (tool bubbles, reasoning bubbles, approval bubbles). */
|
|
564
672
|
interface CollapsibleWidgetTokens {
|
|
@@ -601,6 +709,8 @@ interface MarkdownTokens {
|
|
|
601
709
|
background?: TokenReference<'color'>;
|
|
602
710
|
borderColor?: TokenReference<'color'>;
|
|
603
711
|
textColor?: TokenReference<'color'>;
|
|
712
|
+
/** Corner radius; follows `palette.radius.md` by default so square-corner themes get square code blocks. */
|
|
713
|
+
borderRadius?: TokenReference<'radius'>;
|
|
604
714
|
};
|
|
605
715
|
/** Table styling. */
|
|
606
716
|
table?: {
|
|
@@ -658,10 +768,19 @@ interface ToolBubbleTokens {
|
|
|
658
768
|
interface ReasoningBubbleTokens {
|
|
659
769
|
shadow: string;
|
|
660
770
|
}
|
|
771
|
+
/** Scrollbar appearance shared by every scroller in the widget. */
|
|
772
|
+
interface ScrollbarTokens {
|
|
773
|
+
/** Thumb color. @default semantic.colors.border */
|
|
774
|
+
thumb?: TokenReference<'color'>;
|
|
775
|
+
/** Track color. @default "transparent" */
|
|
776
|
+
track?: TokenReference<'color'>;
|
|
777
|
+
}
|
|
661
778
|
/** Composer (message input) chrome. */
|
|
662
779
|
interface ComposerChromeTokens {
|
|
663
780
|
/** Box-shadow on the composer form (raw CSS, e.g. `none`). */
|
|
664
781
|
shadow: string;
|
|
782
|
+
/** Border color of the composer form. @default semantic.colors.border */
|
|
783
|
+
borderColor?: TokenReference<'color'>;
|
|
665
784
|
/** Inner padding of the composer form (raw CSS shorthand). @default "0.75rem 1rem" */
|
|
666
785
|
padding?: string;
|
|
667
786
|
/** Gap between the textarea row and the actions row. @default "0.5rem" */
|
|
@@ -821,7 +940,10 @@ interface ScrollToBottomTokens extends ComponentTokenSet {
|
|
|
821
940
|
}
|
|
822
941
|
/** Visual tokens shared by one suggestion presentation variant. */
|
|
823
942
|
interface SuggestionVariantTokens extends ComponentTokenSet {
|
|
943
|
+
/** Space inside one item, between its icon and its copy. */
|
|
824
944
|
gap?: string;
|
|
945
|
+
/** Space between suggestion items in the container. */
|
|
946
|
+
itemGap?: string;
|
|
825
947
|
minHeight?: string;
|
|
826
948
|
fontSize?: string;
|
|
827
949
|
lineHeight?: string;
|
|
@@ -863,6 +985,8 @@ interface ComponentTokens {
|
|
|
863
985
|
toolBubble: ToolBubbleTokens;
|
|
864
986
|
reasoningBubble: ReasoningBubbleTokens;
|
|
865
987
|
composer: ComposerChromeTokens;
|
|
988
|
+
/** Scrollbar appearance for every scroller in the widget. */
|
|
989
|
+
scrollbar?: ScrollbarTokens;
|
|
866
990
|
/** Icon button styling tokens. */
|
|
867
991
|
iconButton?: IconButtonTokens;
|
|
868
992
|
/** Label button styling tokens. */
|
|
@@ -2783,6 +2907,13 @@ type AgentWidgetArtifactsLayoutConfig = {
|
|
|
2783
2907
|
* @default 520
|
|
2784
2908
|
*/
|
|
2785
2909
|
narrowHostMaxWidth?: number;
|
|
2910
|
+
/**
|
|
2911
|
+
* Width of the slide-over artifact drawer (the narrow-host and mobile
|
|
2912
|
+
* presentations; `paneWidth`/`paneMaxWidth` only size the desktop split).
|
|
2913
|
+
* CSS length; `"100%"` makes the drawer cover the whole panel.
|
|
2914
|
+
* @default min(calc(100% - 1rem), 22rem)
|
|
2915
|
+
*/
|
|
2916
|
+
drawerWidth?: string;
|
|
2786
2917
|
/**
|
|
2787
2918
|
* When true (default), widen the launcher panel while artifacts are visible and not user-dismissed.
|
|
2788
2919
|
* No-op for inline embed (`launcher.enabled === false`).
|
|
@@ -3411,6 +3542,18 @@ type AgentWidgetScrollMode = "follow" | "anchor-top" | "none";
|
|
|
3411
3542
|
* restored thread opens at a readable place rather than at the very bottom.
|
|
3412
3543
|
*/
|
|
3413
3544
|
type AgentWidgetScrollRestorePosition = "bottom" | "last-user-turn";
|
|
3545
|
+
/**
|
|
3546
|
+
* Scrollbar visibility policy for every scroll surface in the widget.
|
|
3547
|
+
*
|
|
3548
|
+
* - `"on-scroll"` hides bars at rest and reveals them on genuine reader
|
|
3549
|
+
* input, keeping them visible while the reader is away from the resting
|
|
3550
|
+
* position: overlay-scrollbar semantics on every platform.
|
|
3551
|
+
* - `"auto"` keeps the themed bar under native visibility semantics: overlay
|
|
3552
|
+
* platforms still auto-hide, classic-scrollbar platforms (Windows,
|
|
3553
|
+
* always-show macOS) show it persistently.
|
|
3554
|
+
* - `"hidden"` never shows an indicator. Scrolling itself is unaffected.
|
|
3555
|
+
*/
|
|
3556
|
+
type AgentWidgetScrollbarPolicy = "on-scroll" | "auto" | "hidden";
|
|
3414
3557
|
type AgentWidgetScrollBehaviorFeature = {
|
|
3415
3558
|
/** Scroll behavior during streamed responses. @default "anchor-top" */
|
|
3416
3559
|
mode?: AgentWidgetScrollMode;
|
|
@@ -3455,6 +3598,13 @@ type AgentWidgetScrollBehaviorFeature = {
|
|
|
3455
3598
|
* @default false
|
|
3456
3599
|
*/
|
|
3457
3600
|
announce?: boolean;
|
|
3601
|
+
/**
|
|
3602
|
+
* Scrollbar visibility policy, applied to the transcript and every inner
|
|
3603
|
+
* scroller through one root attribute. Themable via
|
|
3604
|
+
* `--persona-scrollbar-thumb` and `--persona-scrollbar-track`.
|
|
3605
|
+
* @default "on-scroll"
|
|
3606
|
+
*/
|
|
3607
|
+
scrollbar?: AgentWidgetScrollbarPolicy;
|
|
3458
3608
|
};
|
|
3459
3609
|
type AgentWidgetScrollToBottomFeature = {
|
|
3460
3610
|
/**
|
|
@@ -4360,6 +4510,57 @@ type AgentWidgetLauncherConfig = {
|
|
|
4360
4510
|
* @example "min(380px, calc(100vw - 48px))"
|
|
4361
4511
|
*/
|
|
4362
4512
|
collapsedMaxWidth?: string;
|
|
4513
|
+
/**
|
|
4514
|
+
* Proactive nudge bubble anchored above the collapsed floating launcher.
|
|
4515
|
+
* Omit it (the default) and no teaser renders.
|
|
4516
|
+
*/
|
|
4517
|
+
teaser?: AgentWidgetLauncherTeaserConfig;
|
|
4518
|
+
};
|
|
4519
|
+
/**
|
|
4520
|
+
* Launcher teaser: a small bubble above the collapsed launcher. Clicking it
|
|
4521
|
+
* opens the panel and consumes the teaser exactly like an explicit dismissal.
|
|
4522
|
+
* Within a single page load the teaser appears at most once under either
|
|
4523
|
+
* frequency.
|
|
4524
|
+
*
|
|
4525
|
+
* @example
|
|
4526
|
+
* ```typescript
|
|
4527
|
+
* launcher: {
|
|
4528
|
+
* teaser: { text: "Need a hand picking a plan?", delayMs: 3000 }
|
|
4529
|
+
* }
|
|
4530
|
+
* ```
|
|
4531
|
+
*/
|
|
4532
|
+
type AgentWidgetLauncherTeaserConfig = {
|
|
4533
|
+
/** Bubble copy. An empty string renders no teaser. */
|
|
4534
|
+
text: string;
|
|
4535
|
+
/**
|
|
4536
|
+
* Delay before the bubble appears, in milliseconds.
|
|
4537
|
+
* @default 0
|
|
4538
|
+
*/
|
|
4539
|
+
delayMs?: number;
|
|
4540
|
+
/**
|
|
4541
|
+
* How often the teaser may return.
|
|
4542
|
+
*
|
|
4543
|
+
* `"once"`: a dismissal or a click-through is remembered in `localStorage`
|
|
4544
|
+
* under `` `${persistState.keyPrefix ?? "persona-"}teaser-dismissed` `` and
|
|
4545
|
+
* the teaser never returns on that browser. `"always"`: shows on every page
|
|
4546
|
+
* load, tracked in memory only. `persistState: false` downgrades `"once"` to
|
|
4547
|
+
* in-memory too, so the teaser reappears each load.
|
|
4548
|
+
*
|
|
4549
|
+
* Custom `storageAdapter` implementations do not participate in teaser state.
|
|
4550
|
+
*
|
|
4551
|
+
* @default "once"
|
|
4552
|
+
*/
|
|
4553
|
+
frequency?: "once" | "always";
|
|
4554
|
+
/**
|
|
4555
|
+
* Render an x affordance that dismisses the teaser without opening the panel.
|
|
4556
|
+
* @default true
|
|
4557
|
+
*/
|
|
4558
|
+
dismissible?: boolean;
|
|
4559
|
+
/**
|
|
4560
|
+
* Accessible label for the dismiss affordance.
|
|
4561
|
+
* @default "Dismiss message"
|
|
4562
|
+
*/
|
|
4563
|
+
dismissLabel?: string;
|
|
4363
4564
|
};
|
|
4364
4565
|
type AgentWidgetSendButtonConfig = {
|
|
4365
4566
|
borderWidth?: string;
|
|
@@ -5148,7 +5349,10 @@ type AgentWidgetSuggestion = string | {
|
|
|
5148
5349
|
label: string;
|
|
5149
5350
|
/** Text placed in the composer or sent. Defaults to `label`. */
|
|
5150
5351
|
prompt?: string;
|
|
5151
|
-
/**
|
|
5352
|
+
/**
|
|
5353
|
+
* Optional supporting copy, most useful with the `card` variant. The
|
|
5354
|
+
* `chip` variant ignores it and renders the label alone.
|
|
5355
|
+
*/
|
|
5152
5356
|
description?: string;
|
|
5153
5357
|
/** Optional icon from Persona's bundled Lucide registry. */
|
|
5154
5358
|
icon?: IconName;
|
|
@@ -5192,9 +5396,10 @@ type AgentWidgetSuggestionSurfaceConfig = {
|
|
|
5192
5396
|
/** Default click behavior, overridable per item. Defaults to `send`. */
|
|
5193
5397
|
behavior?: AgentWidgetSuggestionBehavior;
|
|
5194
5398
|
/**
|
|
5195
|
-
* Layout for items past the surface width. Defaults to `wrap`
|
|
5196
|
-
*
|
|
5197
|
-
* `card` and `list` layouts manage their
|
|
5399
|
+
* Layout for items past the surface width. Defaults to `wrap` on every
|
|
5400
|
+
* surface; `scroll` opts into a horizontal strip for large sets. Applies
|
|
5401
|
+
* to the `chip` variant only; the `card` and `list` layouts manage their
|
|
5402
|
+
* own stacking.
|
|
5198
5403
|
*/
|
|
5199
5404
|
overflow?: "scroll" | "wrap";
|
|
5200
5405
|
/** Maximum visible items. Defaults to 4. */
|
|
@@ -5243,6 +5448,70 @@ type AgentWidgetSuggestionsConfig = {
|
|
|
5243
5448
|
starters?: AgentWidgetStarterSuggestionsConfig;
|
|
5244
5449
|
followUps?: AgentWidgetFollowUpSuggestionsConfig;
|
|
5245
5450
|
};
|
|
5451
|
+
/**
|
|
5452
|
+
* Which welcome surface renders.
|
|
5453
|
+
* `"card"` is the top-of-scroll intro card (default, back-compatible),
|
|
5454
|
+
* `"hero"` centers it in the empty conversation, `"none"` renders no surface.
|
|
5455
|
+
*/
|
|
5456
|
+
type AgentWidgetWelcomeVariant = "card" | "hero" | "none";
|
|
5457
|
+
/**
|
|
5458
|
+
* When the welcome surface goes away. `"never"` is the default for `"card"`;
|
|
5459
|
+
* `"on-first-message"` is the default for `"hero"` and cannot be overridden
|
|
5460
|
+
* there.
|
|
5461
|
+
*/
|
|
5462
|
+
type AgentWidgetWelcomeDismiss = "never" | "on-first-message";
|
|
5463
|
+
/**
|
|
5464
|
+
* Avatar or logo shown above the welcome title. Discriminated union; the
|
|
5465
|
+
* function form is the escape hatch for custom markup. There is deliberately
|
|
5466
|
+
* no raw HTML string variant (sanitization surface plus accessibility hole).
|
|
5467
|
+
*/
|
|
5468
|
+
type AgentWidgetWelcomeIcon = {
|
|
5469
|
+
type: "lucide";
|
|
5470
|
+
name: IconName;
|
|
5471
|
+
}
|
|
5472
|
+
/** `alt` is required, and may be `""` for a decorative logo. */
|
|
5473
|
+
| {
|
|
5474
|
+
type: "image";
|
|
5475
|
+
url: string;
|
|
5476
|
+
alt: string;
|
|
5477
|
+
}
|
|
5478
|
+
/** Emoji or short text glyph. */
|
|
5479
|
+
| {
|
|
5480
|
+
type: "text";
|
|
5481
|
+
text: string;
|
|
5482
|
+
} | (() => HTMLElement | SVGElement);
|
|
5483
|
+
/**
|
|
5484
|
+
* First-open welcome surface. Consolidates the deprecated
|
|
5485
|
+
* `copy.welcomeTitle` / `copy.welcomeSubtitle` / `copy.showWelcomeCard`
|
|
5486
|
+
* options; a field present here wins over its legacy alias.
|
|
5487
|
+
*
|
|
5488
|
+
* All defaults live in the resolver (`resolveWelcomeConfig`), never in
|
|
5489
|
+
* `DEFAULT_WIDGET_CONFIG`: presence on this object is what distinguishes a
|
|
5490
|
+
* host-set value from a filled-in default.
|
|
5491
|
+
*/
|
|
5492
|
+
interface AgentWidgetWelcomeConfig {
|
|
5493
|
+
/** Card or hero title. Defaults to "Hello 👋". */
|
|
5494
|
+
title?: string;
|
|
5495
|
+
/** Scope statement in the assistant's voice. Empty string omits it. */
|
|
5496
|
+
subtitle?: string;
|
|
5497
|
+
/** Avatar or logo shown above the title. */
|
|
5498
|
+
icon?: AgentWidgetWelcomeIcon;
|
|
5499
|
+
/** @default "card" */
|
|
5500
|
+
variant?: AgentWidgetWelcomeVariant;
|
|
5501
|
+
/** @default "never" for `card`, always `"on-first-message"` for `hero`. */
|
|
5502
|
+
dismiss?: AgentWidgetWelcomeDismiss;
|
|
5503
|
+
/**
|
|
5504
|
+
* Display-only greeting bubble pinned at transcript position zero. It is UI
|
|
5505
|
+
* chrome derived from config, never a session message: it does not appear in
|
|
5506
|
+
* `getMessages()`, is never persisted or sent to the model, `onMessage` does
|
|
5507
|
+
* not fire for it, and it survives `clearChat()`. Use an assistant
|
|
5508
|
+
* `initialMessages` entry instead when the model should see the greeting.
|
|
5509
|
+
*
|
|
5510
|
+
* Ignored (with a debug-mode warning) when `variant` is `"hero"`: the hero
|
|
5511
|
+
* is the greeting.
|
|
5512
|
+
*/
|
|
5513
|
+
message?: string;
|
|
5514
|
+
}
|
|
5246
5515
|
/**
|
|
5247
5516
|
* Interface for pluggable stream parsers that extract text from streaming responses.
|
|
5248
5517
|
* Parsers handle incremental parsing to extract text values from structured formats (JSON, XML, etc.).
|
|
@@ -5489,7 +5758,9 @@ type AgentWidgetHeaderLayoutConfig = {
|
|
|
5489
5758
|
*/
|
|
5490
5759
|
render?: (context: HeaderRenderContext) => HTMLElement;
|
|
5491
5760
|
/**
|
|
5492
|
-
*
|
|
5761
|
+
* Icon action buttons at the trailing edge of the `minimal` header layout,
|
|
5762
|
+
* clustered with the close button and sharing its chrome. For a menu
|
|
5763
|
+
* affordance next to the title, use `titleMenu` instead.
|
|
5493
5764
|
*/
|
|
5494
5765
|
trailingActions?: AgentWidgetHeaderTrailingAction[];
|
|
5495
5766
|
/** Called when a `trailingActions` button is clicked. */
|
|
@@ -5669,7 +5940,11 @@ type AgentWidgetLayoutConfig = {
|
|
|
5669
5940
|
/**
|
|
5670
5941
|
* Max width for the content area (messages + composer).
|
|
5671
5942
|
* Applied with `margin: 0 auto` for centering.
|
|
5672
|
-
* Accepts any CSS width value (e.g. "90ch", "720px", "80%")
|
|
5943
|
+
* Accepts any CSS width value (e.g. "90ch", "720px", "80%"), or "none"
|
|
5944
|
+
* for a full-width column. Only engages on panels wider than the cap,
|
|
5945
|
+
* so launcher-width panels are unaffected.
|
|
5946
|
+
* @default "768px" ("720px" in composer-bar mode via
|
|
5947
|
+
* `launcher.composerBar.contentMaxWidth`)
|
|
5673
5948
|
*/
|
|
5674
5949
|
contentMaxWidth?: string;
|
|
5675
5950
|
};
|
|
@@ -6417,7 +6692,9 @@ type AgentWidgetConfig = {
|
|
|
6417
6692
|
*/
|
|
6418
6693
|
getHeaders?: AgentWidgetHeadersFunction;
|
|
6419
6694
|
copy?: {
|
|
6695
|
+
/** @deprecated Use `welcome.title`. */
|
|
6420
6696
|
welcomeTitle?: string;
|
|
6697
|
+
/** @deprecated Use `welcome.subtitle`. */
|
|
6421
6698
|
welcomeSubtitle?: string;
|
|
6422
6699
|
inputPlaceholder?: string;
|
|
6423
6700
|
sendButtonLabel?: string;
|
|
@@ -6425,6 +6702,7 @@ type AgentWidgetConfig = {
|
|
|
6425
6702
|
stopButtonLabel?: string;
|
|
6426
6703
|
/**
|
|
6427
6704
|
* When false, the welcome / intro card is not shown above the message list.
|
|
6705
|
+
* @deprecated Use `welcome.variant: "none"`.
|
|
6428
6706
|
* @default true
|
|
6429
6707
|
*/
|
|
6430
6708
|
showWelcomeCard?: boolean;
|
|
@@ -6491,6 +6769,12 @@ type AgentWidgetConfig = {
|
|
|
6491
6769
|
initialSelectedArtifactId?: string | null;
|
|
6492
6770
|
/** Rich starter and follow-up suggestion surfaces. */
|
|
6493
6771
|
suggestions?: AgentWidgetSuggestionsConfig;
|
|
6772
|
+
/**
|
|
6773
|
+
* First-open welcome surface (card, hero, or none) plus the optional
|
|
6774
|
+
* display-only greeting bubble. Supersedes `copy.welcomeTitle`,
|
|
6775
|
+
* `copy.welcomeSubtitle`, and `copy.showWelcomeCard`.
|
|
6776
|
+
*/
|
|
6777
|
+
welcome?: AgentWidgetWelcomeConfig;
|
|
6494
6778
|
/** @deprecated Prefer `suggestions.starters.items`. */
|
|
6495
6779
|
suggestionChips?: string[];
|
|
6496
6780
|
/** @deprecated Prefer semantic tokens under `theme.components.suggestion`. */
|
|
@@ -9694,6 +9978,11 @@ declare class AttachmentManager {
|
|
|
9694
9978
|
* Set the previews container element
|
|
9695
9979
|
*/
|
|
9696
9980
|
setPreviewsContainer(container: HTMLElement | null): void;
|
|
9981
|
+
/**
|
|
9982
|
+
* Re-point previews at a new container and repaint from state. A composer
|
|
9983
|
+
* rebuild swaps the footer, so pending attachments must follow it.
|
|
9984
|
+
*/
|
|
9985
|
+
remountPreviews(container: HTMLElement | null): void;
|
|
9697
9986
|
/**
|
|
9698
9987
|
* Update the configuration (e.g., when allowed types change)
|
|
9699
9988
|
*/
|
|
@@ -10793,4 +11082,4 @@ interface RovingTablistController {
|
|
|
10793
11082
|
}
|
|
10794
11083
|
declare function createRovingTablist(container: HTMLElement, options: RovingTablistOptions): RovingTablistController;
|
|
10795
11084
|
|
|
10796
|
-
export { ASK_USER_QUESTION_CLIENT_TOOL, ASK_USER_QUESTION_PARAMETERS_SCHEMA, ASK_USER_QUESTION_TOOL_NAME, type AgentConfig, type AgentExecutionState, type AgentLoopConfig, type AgentMessageMetadata, type AgentRequestOptions, type AgentToolsConfig, type AgentWidgetActionContext, type AgentWidgetActionEventPayload, type AgentWidgetActionHandler, type AgentWidgetActionHandlerResult, type AgentWidgetActionParser, type AgentWidgetAgentRequestPayload, type AgentWidgetApproval, type AgentWidgetApprovalConfig, type AgentWidgetApprovalDecisionOptions, type AgentWidgetArtifactsFeature, type AgentWidgetArtifactsLayoutConfig, type AgentWidgetAskUserQuestionFeature, type AgentWidgetAskUserQuestionStyles, type AgentWidgetAttachmentsConfig, type AgentWidgetAvatarConfig, AgentWidgetClient, type AgentWidgetComponentRenderer, type AgentWidgetComposerConfig, type AgentWidgetConfig, type AgentWidgetConfigPatch, type AgentWidgetContextMentionChipRenderContext, type AgentWidgetContextMentionCommandContext, type AgentWidgetContextMentionComposerCapability, type AgentWidgetContextMentionConfig, type AgentWidgetContextMentionItem, type AgentWidgetContextMentionItemRenderContext, type AgentWidgetContextMentionMenuRenderContext, type AgentWidgetContextMentionPayload, type AgentWidgetContextMentionRef, type AgentWidgetContextMentionResolveContext, type AgentWidgetContextMentionSearchContext, type AgentWidgetContextMentionSource, type AgentWidgetContextMentionTokenRenderContext, type AgentWidgetContextProvider, type AgentWidgetContextProviderContext, type AgentWidgetController, type AgentWidgetControllerEventMap, type AgentWidgetCustomFetch, type AgentWidgetDockConfig, type AgentWidgetEvent, type AgentWidgetFeatureFlags, type AgentWidgetFollowUpSuggestionsConfig, type AgentWidgetHeaderLayoutConfig, type AgentWidgetHeadersFunction, type AgentWidgetInitHandle, type AgentWidgetInitOptions, type AgentWidgetLauncherConfig, type AgentWidgetLayoutConfig, type AgentWidgetLoadingIndicatorConfig, type AgentWidgetMarkdownConfig, type AgentWidgetMarkdownOptions, type AgentWidgetMarkdownRendererOverrides, type AgentWidgetMentionLlmEntry, type AgentWidgetMentionTriggerChannel, type AgentWidgetMentionTriggerPosition, type AgentWidgetMessage, type AgentWidgetMessageActionsConfig, type AgentWidgetMessageFeedback, type AgentWidgetMessageLayoutConfig, type AgentWidgetMessageRoleLayout, type AgentWidgetParsedAction, type AgentWidgetPlugin, type AgentWidgetReadAloudEvent, type AgentWidgetRenderSuggestionContext, type AgentWidgetRequestPayload, type AgentWidgetResolvedSuggestion, type AgentWidgetSSEEventParser, type AgentWidgetSSEEventResult, type AgentWidgetScrollBehaviorFeature, type AgentWidgetScrollMode, type AgentWidgetScrollRestorePosition, type AgentWidgetScrollToBottomFeature, AgentWidgetSession, type AgentWidgetSessionStatus, type AgentWidgetStarterSuggestionsConfig, type AgentWidgetStorageAdapter, type AgentWidgetStoredState, type AgentWidgetStreamAnimationBuffer, type AgentWidgetStreamAnimationBuiltinType, type AgentWidgetStreamAnimationFeature, type AgentWidgetStreamAnimationPlaceholder, type AgentWidgetStreamAnimationType, type AgentWidgetStreamParser, type AgentWidgetStreamParserResult, type AgentWidgetSuggestion, type AgentWidgetSuggestionBehavior, type AgentWidgetSuggestionChipsConfig, type AgentWidgetSuggestionSelectContext, type AgentWidgetSuggestionSource, type AgentWidgetSuggestionSurface, type AgentWidgetSuggestionSurfaceConfig, type AgentWidgetSuggestionVariant, type AgentWidgetSuggestionsConfig, type AgentWidgetTimestampConfig, type AgentWidgetTransformSuggestionsContext, type AgentWidgetVoiceStatusEvent, type AgentWidgetWebMcpConfig, type ArtifactConfigPayload, type ArtifactPaneTokens, type ArtifactTabTokens, type ArtifactToolbarTokens, type AskUserQuestionOption, type AskUserQuestionPayload, type AskUserQuestionPrompt, AttachmentManager, type AttachmentManagerConfig, type BorderScale, BrowserSpeechEngine, type BrowserSpeechEngineOptions, type CSATFeedbackOptions, type ClientChatRequest, type ClientFeedbackRequest, type ClientFeedbackType, type ClientInitResponse, type ClientSession, type ClientToolDefinition, type CodeFormat, type CodeGeneratorHooks, type CodeGeneratorOptions, type ColorPalette, type ColorShade, type ComboButtonHandle, type ComponentContext, type ComponentDirective, type ComponentRegistrationOptions, type ComponentRenderer, type ComponentTokens, type ComposerBuildContext, type ComposerElements, type ContentPart, type CreateComboButtonOptions, type CreateDropdownOptions, type CreateIconButtonOptions, type CreateLabelButtonOptions, type CreateStandardBubbleOptions, type CreateThemeOptions, type CreateToggleGroupOptions, DEFAULT_COMPONENTS, DEFAULT_FLOATING_LAUNCHER_MAX_WIDTH, DEFAULT_FLOATING_LAUNCHER_WIDTH, DEFAULT_PALETTE, DEFAULT_SEMANTIC, DEFAULT_WIDGET_CONFIG, type DeepPartial, type DemoCarouselHandle, type DemoCarouselItem, type DemoCarouselOptions, type DomContextMode, type DomContextOptions, type DropdownMenuHandle, type DropdownMenuItem, type EnrichedPageElement, type EventStreamBadgeColor, type EventStreamConfig, type EventStreamPayloadRenderContext, type EventStreamRowRenderContext, type EventStreamToolbarRenderContext, type EventStreamViewRenderContext, type FallbackSpeechEngineOptions, type FormatEnrichedContextOptions, type HeaderBuildContext, type HeaderElements, type HeaderLayoutContext, type HeaderLayoutRenderer, type HeaderRenderContext, type IconButtonTokens, type IconName, type IdleIndicatorRenderContext, type ImageContentPart, type InjectAssistantMessageOptions, type InjectComponentDirectiveOptions, type InjectMessageOptions, type InjectSystemMessageOptions, type InjectUserMessageOptions, type LabelButtonTokens, type LoadingIndicatorRenderContext, type LoadingIndicatorRenderer, type MarkdownParsersModule, type MarkdownProcessorOptions, type MessageActionCallbacks, type MessageContent, type MessageRenderContext, type MessageTransform, type NPSFeedbackOptions, PRESETS, PRESET_FULLSCREEN, PRESET_MINIMAL, PRESET_SHOP, type ParseOptionsConfig, type ParseRule, type PcmStreamPlayer, type PendingAttachment, type PersonaArtifactActionContext, type PersonaArtifactCustomAction, type PersonaArtifactDisplayDescriptor, type PersonaArtifactDisplayMatch, type PersonaArtifactDisplayMode, type PersonaArtifactDisplayModeInput, type PersonaArtifactDisplayResolution, type PersonaArtifactDisplayRules, type PersonaArtifactFilesDisplayRules, type PersonaArtifactKind, type PersonaArtifactManualUpsert, type PersonaArtifactPresentation, type PersonaArtifactRecord, type PersonaArtifactStatusLabelContext, type PersonaTheme, type PersonaThemePlugin, type RadiusScale, ReadAloudController, type ReadAloudListener, type ReadAloudState, type ResolvedTarget, type RovingTablistController, type RovingTablistOptions, type RuleScoringContext, type RuntypeClientChatRequest, type RuntypeClientChatStreamEvent, type RuntypeClientFeedbackRequest, type RuntypeClientFeedbackResponse, type RuntypeClientFeedbackType, type RuntypeClientInitRequest, type RuntypeClientInitResponse, type RuntypeClientResumeRequest, type RuntypeClientResumeStreamEvent, type RuntypeExecutionStreamEvent, type RuntypeFlowSSEEvent, type RuntypeStepCompleteEvent, type RuntypeStopReasonKind, type RuntypeStreamEventOf, type RuntypeTurnCompleteEvent, type SSEEventCallback, type SSEEventRecord, SUGGEST_REPLIES_CLIENT_TOOL, SUGGEST_REPLIES_PARAMETERS_SCHEMA, SUGGEST_REPLIES_TOOL_NAME, type SanitizeFunction, type SemanticColors, type SemanticSpacing, type SemanticTypography, type ShadowScale, type SlashCommandDefinition, type SlotRenderContext, type SlotRenderer, type SpacingScale, type SpeechCallbacks, type SpeechEngine, type SpeechRequest, type StreamAnimationContext, type StreamAnimationPlugin, THEME_ZONES, type TargetResolver, type TextContentPart, type ThemeValidationError, type ThemeValidationResult, type ThemeZone, type ToggleGroupHandle, type ToggleGroupItem, type ToggleGroupTokens, type TokenReference, type TypographyScale, VERSION, type VoiceConfig, type VoiceMetrics, type VoicePlaybackEngine, type VoiceProvider, type VoiceResult, type VoiceStatus, WEBMCP_TOOL_PREFIX, WebMcpBridge, type WebMcpConfirmHandler, type WebMcpConfirmInfo, type WebMcpToolResult, type WidgetArtifactLayoutPreference, type WidgetHostLayout, type WidgetHostLayoutMode, type WidgetLayoutSlot, type WidgetPreferenceCapabilities, type WidgetPreferenceParseIssue, type WidgetPreferenceParseIssueCode, type WidgetPreferenceParseResult, type WidgetPreferenceSlice, type WidgetPreset, accessibilityPlugin, animationsPlugin, applyFeaturePreferences, applyThemeVariables, attachHeaderToContainer, brandPlugin, buildComposer, buildDefaultHeader, buildHeader, buildHeaderWithLayout, buildMinimalHeader, builtInClientToolsForDispatch, canonicalArtifactDisplayMode, collectEnrichedPageContext, componentRegistry, createActionManager, createAgentExperience, createAskUserQuestionBubble, createBestAvailableVoiceProvider, createBubbleWithLayout, createCSATFeedback, createComboButton, createComponentMiddleware, createComponentStreamParser, createDefaultSanitizer, createDemoCarousel, createDirectivePostprocessor, createDropdownMenu, createFlexibleJsonStreamParser, createIconButton, createImagePart, createJsonStreamParser, createLabelButton, createLocalStorageAdapter, createMarkdownProcessor, createMarkdownProcessorFromConfig, createMessageActions, createNPSFeedback, createPlainTextParser, createPlugin, createRegexJsonParser, createRovingTablist, createSlashCommandsSource, createStandardBubble, createStaticMentionSource, createTextPart, createTheme, createThemeObserver, createToggleGroup, createTypingIndicator, createVoiceProvider, createWidgetHostLayout, createXmlParser, initAgentWidget as default, defaultActionHandlers, defaultJsonActionParser, defaultMentionFilter, defaultParseRules, detectColorScheme, directivePostprocessor, ensureAskUserQuestionSheet, escapeHtml, extractComponentDirectiveFromMessage, fileToImagePart, formatEnrichedContext, generateAssistantMessageId, generateCodeSnippet, generateMessageId, generateStableSelector, generateUserMessageId, getActiveTheme, getColorScheme, getDisplayText, getHeaderLayout, getImageParts, getPreset, hasComponentDirective, hasImages, headerLayouts, highContrastPlugin, initAgentWidget, isAskUserQuestionMessage, isComponentDirectiveType, isDockedMountMode, isSuggestRepliesMessage, isVoiceSupported, isWebMcpToolName, latestAgentSuggestions, listRegisteredStreamAnimations, loadMarkdownParsers, markdownPostprocessor, mergeWithDefaults, normalizeContent, normalizeMediaType, onMarkdownParsersReady, parseAskUserQuestionPayload, parseSuggestRepliesPayload, parseWidgetPreferenceSlice, pickBestVoice, pluginRegistry, reducedMotionPlugin, registerStreamAnimationPlugin, removeAskUserQuestionSheet, renderComponentDirective, renderLoadingIndicatorWithFallback, renderLucideIcon, resolveArtifactDisplay, resolveArtifactDisplayMode, resolveConfigPreferences, resolveDockConfig, resolveSanitizer, resolveTokens, stripWebMcpPrefix, themeToCssVariables, unregisterStreamAnimationPlugin, validateImageFile, validateTheme };
|
|
11085
|
+
export { ASK_USER_QUESTION_CLIENT_TOOL, ASK_USER_QUESTION_PARAMETERS_SCHEMA, ASK_USER_QUESTION_TOOL_NAME, type AgentConfig, type AgentExecutionState, type AgentLoopConfig, type AgentMessageMetadata, type AgentRequestOptions, type AgentToolsConfig, type AgentWidgetActionContext, type AgentWidgetActionEventPayload, type AgentWidgetActionHandler, type AgentWidgetActionHandlerResult, type AgentWidgetActionParser, type AgentWidgetAgentRequestPayload, type AgentWidgetApproval, type AgentWidgetApprovalConfig, type AgentWidgetApprovalDecisionOptions, type AgentWidgetArtifactsFeature, type AgentWidgetArtifactsLayoutConfig, type AgentWidgetAskUserQuestionFeature, type AgentWidgetAskUserQuestionStyles, type AgentWidgetAttachmentsConfig, type AgentWidgetAvatarConfig, AgentWidgetClient, type AgentWidgetComponentRenderer, type AgentWidgetComposerConfig, type AgentWidgetConfig, type AgentWidgetConfigPatch, type AgentWidgetContextMentionChipRenderContext, type AgentWidgetContextMentionCommandContext, type AgentWidgetContextMentionComposerCapability, type AgentWidgetContextMentionConfig, type AgentWidgetContextMentionItem, type AgentWidgetContextMentionItemRenderContext, type AgentWidgetContextMentionMenuRenderContext, type AgentWidgetContextMentionPayload, type AgentWidgetContextMentionRef, type AgentWidgetContextMentionResolveContext, type AgentWidgetContextMentionSearchContext, type AgentWidgetContextMentionSource, type AgentWidgetContextMentionTokenRenderContext, type AgentWidgetContextProvider, type AgentWidgetContextProviderContext, type AgentWidgetController, type AgentWidgetControllerEventMap, type AgentWidgetCustomFetch, type AgentWidgetDockConfig, type AgentWidgetEvent, type AgentWidgetFeatureFlags, type AgentWidgetFollowUpSuggestionsConfig, type AgentWidgetHeaderLayoutConfig, type AgentWidgetHeadersFunction, type AgentWidgetInitHandle, type AgentWidgetInitOptions, type AgentWidgetLauncherConfig, type AgentWidgetLauncherTeaserConfig, type AgentWidgetLayoutConfig, type AgentWidgetLoadingIndicatorConfig, type AgentWidgetMarkdownConfig, type AgentWidgetMarkdownOptions, type AgentWidgetMarkdownRendererOverrides, type AgentWidgetMentionLlmEntry, type AgentWidgetMentionTriggerChannel, type AgentWidgetMentionTriggerPosition, type AgentWidgetMessage, type AgentWidgetMessageActionsConfig, type AgentWidgetMessageFeedback, type AgentWidgetMessageLayoutConfig, type AgentWidgetMessageRoleLayout, type AgentWidgetParsedAction, type AgentWidgetPlugin, type AgentWidgetPluginStorage, type AgentWidgetReadAloudEvent, type AgentWidgetRenderSuggestionContext, type AgentWidgetRenderWelcomeContext, type AgentWidgetRequestPayload, type AgentWidgetResolvedSuggestion, type AgentWidgetSSEEventParser, type AgentWidgetSSEEventResult, type AgentWidgetScrollBehaviorFeature, type AgentWidgetScrollMode, type AgentWidgetScrollRestorePosition, type AgentWidgetScrollToBottomFeature, AgentWidgetSession, type AgentWidgetSessionStatus, type AgentWidgetStarterSuggestionsConfig, type AgentWidgetStorageAdapter, type AgentWidgetStoredState, type AgentWidgetStreamAnimationBuffer, type AgentWidgetStreamAnimationBuiltinType, type AgentWidgetStreamAnimationFeature, type AgentWidgetStreamAnimationPlaceholder, type AgentWidgetStreamAnimationType, type AgentWidgetStreamParser, type AgentWidgetStreamParserResult, type AgentWidgetSuggestion, type AgentWidgetSuggestionBehavior, type AgentWidgetSuggestionChipsConfig, type AgentWidgetSuggestionSelectContext, type AgentWidgetSuggestionSource, type AgentWidgetSuggestionSurface, type AgentWidgetSuggestionSurfaceConfig, type AgentWidgetSuggestionVariant, type AgentWidgetSuggestionsConfig, type AgentWidgetTimestampConfig, type AgentWidgetTransformSuggestionsContext, type AgentWidgetVoiceStatusEvent, type AgentWidgetWebMcpConfig, type AgentWidgetWelcomeConfig, type AgentWidgetWelcomeDismiss, type AgentWidgetWelcomeIcon, type AgentWidgetWelcomeVariant, type ArtifactConfigPayload, type ArtifactPaneTokens, type ArtifactTabTokens, type ArtifactToolbarTokens, type AskUserQuestionOption, type AskUserQuestionPayload, type AskUserQuestionPrompt, AttachmentManager, type AttachmentManagerConfig, type BorderScale, BrowserSpeechEngine, type BrowserSpeechEngineOptions, type CSATFeedbackOptions, type ClientChatRequest, type ClientFeedbackRequest, type ClientFeedbackType, type ClientInitResponse, type ClientSession, type ClientToolDefinition, type CodeFormat, type CodeGeneratorHooks, type CodeGeneratorOptions, type ColorPalette, type ColorShade, type ComboButtonHandle, type ComponentContext, type ComponentDirective, type ComponentRegistrationOptions, type ComponentRenderer, type ComponentTokens, type ComposerBuildContext, type ComposerElements, type ContentPart, type CreateComboButtonOptions, type CreateDropdownOptions, type CreateIconButtonOptions, type CreateLabelButtonOptions, type CreateStandardBubbleOptions, type CreateThemeOptions, type CreateToggleGroupOptions, DEFAULT_COMPONENTS, DEFAULT_FLOATING_LAUNCHER_MAX_WIDTH, DEFAULT_FLOATING_LAUNCHER_WIDTH, DEFAULT_PALETTE, DEFAULT_SEMANTIC, DEFAULT_WIDGET_CONFIG, type DeepPartial, type DemoCarouselHandle, type DemoCarouselItem, type DemoCarouselOptions, type DomContextMode, type DomContextOptions, type DropdownMenuHandle, type DropdownMenuItem, type EnrichedPageElement, type EventStreamBadgeColor, type EventStreamConfig, type EventStreamPayloadRenderContext, type EventStreamRowRenderContext, type EventStreamToolbarRenderContext, type EventStreamViewRenderContext, type FallbackSpeechEngineOptions, type FormatEnrichedContextOptions, type HeaderBuildContext, type HeaderElements, type HeaderLayoutContext, type HeaderLayoutRenderer, type HeaderRenderContext, type IconButtonTokens, type IconName, type IdleIndicatorRenderContext, type ImageContentPart, type InjectAssistantMessageOptions, type InjectComponentDirectiveOptions, type InjectMessageOptions, type InjectSystemMessageOptions, type InjectUserMessageOptions, type LabelButtonTokens, type LoadingIndicatorRenderContext, type LoadingIndicatorRenderer, type MarkdownParsersModule, type MarkdownProcessorOptions, type MessageActionCallbacks, type MessageContent, type MessageRenderContext, type MessageTransform, type NPSFeedbackOptions, PRESETS, PRESET_FULLSCREEN, PRESET_MINIMAL, PRESET_SHOP, type ParseOptionsConfig, type ParseRule, type PcmStreamPlayer, type PendingAttachment, type PersonaArtifactActionContext, type PersonaArtifactCustomAction, type PersonaArtifactDisplayDescriptor, type PersonaArtifactDisplayMatch, type PersonaArtifactDisplayMode, type PersonaArtifactDisplayModeInput, type PersonaArtifactDisplayResolution, type PersonaArtifactDisplayRules, type PersonaArtifactFilesDisplayRules, type PersonaArtifactKind, type PersonaArtifactManualUpsert, type PersonaArtifactPresentation, type PersonaArtifactRecord, type PersonaArtifactStatusLabelContext, type PersonaTheme, type PersonaThemePlugin, type RadiusScale, ReadAloudController, type ReadAloudListener, type ReadAloudState, type ResolvedTarget, type ResolvedWelcomeConfig, type RovingTablistController, type RovingTablistOptions, type RuleScoringContext, type RuntypeClientChatRequest, type RuntypeClientChatStreamEvent, type RuntypeClientFeedbackRequest, type RuntypeClientFeedbackResponse, type RuntypeClientFeedbackType, type RuntypeClientInitRequest, type RuntypeClientInitResponse, type RuntypeClientResumeRequest, type RuntypeClientResumeStreamEvent, type RuntypeExecutionStreamEvent, type RuntypeFlowSSEEvent, type RuntypeStepCompleteEvent, type RuntypeStopReasonKind, type RuntypeStreamEventOf, type RuntypeTurnCompleteEvent, type SSEEventCallback, type SSEEventRecord, SUGGEST_REPLIES_CLIENT_TOOL, SUGGEST_REPLIES_PARAMETERS_SCHEMA, SUGGEST_REPLIES_TOOL_NAME, type SanitizeFunction, type SemanticColors, type SemanticSpacing, type SemanticTypography, type ShadowScale, type SlashCommandDefinition, type SlotRenderContext, type SlotRenderer, type SpacingScale, type SpeechCallbacks, type SpeechEngine, type SpeechRequest, type StreamAnimationContext, type StreamAnimationPlugin, THEME_ZONES, type TargetResolver, type TextContentPart, type TextStyleTokens, type ThemeValidationError, type ThemeValidationResult, type ThemeZone, type ToggleGroupHandle, type ToggleGroupItem, type ToggleGroupTokens, type TokenReference, type TypographyScale, VERSION, type VoiceConfig, type VoiceMetrics, type VoicePlaybackEngine, type VoiceProvider, type VoiceResult, type VoiceStatus, WEBMCP_TOOL_PREFIX, WebMcpBridge, type WebMcpConfirmHandler, type WebMcpConfirmInfo, type WebMcpToolResult, type WidgetArtifactLayoutPreference, type WidgetHostLayout, type WidgetHostLayoutMode, type WidgetLayoutSlot, type WidgetPreferenceCapabilities, type WidgetPreferenceParseIssue, type WidgetPreferenceParseIssueCode, type WidgetPreferenceParseResult, type WidgetPreferenceSlice, type WidgetPreset, accessibilityPlugin, animationsPlugin, applyFeaturePreferences, applyThemeVariables, attachHeaderToContainer, brandPlugin, buildComposer, buildDefaultHeader, buildHeader, buildHeaderWithLayout, buildMinimalHeader, builtInClientToolsForDispatch, canonicalArtifactDisplayMode, collectEnrichedPageContext, componentRegistry, createActionManager, createAgentExperience, createAskUserQuestionBubble, createBestAvailableVoiceProvider, createBubbleWithLayout, createCSATFeedback, createComboButton, createComponentMiddleware, createComponentStreamParser, createDefaultSanitizer, createDemoCarousel, createDirectivePostprocessor, createDropdownMenu, createFlexibleJsonStreamParser, createIconButton, createImagePart, createJsonStreamParser, createLabelButton, createLocalStorageAdapter, createMarkdownProcessor, createMarkdownProcessorFromConfig, createMessageActions, createNPSFeedback, createPlainTextParser, createPlugin, createRegexJsonParser, createRovingTablist, createSlashCommandsSource, createStandardBubble, createStaticMentionSource, createTextPart, createTheme, createThemeObserver, createToggleGroup, createTypingIndicator, createVoiceProvider, createWidgetHostLayout, createXmlParser, initAgentWidget as default, defaultActionHandlers, defaultJsonActionParser, defaultMentionFilter, defaultParseRules, detectColorScheme, directivePostprocessor, ensureAskUserQuestionSheet, escapeHtml, extractComponentDirectiveFromMessage, fileToImagePart, formatEnrichedContext, generateAssistantMessageId, generateCodeSnippet, generateMessageId, generateStableSelector, generateUserMessageId, getActiveTheme, getColorScheme, getDisplayText, getHeaderLayout, getImageParts, getPreset, hasComponentDirective, hasImages, headerLayouts, highContrastPlugin, initAgentWidget, isAskUserQuestionMessage, isComponentDirectiveType, isDockedMountMode, isSuggestRepliesMessage, isVoiceSupported, isWebMcpToolName, isWelcomeVisible, latestAgentSuggestions, listRegisteredStreamAnimations, loadMarkdownParsers, markdownPostprocessor, mergeWithDefaults, normalizeContent, normalizeMediaType, onMarkdownParsersReady, parseAskUserQuestionPayload, parseSuggestRepliesPayload, parseWidgetPreferenceSlice, pickBestVoice, pluginRegistry, reducedMotionPlugin, registerStreamAnimationPlugin, removeAskUserQuestionSheet, renderComponentDirective, renderLoadingIndicatorWithFallback, renderLucideIcon, resolveArtifactDisplay, resolveArtifactDisplayMode, resolveConfigPreferences, resolveDockConfig, resolveSanitizer, resolveTokens, resolveWelcomeConfig, stripWebMcpPrefix, themeToCssVariables, unregisterStreamAnimationPlugin, validateImageFile, validateTheme };
|