"use client"
import { ButtonHTMLAttributes, ReactNode } from "react";
import { Loader2 } from "lucide-react";
import { Button } from "@/components/ui/button";
export type VariantButton = {
secondary: string;
default: string;
outline: string;
ghost: string;
link: string;
destructive: string;
};
export type SizeButton = {
default: string;
icon: string;
sm: string;
lg: string;
};
export type ButtonWithLoadingProps = {
children?: string | ReactNode;
icon?: ReactNode;
variant?: keyof VariantButton;
className?: string;
onClick?: (e: React.MouseEvent) => void;
isPending?: boolean;
size?: keyof SizeButton;
} & ButtonHTMLAttributes;
export const ButtonWithLoading = ({
icon,
children,
variant = "default",
className,
onClick,
isPending,
size = "default",
...rest
}: ButtonWithLoadingProps) => {
return (
);
};