import { jsx as _jsx } from "react/jsx-runtime";
import { cn } from "@powerhousedao/design-system";
import { Slot } from "@radix-ui/react-slot";
import { cva } from "class-variance-authority";
import { forwardRef } from "react";
const buttonVariants = cva(cn("inline-flex items-center justify-center gap-2", "whitespace-nowrap rounded-md text-sm font-medium", "transition-colors", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2", "disabled:pointer-events-none", "[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0"), {
    variants: {
        variant: {
            default: "",
            outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground",
            ghost: "hover:bg-accent hover:text-accent-foreground",
        },
    },
    defaultVariants: {
        variant: "default",
    },
});
const Button = forwardRef(({ variant, className, asChild = false, ...props }, ref) => {
    const Comp = asChild ? Slot : "button";
    return (_jsx(Comp, { className: cn(buttonVariants({ variant, className })), ref: ref, ...props }));
});
export { Button, buttonVariants };
//# sourceMappingURL=button.js.map