import { Doc } from '../../view/Doc';
import { CommandBase, PostCommandContext } from '../base/CommandBase';
import { CommandPayloadMap } from '../types';
/**
 * Backspace 按键命令
 *
 * 处理 Backspace 键的逻辑，删除光标前的内容
 */
export declare class Backspace extends CommandBase<'backspace'> {
    constructor(doc: Doc, payload?: CommandPayloadMap['backspace']);
    protected execute(): Promise<PostCommandContext>;
    /**
     * 处理光标折叠状态下的操作
     */
    private handleCollapse;
    /**
     * 处理选区操作
     */
    private handleSelection;
    /**
     * 删除光标处的节点
     * 根据不同的 run 类型和位置进行删除操作
     */
    private deleteAtCursor;
    /**
     * 处理占位符 run 的删除
     */
    private handlePlaceholderRun;
    /**
     * 处理组件 run 的删除
     */
    private handleWidgetRun;
    /** 处理悬浮 run 的删除 */
    private handleOverlayPageWidgetRun;
    /**
     * 处理位置 >= 0 的删除情况
     */
    private handlePositionDelete;
    /**
     * 处理位置 < 0 的情况（需要查找前一个节点）
     */
    private handlePositionNegative;
    /**
     * 在 wr 指定位置删除一个字符
     * 仅对 WrText 有效，WrImage 需要删除整个 wr
     * @param wr 要删除的文本块
     * @param position 删除位置
     */
    private deleteWrAtPosition;
    /**
     * 构建删除后为空时的返回结果
     * 处理前一个/后一个 wr 的情况
     * @param wrPrev 前一个 wr
     * @param wrNext 后一个 wr
     * @param modelWp 所属的 wp
     */
    private buildResultAfterEmpty;
}
