import * as React from "react";
export interface RadioOption {
    /**
     * The value of the radio option
     */
    value: string;
    /**
     * The label text for the radio option
     */
    label: string;
    /**
     * Whether this option is disabled
     */
    isDisabled?: boolean;
    /**
     * Custom class name for the option container
     */
    containerClassName?: string;
    /**
     * Custom class name for the option label
     */
    labelClassName?: string;
}
export interface RadioGroupProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue"> {
    /**
     * Selected value (controlled)
     */
    value?: string;
    /**
     * Default selected value (uncontrolled)
     */
    defaultValue?: string;
    /**
     * Callback when selection changes
     */
    onChange?: (value: string) => void;
    /**
     * Array of radio options
     */
    options?: RadioOption[];
    /**
     * Custom radio buttons as children (alternative to options)
     */
    children?: React.ReactNode;
    /**
     * Label for the radio group
     */
    label?: string;
    /**
     * Helper text below the radio group
     */
    helperText?: string;
    /**
     * Error text (overrides helperText when present)
     */
    errorText?: string;
    /**
     * Success text (overrides helperText when present)
     */
    successText?: string;
    /**
     * Validation state for the radio group
     */
    validationState?: "none" | "error";
    /**
     * Whether the radio group is disabled
     */
    isDisabled?: boolean;
    /**
     * Whether the radio group is required
     */
    isRequired?: boolean;
    /**
     * Whether the radio group is optional
     */
    isOptional?: boolean;
    /**
     * Size of the radio buttons
     */
    size?: "small" | "medium" | "large";
    /**
     * Name attribute for the radio inputs (auto-generated if not provided)
     */
    name?: string;
    /**
     * Orientation of the radio group
     */
    orientation?: "horizontal" | "vertical";
    /**
     * Spacing between radio options
     */
    spacing?: "tight" | "normal" | "loose";
    /**
     * Visual variant for the radio group
     */
    variant?: "default" | "card";
    /**
     * Custom class for the container
     */
    containerClassName?: string;
    /**
     * Custom class for the label
     */
    labelClassName?: string;
    /**
     * Custom class for the radio group wrapper
     */
    groupClassName?: string;
    /**
     * Custom class for each radio card container (when variant="card")
     */
    cardClassName?: string;
    /**
     * Info heading for tooltip
     */
    infoHeading?: string;
    /**
     * Info description for tooltip
     */
    infoDescription?: string;
    /**
     * Custom Link component to render on the right side
     */
    LinkComponent?: React.ReactNode;
    /**
     * Link text
     */
    linkText?: string;
    /**
     * Link href
     */
    linkHref?: string;
    /**
     * Link click handler
     */
    onLinkClick?: (e: React.MouseEvent<HTMLAnchorElement>) => void;
}
declare const RadioGroup: React.ForwardRefExoticComponent<RadioGroupProps & React.RefAttributes<HTMLDivElement>>;
export { RadioGroup };
//# sourceMappingURL=RadioGroup.d.ts.map