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

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

```ts

import { App } from 'vue';
import { Comment as Comment_2 } from '@eigenpal/docx-editor-core/types/content';
import { ContentControlFilter } from '@eigenpal/docx-editor-core/agent';
import { ContentControlValue } from '@eigenpal/docx-editor-core/agent';
import { createDocumentWithText } from '@eigenpal/docx-editor-core';
import { createEmptyDocument } from '@eigenpal/docx-editor-core';
import { CreateEmptyDocumentOptions } from '@eigenpal/docx-editor-core';
import { en as defaultLocale } from '@eigenpal/docx-editor-i18n';
import { Document as Document_2 } from '@eigenpal/docx-editor-core/types/document';
import { default as DocxEditor } from './components/DocxEditor.vue';
import { DocxInput } from '@eigenpal/docx-editor-core/utils';
import { EditorHandle } from '@eigenpal/docx-editor-core';
import { EditorRefLike } from '@eigenpal/docx-editor-agents/bridge';
import { EditorView } from 'prosemirror-view';
import { FontDefinition } from '@eigenpal/docx-editor-core/utils';
import { FontOption } from '@eigenpal/docx-editor-core/utils/fontOptions';
import { MaybeRef } from 'vue';
import { Plugin as Plugin_2 } from 'prosemirror-state';
import { PMContentControl } from '@eigenpal/docx-editor-core/prosemirror';
import { SelectionState } from '@eigenpal/docx-editor-core/prosemirror';
import { StyleValue } from 'vue';
import { TFunction } from '@eigenpal/docx-editor-i18n';
import { Theme } from '@eigenpal/docx-editor-core/types/document';
import { Translations } from '@eigenpal/docx-editor-i18n';
import { VNodeChild } from 'vue';

export { createDocumentWithText }

export { createEmptyDocument }

export { CreateEmptyDocumentOptions }

export { defaultLocale }

export { DocxEditor }

// @public
export interface DocxEditorHandle extends EditorHandle {
    scrollToParaId: (paraId: string) => boolean;
    scrollToPosition: (pmPos: number) => void;
    setZoom: (zoom: number) => void;
}

// @public
export interface DocxEditorProps {
    author?: string;
    className?: string;
    colorMode?: 'light' | 'dark' | 'system';
    disableFindReplaceShortcuts?: boolean;
    document?: Document_2 | null;
    documentBuffer?: DocxInput | null;
    documentName?: string;
    documentNameEditable?: boolean;
    externalPlugins?: Plugin_2[];
    fontFamilies?: ReadonlyArray<string | FontOption>;
    fonts?: ReadonlyArray<FontDefinition>;
    i18n?: Translations;
    initialZoom?: number;
    mode?: EditorMode;
    onChange?: (document: Document_2) => void;
    onCommentAdd?: (comment: Comment_2) => void;
    onCommentDelete?: (comment: Comment_2) => void;
    onCommentReply?: (reply: Comment_2, parent: Comment_2) => void;
    onCommentResolve?: (comment: Comment_2) => void;
    onCommentsChange?: (comments: Comment_2[]) => void;
    onDocumentNameChange?: (name: string) => void;
    onEditorViewReady?: (view: EditorView) => void;
    onError?: (error: Error) => void;
    onModeChange?: (mode: EditorMode) => void;
    onPrint?: () => void;
    onSelectionChange?: (state: SelectionState | null) => void;
    readOnly?: boolean;
    renderLogo?: () => VNodeChild;
    renderTitleBarRight?: () => VNodeChild;
    showMenuBar?: boolean;
    showOutline?: boolean;
    showOutlineButton?: boolean;
    showRuler?: boolean;
    showToolbar?: boolean;
    showZoomControl?: boolean;
    style?: StyleValue;
    theme?: Theme | null;
    toolbarExtra?: () => VNodeChild;
    watermarkPresets?: readonly string[];
}

// @public
export type DocxEditorRef = EditorRefLike & {
    getAgent(): null;
    save(): Promise<ArrayBuffer | null>;
    setZoom(zoom: number): void;
    getZoom(): number;
    focus(): void;
    scrollToPage(pageNumber: number): void;
    scrollToPosition(pmPos: number): void;
    scrollToCommentId(commentId: number): boolean;
    scrollToChangeId(revisionId: number): boolean;
    highlightRange(from: number, to: number): void;
    openPrintPreview(): void;
    print(): void;
    loadDocument(doc: Document_2): void;
    loadDocumentBuffer(buffer: DocxInput): Promise<void>;
    destroy(): void;
    getContentControls(filter?: ContentControlFilter): PMContentControl[];
    scrollToContentControl(filter: ContentControlFilter): boolean;
    setContentControlContent(filter: ContentControlFilter, text: string, options?: {
        force?: boolean;
    }): boolean;
    removeContentControl(filter: ContentControlFilter, options?: {
        force?: boolean;
        keepContent?: boolean;
    }): boolean;
    setContentControlValue(filter: ContentControlFilter, value: ContentControlValue, options?: {
        force?: boolean;
    }): boolean;
};

// @public (undocumented)
export type EditorMode = 'editing' | 'suggesting' | 'viewing';

// @public
export const i18nPlugin: {
    install(app: App, i18n?: Translations): void;
};

// @public
export function provideLocale(i18n?: MaybeRef<Translations | undefined>): void;

// @public
export function renderAsync(input: DocxInput, container: HTMLElement, options?: RenderAsyncOptions): Promise<DocxEditorHandle>;

// @public
export type RenderAsyncOptions = Omit<DocxEditorProps, 'documentBuffer' | 'document'> & {
    onReady?: () => void;
    onError?: (error: Error) => void;
    onChange?: (document: Document_2) => void;
    onRename?: (name: string) => void;
    onMenuAction?: (action: string) => void;
    onModeChange?: (mode: EditorMode) => void;
};

// @public
export function useTranslation(): {
    t: TFunction;
};

// @public
export const VERSION = "0.0.2";

```
