import React from 'react'; import { MarkerColor, MarkerType } from './style/titleMarker'; import { TimelineLineColor, TimelineLineStyle } from './style/wrappers'; interface IModularTimelineBodyItem { content: JSX.Element | string; type?: 'neutral' | 'red' | 'green' | 'cyan'; } interface IModularTimelineEvent { /** Headline name of the event */ title: JSX.Element | string; /** Content to put inside the event body. When null, no body is provided */ body?: IModularTimelineBodyItem | IModularTimelineBodyItem[]; /** Event Type; major = greater importance and spacing */ eventType: MarkerType; /** Changes color of the marker used */ markerColor?: MarkerColor; /** Changes the line style used for this event */ timelineLineStyle?: TimelineLineStyle; /** Changes color of the timeline line */ timelineLineColor?: TimelineLineColor; /** Component context for the event wrapper */ componentContext?: string; /** Overrides the automatic bottom spacing calculation. Defaults to `auto` */ bottomSpacingSize?: 'auto' | 'normal' | 'large'; } interface IModularTimelineProps { /** Provide an array of events to use in the timeline */ events: IModularTimelineEvent[]; /** Component context for the timeline wrapper */ componentContext?: string; } declare class ModularTimeline extends React.PureComponent> { render(): JSX.Element | null; private getComponentForEvent; private getBodyContent; private getLineStyleForEvent; private getBottomSpacingForEvent; } export { IModularTimelineProps, ModularTimeline };