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;
    };
};
