DocsAPI referenceHeadlessassistant-action-bar

assistant-action-bar headless API

The core connector and vanilla mount are always visible. Use the framework choice to inspect native composition, props, outputs, context and hooks for the selected adapter.

@grassroot/ui-headless-core/assistant-action-bar

Core connector and vanilla API

14 exports
View source packages/ui-headless/core/src/assistant-action-bar/index.ts
DeclarationView source
ActionBarAutohidets
type ActionBarAutohide = "always" | "not-last" | "never";
DeclarationView source
ActionBarFeedbackts
type ActionBarFeedback = "positive" | "negative";
DeclarationView source
assistantActionBarAnatomyts
export declare const assistantActionBarAnatomy: {
readonly scope: "assistant-action-bar";
readonly parts: readonly ["root", "copy", "reload", "edit", "speak", "stop-speaking", "feedback-positive", "feedback-negative", "export-markdown"];
};
Name
Kind
Type
Requirement
parts
property
readonly ["root", "copy", "reload", "edit", "speak", "stop-speaking", "feedback-positive", "feedback-negative", "export-markdown"]
required
scope
property
"assistant-action-bar"
required
Name
parts
Kind
property
Type
readonly ["root", "copy", "reload", "edit", "speak", "stop-speaking", "feedback-positive", "feedback-negative", "export-markdown"]
Requirement
required
Name
scope
Kind
property
Type
"assistant-action-bar"
Requirement
required
DeclarationView source
AssistantActionBarApits
interface AssistantActionBarApi {
rootProps(): PartProps;
copyProps(): PartProps;
reloadProps(): PartProps;
editProps(): PartProps;
speakProps(): PartProps;
stopSpeakingProps(): PartProps;
feedbackPositiveProps(): PartProps;
feedbackNegativeProps(): PartProps;
exportMarkdownProps(): PartProps;
getVersion(): number;
subscribe(listener: () => void): () => void;
destroy(): void;
}
Name
Kind
Type
Requirement
copyProps
method
() => PartProps
required
destroy
method
() => void
required
editProps
method
() => PartProps
required
exportMarkdownProps
method
() => PartProps
required
feedbackNegativeProps
method
() => PartProps
required
feedbackPositiveProps
method
() => PartProps
required
getVersion
method
() => number
required
reloadProps
method
() => PartProps
required
rootProps
method
() => PartProps
required
speakProps
method
() => PartProps
required
stopSpeakingProps
method
() => PartProps
required
subscribe
method
(listener: () => void) => () => void
required
Name
copyProps
Kind
method
Type
() => PartProps
Requirement
required
Name
destroy
Kind
method
Type
() => void
Requirement
required
Name
editProps
Kind
method
Type
() => PartProps
Requirement
required
Name
exportMarkdownProps
Kind
method
Type
() => PartProps
Requirement
required
Name
feedbackNegativeProps
Kind
method
Type
() => PartProps
Requirement
required
Name
feedbackPositiveProps
Kind
method
Type
() => PartProps
Requirement
required
Name
getVersion
Kind
method
Type
() => number
Requirement
required
Name
reloadProps
Kind
method
Type
() => PartProps
Requirement
required
Name
rootProps
Kind
method
Type
() => PartProps
Requirement
required
Name
speakProps
Kind
method
Type
() => PartProps
Requirement
required
Name
stopSpeakingProps
Kind
method
Type
() => PartProps
Requirement
required
Name
subscribe
Kind
method
Type
(listener: () => void) => () => void
Requirement
required
DeclarationView source
AssistantActionBarClientLikets
interface AssistantActionBarClientLike {
readonly thread?: {
readonly getState: () => Record<string, unknown>;
};
readonly message?: {
readonly getState: () => Record<string, unknown>;
};
readonly capabilities?: Record<string, boolean>;
}
Name
Kind
Type
Requirement
capabilities
property
Record<string, boolean>
optional
message
property
{ readonly getState: () => Record<string, unknown>; }
optional
thread
property
{ readonly getState: () => Record<string, unknown>; }
optional
Name
capabilities
Kind
property
Type
Record<string, boolean>
Requirement
optional
Name
message
Kind
property
Type
{ readonly getState: () => Record<string, unknown>; }
Requirement
optional
Name
thread
Kind
property
Type
{ readonly getState: () => Record<string, unknown>; }
Requirement
optional
DeclarationView source
AssistantActionBarConnectOptionsts
interface AssistantActionBarConnectOptions {
readonly messageId?: string;
readonly message?: ExportableMessage;
readonly copyText?: string;
readonly hideWhenRunning?: boolean;
readonly autohide?: ActionBarAutohide;
readonly autohideFloat?: boolean;
readonly isLast?: boolean;
readonly copiedDuration?: number;
readonly clipboard?: {
readonly writeText: (text: string) => void | Promise<void>;
};
readonly onFeedback?: (feedback: ActionBarFeedback) => void;
readonly onExport?: (markdown: string) => void;
readonly onReload?: () => void;
readonly onEdit?: () => void;
readonly onSpeak?: () => void;
readonly onStopSpeaking?: () => void;
}
Name
Kind
Type
Requirement
autohide
property
ActionBarAutohide
optional
autohideFloat
property
boolean
optional
clipboard
property
{ readonly writeText: (text: string) => void | Promise<void>; }
optional
copiedDuration
property
number
optional
copyText
property
string
optional
hideWhenRunning
property
boolean
optional
isLast
property
boolean
optional
message
property
ExportableMessage
optional
messageId
property
string
optional
onEdit
property
() => void
optional
onExport
property
(markdown: string) => void
optional
onFeedback
property
(feedback: ActionBarFeedback) => void
optional
onReload
property
() => void
optional
onSpeak
property
() => void
optional
Name
autohide
Kind
property
Type
ActionBarAutohide
Requirement
optional
Name
autohideFloat
Kind
property
Type
boolean
Requirement
optional
Name
clipboard
Kind
property
Type
{ readonly writeText: (text: string) => void | Promise<void>; }
Requirement
optional
Name
copiedDuration
Kind
property
Type
number
Requirement
optional
Name
copyText
Kind
property
Type
string
Requirement
optional
Name
hideWhenRunning
Kind
property
Type
boolean
Requirement
optional
Name
isLast
Kind
property
Type
boolean
Requirement
optional
Name
message
Kind
property
Type
ExportableMessage
Requirement
optional
Name
messageId
Kind
property
Type
string
Requirement
optional
Name
onEdit
Kind
property
Type
() => void
Requirement
optional
Name
onExport
Kind
property
Type
(markdown: string) => void
Requirement
optional
Name
onFeedback
Kind
property
Type
(feedback: ActionBarFeedback) => void
Requirement
optional
Name
onReload
Kind
property
Type
() => void
Requirement
optional
Name
onSpeak
Kind
property
Type
() => void
Requirement
optional
Name
onStopSpeaking
Kind
property
Type
() => void
Requirement
optional
DeclarationView source
AssistantActionBarMountts
interface AssistantActionBarMount {
readonly connector: AssistantActionBarApi;
readonly root: HTMLElement;
destroy(): void;
}
Name
Kind
Type
Requirement
connector
property
AssistantActionBarApi
required
destroy
method
() => void
required
root
property
HTMLElement
required
Name
connector
Kind
property
Type
AssistantActionBarApi
Requirement
required
Name
destroy
Kind
method
Type
() => void
Requirement
required
Name
root
Kind
property
Type
HTMLElement
Requirement
required
DeclarationView source
AssistantActionBarPartts
type AssistantActionBarPart = (typeof parts)[number];
DeclarationView source
connectAssistantActionBarts
declare function connectAssistantActionBar(client: AssistantActionBarClientLike, scope: PartScope, options?: AssistantActionBarConnectOptions): AssistantActionBarApi;
Name
Kind
Type
Requirement
client
parameter
AssistantActionBarClientLike
required
scope
parameter
PartScope
required
options
parameter
AssistantActionBarConnectOptions
optional
return
return value
AssistantActionBarApi
n/a
Name
client
Kind
parameter
Type
AssistantActionBarClientLike
Requirement
required
Name
scope
Kind
parameter
Type
PartScope
Requirement
required
Name
options
Kind
parameter
Type
AssistantActionBarConnectOptions
Requirement
optional
Name
return
Kind
return value
Type
AssistantActionBarApi
Requirement
n/a

