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

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

```ts

import { EditorState } from 'prosemirror-state';
import { Plugin as Plugin_2 } from 'prosemirror-state';
import { PluginKey } from 'prosemirror-state';
import { Transaction } from 'prosemirror-state';

// @public
export function createDocumentStylesPlugin(styles: StyleDefinitions | StyleResolver | null | undefined): Plugin_2;

// @public
export function createSelectionTrackerPlugin(onSelectionChange?: SelectionChangeCallback): Plugin_2;

// @public
export function createSuggestionModePlugin(initialActive?: boolean, author?: string): Plugin_2;

// @public
export const documentStylesKey: PluginKey<StyleResolver | null>;

// @public
export function extractSelectionContext(state: EditorState): SelectionContext;

// @public
export function getDocumentStyleResolver(state: EditorState): StyleResolver | null;

// @public
export function getSelectionContext(state: EditorState): SelectionContext | null;

// @public
export function isSuggestionModeActive(state: EditorState): boolean;

// @public
export function makeRevisionInfo(state: EditorState): RevisionInfo | null;

// @public
export interface RevisionInfo {
    // (undocumented)
    author: string;
    // (undocumented)
    date: string | null;
    // (undocumented)
    revisionId: number;
}

// @public
export type SelectionChangeCallback = (context: SelectionContext) => void;

// @public
export interface SelectionContext {
    activeCommentIds: number[];
    endParagraphIndex: number;
    hasSelection: boolean;
    inDeletion: boolean;
    inInsertion: boolean;
    inList: boolean;
    isMultiParagraph: boolean;
    listLevel?: number;
    listType?: 'bullet' | 'numbered';
    paragraphFormatting: ParagraphFormatting;
    startParagraphIndex: number;
    textFormatting: TextFormatting;
}

// @public
export const selectionTrackerKey: PluginKey<SelectionContext>;

// @public
export function setSuggestionMode(active: boolean, state: EditorState, dispatch?: (tr: Transaction) => void, author?: string): boolean;

// @public (undocumented)
export const suggestionModeKey: PluginKey<SuggestionModeState>;

// @public
export function toggleSuggestionMode(state: EditorState, dispatch?: (tr: Transaction) => void): boolean;

```
