/**
 * ItfsPathViewer - ITFS 云磁盘路径渲染 viewer
 * 用于展示 ITFS 云磁盘路径信息（路径文本 + 云磁盘图标 + 同步状态）
 * 参考 AssetMatrix/src/views/components/ProgressPanel/ProgressPropsViewer/itfsPathViewer.ts
 */
import type { CellViewer, ViewerRenderContext, ItfsPathViewerData } from './types';
/**
 * ItfsPathViewer 在单元格中渲染云磁盘路径
 * 展示形如 [路径文本] [📁] 的内容，路径文本为蓝色可点击
 */
declare class ItfsPathViewer implements CellViewer<ItfsPathViewerData> {
    readonly type = "itfs-path";
    /** 抑制默认编辑笔图标（itfs-path 列由 viewer 自行管理 hover 图标） */
    readonly hideEditIcon = true;
    /** 图片管理器 */
    private imageManager;
    private _sm;
    /** 空值占位符 */
    private readonly emptyValue;
    /** 路径文本默认颜色（业务色，保持不变） */
    private readonly defaultPathColor;
    /** 同步完成图标颜色（业务色，保持不变） */
    private readonly syncOkColor;
    /** 图标默认颜色 — 从 Token 获取 */
    private get defaultIconColor();
    /** 占位符颜色 — 从 Token 获取 */
    private get placeholderColor();
    constructor();
    /**
     * 绘制 ITFS 路径内容
     */
    draw(context: ViewerRenderContext, data: ItfsPathViewerData): void;
    /**
     * 处理点击事件
     * 点击图标区域触发 onClickIcon（弹出 ITFS 操作列表菜单）
     * 点击路径文本区域无反应（与 DOM 版 ClickMiddle = false 对齐）
     * 无值时图标区域也可点击（触发 onClickIcon）
     *
     * 注意：整个单元格区域都返回 true 以拦截点击事件，
     * 防止穿透到 row.click() 触发 selectCell 或 onCellTextClick 等逻辑。
     */
    onClick(context: ViewerRenderContext, data: ItfsPathViewerData, localX: number, localY: number): boolean;
    /**
     * 处理双击事件
     * itfs_path 列不进入编辑模式，直接拦截
     */
    onDblClick(_context: ViewerRenderContext, _data: ItfsPathViewerData, _localX: number, _localY: number): boolean;
    /**
     * 获取交互区域光标
     * 只有图标区域显示 pointer（有值/无值都支持图标点击）
     * 路径文本区域不显示 pointer（点击无反应，与 DOM 版行为一致）
     */
    getInteractiveCursor(context: ViewerRenderContext, data: ItfsPathViewerData, localX: number, localY: number): string | null;
    /**
     * 绘制路径内容（路径文本 + 图标）
     */
    private drawPathContent;
    /**
     * 绘制空值占位文本
     * hover 时在右侧显示磁盘 icon（替代编辑笔）
     */
    private drawEmptyText;
    /**
     * 绘制云磁盘图标（使用 icon_netdisc.svg）
     */
    private drawNetdiscIcon;
    /**
     * 绘制同步完成图标（绿色对勾圆）
     */
    private drawSyncOkIcon;
    /**
     * 截断文本并添加省略号
     */
    private truncateText;
    /**
     * 创建虚拟锚点，模拟 DOM 元素的 getBoundingClientRect 接口
     * 供 ITFS 操作列表菜单定位使用
     *
     * 使用 context.clientX/clientY（鼠标视口坐标）来定位，
     * 因为 bounds.x/y 在 handleViewerClick 中传入的是 cell 逻辑坐标（不含滚动偏移），
     * 直接用 bounds 计算会导致定位偏差。
     */
    private createVirtualAnchor;
}
export default ItfsPathViewer;
