import { PortfolioElement } from './portfolio';

export interface BaseTimelineItem {
  date: string;
  position: string;
  company: string;
  bullets: string[];
  color?: string;
}

export interface TimelineItem extends BaseTimelineItem {
  icon: React.ReactNode;
}

export interface TimelinePropsItem extends BaseTimelineItem {
  icon: string;
}

export interface TimelineProps {
  timelineData?: TimelinePropsItem[];
  heading?: string;
  styling?: PortfolioElement['styling'];
  sectionId?: string;
}

export interface TimelineItemEditorProps {
  item: TimelinePropsItem;
  onUpdate: (item: TimelinePropsItem) => void;
  onClose: () => void;
  index: number;
}

export interface TimelineItemSummaryProps {
  item: TimelinePropsItem;
  onEdit: () => void;
  onRemove: () => void;
}
