import { ComponentPropsWithRef, RefObject } from "react"; import { type ThemeColor } from "../../../types"; import clsx from "clsx"; import { ButtonProps, buttonVariants } from "../../button"; export interface RadioProps extends ComponentPropsWithRef<"input"> { color?: ThemeColor; variant?: "contained" | "light" | "outlined" | "text" | "ghost"; width?: "fit" | "full" | "custom"; ref?: RefObject; } export function Radio({ disabled = false, color = "yellow", children, className, ref, ...rest }: RadioProps) { return ( ); } export interface RadioWithLegendProps extends RadioProps { label: string; labelClassName?: string; } export function RadioWithLegend({ disabled = false, color = "yellow", children, label, labelClassName, className, ref, ...rest }: RadioWithLegendProps) { /** * Add [data-radio="legend"] into parent of children */ return ( ); } export interface RadioButtonProps extends Omit { color?: ButtonProps["color"]; size?: "small" | "medium" | "large" | "custom" | "input"; icon?: boolean; } export function RadioButton({ disabled = false, color = "yellow", children, className, variant = "light", width = "fit", size = "medium", icon = false, ref, ...rest }: RadioButtonProps) { return ( ); }