import { CardProps as ChakraCardProps, CardBodyProps, ResponsiveValue } from "@chakra-ui/react"; type CardColorScheme = "whiteAlpha" | "blackAlpha" | "gray" | "red" | "orange" | "yellow" | "green" | "teal" | "blue" | "cyan" | "purple" | "pink"; /** @deprecated Never rendered — Card draws no divider; parts are separated by theme padding. */ type DeadDividerProps = { /** Ignored; Card draws no divider. */ dividercolor?: CardColorScheme; /** Ignored; Card draws no divider. */ dividersize?: string; /** Ignored; Card draws no divider. */ dividervariant?: "solid" | "dashed"; }; /** Padding steps: "none" flush, "2xs" 0.375rem, "xs" 0.75rem all round, "sm" / "md" / "lg" match `size`. */ export type CardPadding = "none" | "2xs" | "xs" | "sm" | "md" | "lg"; /** Themed card surface (outline rule or borderless elevated) with optional header/footer slots; direction/align/justify apply to the body. */ export type CardProps = Omit & DeadDividerProps & { /** Rendered in CardHeader (semibold header ink) only when truthy. */ header?: React.ReactNode; /** Rendered in CardFooter only when truthy. */ footer?: React.ReactNode; /** Body content, rendered inside the flex body wrapper. */ children: React.ReactNode; /** "elevated" (default): borderless, lifted by `shadows.card`. "outline": 1px rule, no shadow, for tables and row lists. */ variant?: "elevated" | "outline" | "filled" | "unstyled"; /** Padding scale for header/body/footer; defaults to "md". */ size?: "sm" | "md" | "lg"; /** @deprecated No visual effect — neither Chakra's nor this theme's Card styles read a colour scheme. */ colorScheme?: CardColorScheme; /** @deprecated Alias of the no-op `colorScheme`, and not a CSS color. */ color?: CardColorScheme; /** Body flex direction; defaults to "column". */ direction?: ResponsiveValue<"row" | "column" | "row-reverse" | "column-reverse">; /** Body alignItems; `bodyProps` wins if it sets the same thing. */ align?: CardBodyProps["alignItems"]; /** Body justifyContent; `bodyProps` wins if it sets the same thing. */ justify?: CardBodyProps["justifyContent"]; /** Overrides `size`'s padding for header, body and footer; "none" is flush (a header keeps "xs"), "2xs" is 6px. */ padding?: CardPadding; /** Props for the body wrapper, e.g. `p={0}` for edge-to-edge media. */ bodyProps?: CardBodyProps; }; export {};