jordium-gantt-vue3
Version:
A Vue 3 Gantt chart component for project management, task scheduling, resource planning, calendar, resource usage and timeline visualization.
57 lines (56 loc) • 2.37 kB
TypeScript
import { Milestone } from '../models/classes/Milestone';
import { Task } from '../models/classes/Task';
import { TimelineScale } from '../models/types/TimelineScale';
import { TimelineMonth, TimelineYear, TimelineDay, MilestoneTooltipShowPayload, MilestoneSlotProps } from '../models/types/TimelineDataTypes';
type __VLS_Slots = {
'custom-milestone-content'(props: MilestoneSlotProps): unknown;
};
interface Props {
date: string;
milestone: Milestone;
task?: Task;
name?: string;
rowHeight: number;
dayWidth: number;
startDate: Date;
timelineStart: Date;
timelineEnd: Date;
/** 标签展示位置,默认 'right'(与现状保持一致) */
labelPosition?: 'left' | 'top' | 'right' | 'bottom';
scrollLeft?: number;
containerWidth?: number;
milestoneId?: number;
otherMilestones?: Array<{
id: number;
isSticky: boolean;
stickyPosition: string;
left: number;
originalLeft: number;
priority: number;
}>;
currentTimeScale?: TimelineScale | null;
timelineData?: TimelineMonth[] | TimelineYear[] | TimelineDay[];
periodWidth: number;
isInHighlightMode?: boolean;
allowDragAndResize: boolean;
}
declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
"drag-end": (milestone: Milestone) => any;
"milestone-double-click": (milestone: Milestone) => any;
"update:milestone": (milestone: Milestone) => any;
"milestone-tooltip-show": (payload: MilestoneTooltipShowPayload) => any;
"milestone-tooltip-hide": () => any;
}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
"onDrag-end"?: ((milestone: Milestone) => any) | undefined;
"onMilestone-double-click"?: ((milestone: Milestone) => any) | undefined;
"onUpdate:milestone"?: ((milestone: Milestone) => any) | undefined;
"onMilestone-tooltip-show"?: ((payload: MilestoneTooltipShowPayload) => any) | undefined;
"onMilestone-tooltip-hide"?: (() => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};