import React from 'react';
import { SemanticVariant } from '../../constants';
export interface TimelineProps<TimelineEvent> {
    /** The list of events */
    data: TimelineEvent[];
    /** If true, the timeline will be horizontal (stepper) */
    horizontal?: boolean;
    /** Icon that will be used for each event */
    icon?: React.ReactNode;
    /** Optionally provide a semantic-variant or valid HEX for the icon circle's background color */
    iconBgColor?: SemanticVariant | string;
    /** Function to render each event */
    render: (timelineItem: TimelineEvent) => React.ReactNode;
    /** Optional render prop to render the timestamp view */
    renderTimestamp?: (timelineItem: TimelineEvent) => React.ReactNode;
    /** Optional if no `renderTimestamp` prop provided. Function to extract timestamp from each event */
    timestampExtractor?: (timelineItem: TimelineEvent) => string;
}
declare const Timeline: {
    <TimelineEvent>({ data, horizontal, icon, iconBgColor, render, renderTimestamp, timestampExtractor, }: TimelineProps<TimelineEvent>): React.JSX.Element | null;
    Item: React.FC<{
        className?: string;
        horizontal?: boolean;
        icon?: React.ReactNode;
        iconBgColor?: SemanticVariant | string;
        timestamp?: React.ReactNode;
    } & {
        children?: React.ReactNode | undefined;
    }>;
};
export { Timeline };
