UNPKG

@furystack/shades-common-components

Version:

Common UI components for FuryStack Shades

57 lines 2.73 kB
import type { PartialElement } from '@furystack/shades'; import type { Palette } from '../services/theme-provider-service.js'; /** * Props for a single timeline item. */ export type TimelineItemProps = PartialElement<HTMLElement> & { /** Palette color for the dot. Defaults to 'primary'. */ color?: keyof Palette; /** Custom dot content (e.g. an icon). Replaces the default filled circle. */ dot?: JSX.Element; /** Label displayed on the opposite side from the content (used in alternate or right mode). */ label?: string; }; /** * A single item in a Timeline. * Renders a dot, a connector tail, and the item's content (children). */ export declare const TimelineItem: (props: Omit<Partial<HTMLElement>, "style"> & { style?: Partial<CSSStyleDeclaration>; } & { ref?: import("@furystack/shades").RefObject<Element>; } & { /** Palette color for the dot. Defaults to 'primary'. */ color?: keyof Palette; /** Custom dot content (e.g. an icon). Replaces the default filled circle. */ dot?: JSX.Element; /** Label displayed on the opposite side from the content (used in alternate or right mode). */ label?: string; }, children?: import("@furystack/shades").ChildrenList) => JSX.Element; /** * Props for the Timeline container. */ export type TimelineProps = PartialElement<HTMLElement> & { /** Layout mode. 'left' places content on the right, 'right' on the left, 'alternate' switches sides. Defaults to 'left'. */ mode?: 'left' | 'right' | 'alternate'; /** Orientation of the timeline axis. Defaults to 'vertical'. */ orientation?: 'vertical' | 'horizontal'; /** Show a pending indicator on the last item. `true` shows a default "Loading..." text, a string/JSX shows custom content. */ pending?: boolean | string | JSX.Element; }; /** * Timeline displays a list of events in chronological order. * Supports left, right, and alternate layout modes with optional pending state. */ export declare const Timeline: (props: Omit<Partial<HTMLElement>, "style"> & { style?: Partial<CSSStyleDeclaration>; } & { ref?: import("@furystack/shades").RefObject<Element>; } & { /** Layout mode. 'left' places content on the right, 'right' on the left, 'alternate' switches sides. Defaults to 'left'. */ mode?: "left" | "right" | "alternate"; /** Orientation of the timeline axis. Defaults to 'vertical'. */ orientation?: "vertical" | "horizontal"; /** Show a pending indicator on the last item. `true` shows a default "Loading..." text, a string/JSX shows custom content. */ pending?: boolean | string | JSX.Element; }, children?: import("@furystack/shades").ChildrenList) => JSX.Element; //# sourceMappingURL=timeline.d.ts.map