/**
 * GroupNameViewer - Group header name rendering viewer
 * Renders the group name in group header rows with proper formatting.
 *
 * Supports 5 render modes:
 * - text: Plain text (default, for workflow_state, workflow_id, taskNode, etc.)
 * - person: Avatar + person name with click-to-jump support
 * - tag: Colored background tags (for module, dropdown, treeDropdown)
 * - boolean: Check/cross icon + text (for boolean fields)
 * - priority: P{n} colored tag (for priority fields)
 *
 * The business layer (AssetMatrix) builds GroupNameViewerData from formatSpecialGroupHeader logic,
 * and this viewer only handles rendering. This keeps arthub-table free of business dependencies.
 */
import type { CellViewer, ViewerRenderContext, GroupNameViewerData } from './types';
declare class GroupNameViewer implements CellViewer<GroupNameViewerData> {
    readonly type = "group-name";
    private imageManager;
    private _sm;
    /** Index of the person currently hovered by mouse (-1 = none) */
    private _hoverPersonIndex;
    /** Row index of the group row currently being hovered (-1 = none) */
    private _hoverRowIndex;
    private get avatarColors();
    constructor();
    /**
     * Draw group name content
     */
    draw(context: ViewerRenderContext, data: GroupNameViewerData): void;
    /**
     * Handle click events - detect person name clicks for jump
     */
    onClick(context: ViewerRenderContext, data: GroupNameViewerData, localX: number, _localY: number): boolean;
    /**
     * Show pointer cursor when hovering over person names
     */
    getInteractiveCursor(context: ViewerRenderContext, data: GroupNameViewerData, localX: number, _localY: number): string | null;
    /**
     * Reset hover state when mouse leaves the viewer area
     */
    resetHoverState(_data?: GroupNameViewerData): void;
    private drawTextMode;
    private drawPersonMode;
    /**
     * Draw person avatar from URL
     */
    private drawAvatar;
    /**
     * Draw fallback avatar with initial letter
     */
    private drawFallbackAvatar;
    private getColorIndex;
    private getInitial;
    private drawTagMode;
    private drawBooleanMode;
    private drawPriorityMode;
}
export default GroupNameViewer;
