/**
 * PivotViewer - 引用类型 Viewer
 * 在 canvas 单元格中渲染引用属性值，支持关联图标、悬停下划线和点击交互。
 *
 * 根据 pivotFieldViewer 委托给子 viewer 渲染：
 * - 'person' → PersonViewer（人员头像 + 名称）
 * - 'image' → ImageViewer（交付物缩略图）
 * - 'wf-state' → WfStateViewer（工作流状态图标 + 名称）
 * - 其他 / undefined → 默认文本渲染（当前逻辑）
 */
import type { CellViewer, ViewerRenderContext, PivotViewerData } from './types';
declare class PivotViewer implements CellViewer<PivotViewerData> {
    readonly type = "pivot";
    private imageManager;
    constructor();
    /**
     * 解析 value，返回有效的显示文本或 null
     */
    private parseValue;
    /**
     * 判断是否应该委托给子 viewer 渲染
     */
    private shouldDelegate;
    /**
     * 绘制单元格内容
     */
    draw(context: ViewerRenderContext, data: PivotViewerData): void;
    /**
     * 委托给子 viewer 渲染
     * 构造子 viewer 期望的 bounds（减去关联图标区域），然后调用子 viewer.draw()
     */
    private drawDelegated;
    /**
     * 默认文本模式渲染（原有逻辑）
     */
    private drawTextMode;
    /**
     * 处理点击事件
     */
    onClick(context: ViewerRenderContext, data: PivotViewerData, localX: number, localY: number): boolean;
    /**
     * 委托模式下的点击处理
     */
    private onClickDelegated;
    /**
     * 处理双击事件
     * 对于 image 类型的 pivot 字段，双击图片打开文件详情页（与普通 file 列双击行为一致）。
     * 实现方式：委托给 ImageViewer.onClick 检测点击位置，但用桥接回调将 onClickImage 转为 onFileGoToDetail。
     */
    onDblClick(context: ViewerRenderContext, data: PivotViewerData, localX: number, localY: number): boolean;
    /**
     * 构造子 viewer 的 data（公共逻辑提取）
     */
    private buildSubViewerData;
    /**
     * 构造子 viewer 的 context（公共逻辑提取）
     */
    private buildSubViewerContext;
    /**
     * 获取交互光标
     */
    getInteractiveCursor(context: ViewerRenderContext, data: PivotViewerData, localX: number, localY: number): string | null;
    /**
     * 委托模式下的光标处理
     */
    private getInteractiveCursorDelegated;
    /**
     * 绘制占位符文本
     */
    private drawPlaceholder;
    /**
     * 绘制关联图标（使用 icon_attachment.svg）
     */
    private drawLinkIcon;
    /**
     * 截断文字并添加省略号
     */
    private truncateText;
    /**
     * 估算文字宽度（用于交互区域判断，不依赖 ctx）
     */
    private estimateTextWidth;
}
export default PivotViewer;
