UNPKG

react-chrono-multicard

Version:

A Modern Timeline component for React with multiple card entries

49 lines (48 loc) 2.08 kB
/// <reference types="react" /> import { Theme } from './Theme'; import { Scroll } from './TimelineHorizontalModel'; import { TimelineEntryModel } from './TimelineItemModel'; import { Media } from './TimelineMediaModel'; import { TimelineProps } from './TimelineModel'; export declare type Props = Pick<TimelineProps, 'flipLayout' | 'theme' | 'mode' | 'timelineCircleDimension' | 'lineWidth' | 'cardHeight' | 'enableOutline' | 'disableClickOnCircle' | 'cardLess'> & { alternateCards?: boolean; hasFocus?: boolean; onClick: (id?: string) => void; onElapsed?: (id?: string) => void; slideItemDuration?: number; slideShowRunning?: boolean; theme?: Theme; }; declare type VerticalModel = Pick<Props, 'alternateCards' | 'hasFocus' | 'onClick' | 'onElapsed' | 'slideShowRunning' | 'mode' | 'timelineCircleDimension' | 'lineWidth' | 'disableClickOnCircle' | 'cardLess'> & { active?: boolean; className: string; id?: string; }; export interface VerticalCircleModel extends VerticalModel { iconChild?: React.ReactNode; onActive: (pointOffset: number) => void; } export interface VerticalItemModel extends VerticalModel { cardDetailedText?: string | string[]; cardSubtitle?: string; cardTitle?: string; contentDetailsChildren?: React.ReactNode; iconChild?: React.ReactNode; index: number; media?: Media; onActive: (pointOffset: number, contentHeight: number, contentOffset: number) => void; onShowMore?: () => void; title?: string; url?: string; visible?: boolean; } export declare type TimelineVerticalModel = Pick<Props, 'alternateCards' | 'enableOutline' | 'mode' | 'onClick' | 'onElapsed' | 'slideShowRunning' | 'theme' | 'hasFocus' | 'cardLess'> & { activeTimelineItem: number; autoScroll: (s: Partial<Scroll>) => void; childrenNode?: React.ReactNode; contentDetailsChildren?: React.ReactNode; iconChildren?: React.ReactNode; items: TimelineEntryModel[]; onOutlineSelection?: (index: number) => void; }; export {};