ExportableMessage

interface
DeclarationView source
ExportableMessagets
interface ExportableMessage {
readonly [key: string]: unknown;
readonly role?: string;
readonly content?: readonly ExportableMessagePart[];
}
Name
Kind
Type
Requirement
content
property
readonly ExportableMessagePart[]
optional
role
property
string
optional
Name
content
Kind
property
Type
readonly ExportableMessagePart[]
Requirement
optional
Name
role
Kind
property
Type
string
Requirement
optional
DeclarationView source
ExportableMessagePartts
interface ExportableMessagePart {
readonly id?: string;
readonly type?: string;
readonly sourceType?: string;
readonly toolCallId?: string;
readonly text?: string;
readonly title?: string;
readonly url?: string;
readonly filename?: string;
readonly image?: string;
readonly data?: unknown;
readonly name?: string;
readonly toolName?: string;
readonly args?: unknown;
readonly result?: unknown;
readonly isError?: boolean;
readonly argsText?: string;
}
Name
Kind
Type
Requirement
args
property
unknown
optional
argsText
property
string
optional
data
property
unknown
optional
filename
property
string
optional
id
property
string
optional
image
property
string
optional
isError
property
boolean
optional
name
property
string
optional
result
property
unknown
optional
sourceType
property
string
optional
text
property
string
optional
title
property
string
optional
toolCallId
property
string
optional
toolName
property
string
optional
Name
args
Kind
property
Type
unknown
Requirement
optional
Name
argsText
Kind
property
Type
string
Requirement
optional
Name
data
Kind
property
Type
unknown
Requirement
optional
Name
filename
Kind
property
Type
string
Requirement
optional
Name
id
Kind
property
Type
string
Requirement
optional
Name
image
Kind
property
Type
string
Requirement
optional
Name
isError
Kind
property
Type
boolean
Requirement
optional
Name
name
Kind
property
Type
string
Requirement
optional
Name
result
Kind
property
Type
unknown
Requirement
optional
Name
sourceType
Kind
property
Type
string
Requirement
optional
Name
text
Kind
property
Type
string
Requirement
optional
Name
title
Kind
property
Type
string
Requirement
optional
Name
toolCallId
Kind
property
Type
string
Requirement
optional
Name
toolName
Kind
property
Type
string
Requirement
optional
Name
type
Kind
property
Type
string
Requirement
optional
Name
url
Kind
property
Type
string
Requirement
optional
DeclarationView source
exportMessageMarkdownts
declare function exportMessageMarkdown(message: ExportableMessage): string;
Name
Kind
Type
Requirement
message
parameter
ExportableMessage
required
return
return value
string
n/a
Name
message
Kind
parameter
Type
ExportableMessage
Requirement
required
Name
return
Kind
return value
Type
string
Requirement
n/a
DeclarationView source
mountAssistantActionBarts
declare function mountAssistantActionBar(container: HTMLElement, client: AssistantActionBarClientLike, options?: MountAssistantActionBarOptions): AssistantActionBarMount;
Name
Kind
Type
Requirement
container
parameter
HTMLElement
required
client
parameter
AssistantActionBarClientLike
required
options
parameter
MountAssistantActionBarOptions
optional
return
return value
AssistantActionBarMount
n/a
Name
container
Kind
parameter
Type
HTMLElement
Requirement
required
Name
client
Kind
parameter
Type
AssistantActionBarClientLike
Requirement
required
Name
options
Kind
parameter
Type
MountAssistantActionBarOptions
Requirement
optional
Name
return
Kind
return value
Type
AssistantActionBarMount
Requirement
n/a
DeclarationView source
MountAssistantActionBarOptionsts
interface MountAssistantActionBarOptions extends AssistantActionBarConnectOptions {}

Framework adapters

Each panel keeps its adapter's public vocabulary. React compound exports, Vue composables, standalone Angular declarations, Svelte components, and Solid hooks stay native to their framework.

This entry is core-only. No framework adapter package ships for assistant-action-bar yet — mount it through the vanilla API above.