import React, { ReactNode } from 'react'; import { Surface } from './primitives/Surface'; import { Box, Spacing } from './primitives/Box'; import { Heading } from './Heading'; import { Text } from './Text'; export interface PanelProps { title?: string; description?: string; children: ReactNode; footer?: ReactNode; variant?: 'default' | 'dark' | 'muted'; padding?: Spacing; actions?: ReactNode; } export const Panel = ({ title, description, children, footer, variant = 'default', padding = 6, actions }: PanelProps) => { return ( {(title || description || actions) && ( {title && {title}} {description && {description}} {actions && ( {actions} )} )} {children} {footer && ( {footer} )} ); };