import type { ButtonHTMLAttributes, ReactNode } from "react";
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger";
type ButtonSize = "sm" | "md" | "icon";
interface ButtonProps extends ButtonHTMLAttributes {
variant?: ButtonVariant;
size?: ButtonSize;
icon?: ReactNode;
}
export function Button({ className = "", variant = "primary", size = "md", icon, children, ...props }: ButtonProps) {
const classes = ["button", `button--${variant}`, `button--${size}`, className].filter(Boolean).join(" ");
return (
);
}