import type { HTMLAttributes } from "react";
/**
* Card — surface container for grouping related content.
*
* Composition pattern (shadcn-style):
*
*
* …
* …
*
* …
* …
*
*
* The `size` prop on the root propagates to subparts via Context, so a
* single declaration controls padding + heading scale across the compound.
* Subparts used in isolation default to `md`. Subparts do NOT accept a `size`
* prop of their own — use `className` for granular per-subpart tweaks.
* (EC-8, edge-case review 2026-05-20.)
*/
type CardSize = "sm" | "md" | "lg";
interface CardRootProps extends HTMLAttributes {
size?: CardSize;
}
interface TitleProps extends HTMLAttributes {
/**
* When true, renders the child element with the Card.Title styles applied
* (Radix Slot pattern). Use to swap the default `` for `` / ``
* when the heading hierarchy requires it.
*/
asChild?: boolean;
}
declare const Card: import("react").ForwardRefExoticComponent> & {
Header: import("react").ForwardRefExoticComponent & import("react").RefAttributes>;
Title: import("react").ForwardRefExoticComponent>;
Description: import("react").ForwardRefExoticComponent & import("react").RefAttributes>;
Body: import("react").ForwardRefExoticComponent & import("react").RefAttributes>;
Footer: import("react").ForwardRefExoticComponent & import("react").RefAttributes>;
};
export { Card };