import { ReactElement } from 'react'; /** Visibility group a template belongs to. */ type TemplateScope = "private" | "company" | "wealthx"; interface TemplateCardProps { name: string; description?: string; /** Column blueprint — only the names are needed for the preview strip. */ columns: { name: string; }[]; scope: TemplateScope; /** Admin-pinned official template — shows a star marker. */ isOfficial?: boolean; creator: { name: string; avatarUrl?: string; }; /** How many boards were created from this template. */ usageCount: number; /** ISO date of the last edit. */ updatedAt: string; /** Highlights the card (e.g. picked in the create-from-template gallery). */ selected?: boolean; /** Click the card body — open detail or pick in a gallery. */ onSelect?: () => void; /** Primary CTA — create a board from this template. Hidden when omitted. */ onUse?: () => void; className?: string; } /** * A single Kanban template tile. Used in the Create-from-Template gallery and * the Template Library page. Shows the column structure preview, creator and * usage so an advisor can pick the right starting point. */ declare function TemplateCard({ name, description, columns, isOfficial, creator, usageCount, updatedAt, selected, onSelect, onUse, className, }: TemplateCardProps): ReactElement; export { TemplateCard, type TemplateCardProps, type TemplateScope };