export type InteractionStateConfig = { color: 'neutral' | 'brand'; variant: 'default' | 'primary' | 'secondary' | 'tertiary'; forced?: 'default' | 'hover' | 'pressed'; }; export type InteractionConfig = { default: InteractionStateConfig; hover: InteractionStateConfig; pressed: InteractionStateConfig; }; export type RowCellInteraction = { default: InteractionConfig; selected?: InteractionConfig; }; type BaseCardBackground = { disabled?: boolean; className?: string; forced?: 'default' | 'hover' | 'pressed'; children?: React.ReactNode | (() => React.ReactNode); interactionConfig?: InteractionConfig | RowCellInteraction; interactionSource?: 'self' | string; } & React.HTMLAttributes; type NeutralCardBackground = { color: 'neutral'; variant: 'default' | 'primary' | 'secondary' | 'tertiary'; } & BaseCardBackground; type BrandCardBackground = { color: 'brand'; variant: 'primary'; } & BaseCardBackground; type DefaultCardBackground = { color?: undefined; variant?: undefined; forced?: undefined; } & BaseCardBackground; export type CardBackgroundProps = DefaultCardBackground | NeutralCardBackground | BrandCardBackground; /** Atributo que el ancestro interactivo debe llevar cuando el hijo usa `interactionSource !== 'self'`. */ export declare const INTERACTION_GROUP_ATTR: "data-interaction-group"; /** Zonas con este atributo no propagan hover/active al grupo (p. ej. botones dentro de una card clickeable). */ export declare const INTERACTION_EXCLUDE_ATTR: "data-interaction-exclude"; export declare function interactionGroupProps(): { [INTERACTION_GROUP_ATTR]: ''; }; declare const CardBackground: import('react').MemoExoticComponent<(props: CardBackgroundProps) => import("react/jsx-runtime").JSX.Element>; export default CardBackground;