## API Report File for "@eigenpal/docx-editor-agents"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { AgentMessage } from '../agent-types';
import { AgentMessage as AgentMessage_2 } from '../../agent-types';
import { AgentToolCall } from '../agent-types';
import { AgentToolCall as AgentToolCall_2 } from '../../agent-types';
import { AgentToolDefinition } from './tools';
import { AgentToolResult } from './tools';
import { AgentToolResult as AgentToolResult_2 } from '../../tools';
import { ComponentOptionsMixin } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { DefineComponent } from 'vue';
import { getToolDisplayName } from './tools';
import { getToolSchemas } from '../../tools';
import { MaybeRef } from 'vue';
import { PublicProps } from 'vue';
import { Ref } from 'vue';

// @public (undocumented)
export const AgentChatLog: __VLS_WithSlots_2<typeof __VLS_component_2, __VLS_Slots_2>;

// @public (undocumented)
export interface AgentChatLogProps {
    // (undocumented)
    autoScroll?: boolean;
    // (undocumented)
    className?: string;
    // (undocumented)
    earlierLabel?: (count: number) => string;
    // (undocumented)
    error?: string | null;
    // (undocumented)
    humanizeToolName?: (name: string) => string;
    // (undocumented)
    loading?: boolean;
    // (undocumented)
    maxVisibleCalls?: number;
    // (undocumented)
    messages: AgentMessage_2[];
    // (undocumented)
    summaryLabel?: (count: number) => string;
    // (undocumented)
    thinkingLabel?: string;
    // (undocumented)
    workingLabel?: (count: number) => string;
}

// @public (undocumented)
export const AgentComposer: __VLS_WithSlots_3<typeof __VLS_component_3, __VLS_Slots_3>;

// @public (undocumented)
export interface AgentComposerProps {
    // (undocumented)
    className?: string;
    // (undocumented)
    disabled?: boolean;
    // (undocumented)
    modelValue: string;
    // (undocumented)
    placeholder?: string;
    // (undocumented)
    sendLabel?: string;
}

export { AgentMessage }

// @public (undocumented)
export const AgentPanel: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;

// @public (undocumented)
export interface AgentPanelProps {
    // (undocumented)
    className?: string;
    closable?: boolean;
    // (undocumented)
    closed?: boolean;
    // (undocumented)
    closeLabel?: string;
    // (undocumented)
    defaultWidth?: number;
    // (undocumented)
    maxWidth?: number;
    // (undocumented)
    minWidth?: number;
    // (undocumented)
    resizeHandleLabel?: string;
    // (undocumented)
    title?: string;
    // (undocumented)
    width?: number;
}

