A comprehensive and customizable button component that serves as a fundamental building block for user interactions in your application.
size
: ‘sm’ | ‘md’ | ‘lg’ - Controls the button size
variant
: ‘primary’ | ‘secondary’ | ‘warning’ | ‘black’ | ‘danger’ - Sets the button’s visual style
outline
: boolean - When true, renders a bordered button without background, useful for less prominent actionsicon
: ReactNode - Optional icon to display alongside text, supports any React componentchildren
: ReactNode - Button content (text or other React components)className
: string - Additional CSS classes for custom styling