import type { SeparatorType } from '@wanghe1995/docx-editor-core';
/**
 * 编辑器样式状态接口
 * 与编辑器核心的 IRangeStyle 保持一致
 */
export interface IEditorStyleState {
    type: string | null;
    undo: boolean;
    redo: boolean;
    painter: boolean;
    font: string;
    size: number;
    characterScale: number;
    bold: boolean;
    italic: boolean;
    underline: boolean;
    strikeout: boolean;
    color: string | null;
    highlight: string | null;
    rowFlex: string | null;
    rowMargin: number;
    lineHeight: number;
    paragraphFirstLineIndent: number;
    listType: string | null;
    listStyle: string | null;
    level: string | null;
    dashArray: number[];
    separatorType: SeparatorType | null;
    separatorLineWidth: number | null;
    groupIds: string[] | null;
    textDecoration: any | null;
    extension: unknown | null;
    hasSelection: boolean;
    inTable: boolean;
    inCanvas: boolean;
}
/**
 * 创建编辑器状态存储
 */
declare function createEditorStateStore(): {
    state: {
        readonly type: string | null;
        readonly undo: boolean;
        readonly redo: boolean;
        readonly painter: boolean;
        readonly font: string;
        readonly size: number;
        readonly characterScale: number;
        readonly bold: boolean;
        readonly italic: boolean;
        readonly underline: boolean;
        readonly strikeout: boolean;
        readonly color: string | null;
        readonly highlight: string | null;
        readonly rowFlex: string | null;
        readonly rowMargin: number;
        readonly lineHeight: number;
        readonly paragraphFirstLineIndent: number;
        readonly listType: string | null;
        readonly listStyle: string | null;
        readonly level: string | null;
        readonly dashArray: readonly number[];
        readonly separatorType: SeparatorType | null;
        readonly separatorLineWidth: number | null;
        readonly groupIds: readonly string[] | null;
        readonly textDecoration: any;
        readonly extension: Readonly<unknown>;
        readonly hasSelection: boolean;
        readonly inTable: boolean;
        readonly inCanvas: boolean;
    };
    updateStyle: (newState: Partial<IEditorStyleState>) => void;
    reset: () => void;
    syncFromEditor: (rangeStyle: any) => void;
};
export declare const editorStateStore: {
    state: {
        readonly type: string | null;
        readonly undo: boolean;
        readonly redo: boolean;
        readonly painter: boolean;
        readonly font: string;
        readonly size: number;
        readonly characterScale: number;
        readonly bold: boolean;
        readonly italic: boolean;
        readonly underline: boolean;
        readonly strikeout: boolean;
        readonly color: string | null;
        readonly highlight: string | null;
        readonly rowFlex: string | null;
        readonly rowMargin: number;
        readonly lineHeight: number;
        readonly paragraphFirstLineIndent: number;
        readonly listType: string | null;
        readonly listStyle: string | null;
        readonly level: string | null;
        readonly dashArray: readonly number[];
        readonly separatorType: SeparatorType | null;
        readonly separatorLineWidth: number | null;
        readonly groupIds: readonly string[] | null;
        readonly textDecoration: any | null;
        readonly extension: Readonly<unknown>;
        readonly hasSelection: boolean;
        readonly inTable: boolean;
        readonly inCanvas: boolean;
    };
    updateStyle: (newState: Partial<IEditorStyleState>) => void;
    reset: () => void;
    syncFromEditor: (rangeStyle: any) => void;
};
export type EditorStateStore = ReturnType<typeof createEditorStateStore>;
export {};