// @public (undocumented)
export const AgentSuggestionChip: DefineComponent<AgentSuggestionChipProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
click: () => any;
}, string, PublicProps, Readonly<AgentSuggestionChipProps> & Readonly<{
onClick?: (() => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

// @public (undocumented)
export interface AgentSuggestionChipProps {
    // (undocumented)
    disabled?: boolean;
    // (undocumented)
    label: string;
}

// @public (undocumented)
export const AgentTimeline: DefineComponent<AgentTimelineProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<AgentTimelineProps> & Readonly<{}>, {
streaming: boolean;
maxVisibleCalls: number;
humanizeName: (name: string) => string;
workingLabel: (count: number) => string;
summaryLabel: (count: number) => string;
earlierLabel: (count: number) => string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

// @public (undocumented)
export interface AgentTimelineProps {
    // (undocumented)
    earlierLabel?: (count: number) => string;
    // (undocumented)
    humanizeName?: (name: string) => string;
    // (undocumented)
    maxVisibleCalls?: number;
    // (undocumented)
    streaming?: boolean;
    // (undocumented)
    summaryLabel?: (count: number) => string;
    // (undocumented)
    toolCalls: AgentToolCall_2[];
    // (undocumented)
    workingLabel?: (count: number) => string;
}

export { AgentToolCall }

export { AgentToolDefinition }

export { AgentToolResult }

// @public (undocumented)
export const AIContextMenu: DefineComponent<AIContextMenuProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
close: () => any;
action: (action: string, customPrompt?: string | undefined) => any;
}, string, PublicProps, Readonly<AIContextMenuProps> & Readonly<{
onClose?: (() => any) | undefined;
onAction?: ((action: string, customPrompt?: string | undefined) => any) | undefined;
}>, {
showCustomPrompt: boolean;
labels: AIContextMenuLabels;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

// @public (undocumented)
export interface AIContextMenuProps {
    // (undocumented)
    isOpen: boolean;
    // (undocumented)
    labels?: AIContextMenuLabels;
    // (undocumented)
    position: {
        x: number;
        y: number;
    };
    // (undocumented)
    selectedText: string;
    // (undocumented)
    showCustomPrompt?: boolean;
}

// @public (undocumented)
export const AIResponsePreview: DefineComponent<AIResponsePreviewProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
accept: (text: string) => any;
reject: () => any;
retry: () => any;
}, string, PublicProps, Readonly<AIResponsePreviewProps> & Readonly<{
onAccept?: ((text: string) => any) | undefined;
onReject?: (() => any) | undefined;
onRetry?: (() => any) | undefined;
}>, {
error: string;
labels: AIResponsePreviewLabels;
allowEdit: boolean;
showDiff: boolean;
showRetry: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

// @public (undocumented)
export interface AIResponsePreviewProps {
    // (undocumented)
    action: string;
    // (undocumented)
    allowEdit?: boolean;
    // (undocumented)
    error?: string;
    // (undocumented)
    isLoading: boolean;
    // (undocumented)
    isVisible: boolean;
    // (undocumented)
    labels?: AIResponsePreviewLabels;
    // (undocumented)
    originalText: string;
    // (undocumented)
    responseText: string;
    // (undocumented)
    showDiff?: boolean;
    // (undocumented)
    showRetry?: boolean;
}

// @public
export interface EditorRefLike {
    // (undocumented)
    addComment(options: {
        paraId: string;
        text: string;
        author: string;
        search?: string;
    }): number | null;
    applyFormatting(options: {
        paraId: string;
        search?: string;
        marks: CharacterFormatting;
    }): boolean;
    // (undocumented)
    findInDocument(query: string, options?: {
        caseSensitive?: boolean;
        limit?: number;
    }): FoundMatch[];
    // (undocumented)
    getComments(): Array<{
        id: number;
        author: string;
        date?: string;
        parentId?: number;
        content: unknown[];
        done?: boolean;
    }>;
    getCurrentPage(): number;
    // (undocumented)
    getDocument(): unknown | null;
    // (undocumented)
    getEditorRef(): {
        getDocument(): unknown | null;
    } | null;
    getPageContent(pageNumber: number): PageContent | null;
    // (undocumented)
    getSelectionInfo(): SelectionInfo | null;
    getTotalPages(): number;
    insertBreak(options: {
        paraId: string;
        type: 'page' | 'sectionNextPage' | 'sectionContinuous';
    }): boolean;
    // (undocumented)
    onContentChange(listener: (doc: unknown) => void): () => void;
    // (undocumented)
    onSelectionChange(listener: (selection: unknown) => void): () => void;
    // (undocumented)
    proposeChange(options: {
        paraId: string;
        search: string;
        replaceWith: string;
        author: string;
    }): boolean;
    // (undocumented)
    replyToComment(commentId: number, text: string, author: string): number | null;
    // (undocumented)
    resolveComment(commentId: number): void;
    // (undocumented)
    scrollToParaId(paraId: string): boolean;
    setParagraphStyle(options: {
        paraId: string;
        styleId: string;
    }): boolean;
}

export { getToolDisplayName }

// @public (undocumented)
export function useAgentBridge(options: UseAgentBridgeOptions): UseAgentBridgeReturn;

// @public (undocumented)
export interface UseAgentBridgeOptions {
    author?: MaybeRef<string>;
    editorRef: Ref<EditorRefLike | null | undefined>;
}

// @public (undocumented)
export interface UseAgentBridgeReturn {
    // (undocumented)
    executeToolCall: (toolName: string, input: Record<string, unknown>) => AgentToolResult_2;
    // (undocumented)
    toolSchemas: ReturnType<typeof getToolSchemas>;
}

```
