import React from "react"; export type ArtifactComponentName = keyof typeof artifactComponents; export type TocItem = { id: string; text: string; level: 2 | 3; }; export declare function ArtifactShell({ children, toc, }: { children: React.ReactNode; toc?: TocItem[]; }): React.JSX.Element; export declare function Section({ title, description, children, }: { title?: string; description?: string; children: React.ReactNode; }): React.JSX.Element; export declare function Stack({ gap, children, }: { gap?: "sm" | "md" | "lg"; children: React.ReactNode; }): React.JSX.Element; export declare function Grid({ columns, children, }: { columns?: 2 | 3; children: React.ReactNode; }): React.JSX.Element; export declare function Card({ title, description, children, }: { title?: string; description?: string; children: React.ReactNode; }): React.JSX.Element; export declare function Callout({ variant, title, children, }: { variant?: "info" | "warning"; title?: string; children: React.ReactNode; }): React.JSX.Element; export declare function Stat({ label, value, description, }: { label: string; value: string | number; description?: string; }): React.JSX.Element; export type TimelineItem = { title: string; description?: string; date?: string; }; export declare function Timeline({ items }: { items: TimelineItem[]; }): React.JSX.Element; export type TabItem = { label: string; content: string; }; export declare function Tabs({ items }: { items: TabItem[]; }): React.JSX.Element; export type AccordionDataItem = { title: string; content: string; }; export declare function Accordion({ items }: { items: AccordionDataItem[]; }): React.JSX.Element; export type ChartDatum = Record; export declare function Chart({ title, type, data, xKey, yKey, }: { title?: string; type?: "bar" | "line" | "pie"; data: ChartDatum[]; xKey?: string; yKey?: string; }): React.JSX.Element; export type MermaidDiagramType = "flowchart" | "sequence" | "class" | "state" | "er" | "journey" | "gantt" | "pie" | "git" | "mindmap" | "timeline"; export declare function MermaidDiagram({ title, type, chart, }: { title?: string; type?: MermaidDiagramType; chart: string; }): React.JSX.Element; export declare function Badge({ variant, children, }: { variant?: "default" | "secondary" | "success" | "warning" | "danger"; children: React.ReactNode; }): React.JSX.Element; export declare function Separator(): React.JSX.Element; export type KeyValueItem = { key: string; value: string; }; export declare function KeyValueList({ items }: { items: KeyValueItem[]; }): React.JSX.Element; export type ChecklistItem = { label: string; checked?: boolean; description?: string; }; export declare function Checklist({ items }: { items: ChecklistItem[]; }): React.JSX.Element; export declare function Progress({ label, value, description, }: { label: string; value: number; description?: string; }): React.JSX.Element; export declare function Quote({ by, children, }: { by?: string; children: React.ReactNode; }): React.JSX.Element; export type ProsConsItem = { title: string; description?: string; }; export declare function ProsCons({ pros, cons, }: { pros: ProsConsItem[]; cons: ProsConsItem[]; }): React.JSX.Element; export type ComparisonColumn = { key: string; label: string; }; export type ComparisonRow = { label: string; values: Record; }; export declare function ComparisonTable({ columns, rows, }: { columns: ComparisonColumn[]; rows: ComparisonRow[]; }): React.JSX.Element; export type DataTableColumn = { key: string; label: string; }; export type DataTableRow = Record; export declare function DataTable({ title, columns, rows, searchable, searchPlaceholder, }: { title?: string; columns: DataTableColumn[]; rows: DataTableRow[]; searchable?: boolean; searchPlaceholder?: string; }): React.JSX.Element; export type CarouselSlide = { title?: string; content: string; }; export declare function Carousel({ title, slides, }: { title?: string; slides: CarouselSlide[]; }): React.JSX.Element; export declare function Tooltip({ term, content }: { term: string; content: string; }): React.JSX.Element; export declare function HoverCard({ trigger, title, content, }: { trigger: string; title?: string; content: string; }): React.JSX.Element; export type ResizablePanelItem = { title?: string; content: string; defaultSize?: number; }; export declare function Resizable({ title, panels, }: { title?: string; panels: ResizablePanelItem[]; }): React.JSX.Element; export declare function Slider({ label, value, min, max, description, }: { label: string; value: number; min?: number; max?: number; description?: string; }): React.JSX.Element; export declare const artifactComponents: { Section: typeof Section; Stack: typeof Stack; Grid: typeof Grid; Card: typeof Card; Callout: typeof Callout; Stat: typeof Stat; Timeline: typeof Timeline; Tabs: typeof Tabs; Accordion: typeof Accordion; Badge: typeof Badge; Separator: typeof Separator; KeyValueList: typeof KeyValueList; Checklist: typeof Checklist; Progress: typeof Progress; Quote: typeof Quote; ProsCons: typeof ProsCons; ComparisonTable: typeof ComparisonTable; DataTable: typeof DataTable; Carousel: typeof Carousel; Tooltip: typeof Tooltip; HoverCard: typeof HoverCard; Resizable: typeof Resizable; Slider: typeof Slider; Chart: typeof Chart; MermaidDiagram: typeof MermaidDiagram; }; export declare const allowedComponentNames: string[];