import { Task } from '../classes/Task';
export type TaskListColumnType = 'name' | 'predecessor' | 'assignee' | 'startDate' | 'endDate' | 'estimatedHours' | 'actualHours' | 'progress';
/**
 * 列格式化函数类型
 * @param task 当前任务对象
 * @param column 当前列配置
 * @returns 格式化后的字符串
 */
export type ColumnFormatter = (task: Task, column: TaskListColumnConfig) => string;
export interface TaskListColumnConfig {
    type?: TaskListColumnType;
    key: string;
    label?: string;
    cssClass?: string;
    width?: number | string;
    visible?: boolean;
    formatter?: ColumnFormatter;
    /** 列固定位置，'left'/true 固定在左侧，'right' 固定在右侧 */
    fixed?: 'left' | 'right' | boolean;
}
export interface TaskListConfig {
    columns?: TaskListColumnConfig[];
    showAllColumns?: boolean;
    showTaskIcon?: boolean;
    defaultWidth?: number | string;
    minWidth?: number | string;
    maxWidth?: number | string;
}
export declare const DEFAULT_TASK_LIST_WIDTH = 320;
export declare const DEFAULT_TASK_LIST_MIN_WIDTH = 280;
export declare const DEFAULT_TASK_LIST_MAX_WIDTH = 1160;
/**
 * 解析宽度值（支持像素数字或百分比字符串）
 * @param value 宽度值，可以是数字（像素）或字符串（百分比，如 '30%'）
 * @param containerWidth 容器宽度（用于计算百分比）
 * @param defaultValue 默认值
 * @returns 解析后的像素值
 */
export declare function parseWidthValue(value: number | string | undefined, containerWidth: number, defaultValue: number): number;
export declare const DEFAULT_TASK_LIST_COLUMNS: TaskListColumnConfig[];
