gantt-task-react-v
Version:
Interactive Gantt Chart for React with TypeScript.
39 lines (38 loc) • 1.66 kB
TypeScript
import type { MouseEvent } from "react";
import React from "react";
import { Distances, GanttRelationEvent, GanttTaskBarActions, RelationKind, RelationMoveTarget, RenderCustomLabel, Task, TaskBarMoveAction, RenderTask, ViewMode } from "../../types";
export interface TaskItemProps extends Omit<GanttTaskBarActions, "taskBarMovingAction"> {
hasChildren: boolean;
progressWidth: number;
progressX: number;
task: Task;
taskYOffset: number;
width: number;
x1: number;
x2: number;
distances: Distances;
taskHeight: number;
taskHalfHeight: number;
authorizedRelations: RelationKind[];
ganttRelationEvent: GanttRelationEvent;
canDelete: boolean;
isSelected: boolean;
isCritical: boolean;
movingAction: TaskBarMoveAction | null;
rtl: boolean;
isRelationChangeable: (task: Task) => boolean;
isProgressChangeable: (task: Task) => boolean;
isDateChangeable: (task: Task) => boolean;
onRelationStart: (target: RelationMoveTarget, selectedTask: Task) => void;
onDeleteTask: (task: RenderTask) => void;
onSelectTaskOnMouseDown: (taskId: string, event: MouseEvent) => void;
onClick?: (task: Task, event: React.MouseEvent<SVGElement>) => void;
onDoubleClick?: (task: Task) => void;
onEventStart: (action: TaskBarMoveAction, selectedTask: Task, clientX: number, taskRootNode: Element) => void;
onTooltipTask: (task: Task | null, element: Element | null) => void;
renderCustomLabel?: RenderCustomLabel;
viewMode: ViewMode;
showProgress?: boolean;
progressColor?: string;
}
export declare const TaskItem: React.NamedExoticComponent<TaskItemProps>;