import { FC, ReactNode } from 'react'; import { IconName } from '../../elements/icon/icon'; import { VisualSizesEnum } from '../../helpers/fontHelpers'; import { CardBody } from './cardBody'; import { CardFooter } from './cardFooter'; import { CardHeader } from './cardHeader'; export interface CardAction { /** The label for the action. */ label: string; /** The icon name for the action. */ icon?: IconName; /** The tooltip text for the action (optional, defaults to label). */ tooltip?: string; /** Called when the action is clicked. */ onClick: () => void; } export interface CardProps { /** Content to render inside the card. */ children?: ReactNode; /** The size of the card. */ size?: VisualSizesEnum; /** Class name to allow custom styling of the card. */ className?: string; /** Optional actions to display in the top right corner. */ actions?: CardAction[]; /** Whether actions should only be visible on hover (default: true - actions always visible). */ showActionsOnHover?: boolean; /** Whether to group actions into a dropdown menu (default: false - show as individual icon buttons). */ groupActions?: boolean; } declare const CardComponent: FC; declare const Card: typeof CardComponent & { Header: typeof CardHeader; Body: typeof CardBody; Footer: typeof CardFooter; }; export { Card };