/**
 * Copyright (c) Adaptavist, Inc.
 */
import { GenericProps } from '@/src/utilities';
export interface IRadio extends React.InputHTMLAttributes<HTMLInputElement>, GenericProps {
    /**
     * Control if the radio button is 'checked' or not
     */
    checked?: boolean;
    /**
     * Control if the radio button is 'disabled' or not
     */
    disabled?: boolean;
    /**
     * Control if the radio button shows an 'error' state or not
     */
    error?: boolean;
}
export interface IRadioGroup extends React.HtmlHTMLAttributes<HTMLDivElement>, GenericProps {
    /**
     * Controls the name of the radio group, required for grouping radio buttons together into a group
     */
    name: string;
    /**
     * Controls the default selected value of the radio group.
     */
    value?: string;
    /**
     * Controls the direction of the radio group.
     */
    direction?: 'horizontal' | 'vertical';
    /**
     * Control if the radio group is 'disabled' or not
     */
    disabled?: boolean;
    /**
     * Control if the radio group shows an 'error' state or not
     */
    error?: boolean;
    /**
     * Controls the label of the radio group to be displayed
     */
    label?: React.ReactNode;
    /**
     * The function to run on change of a radio button in the group.
     */
    onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
}
export interface IRadioText extends React.HTMLAttributes<HTMLSpanElement>, GenericProps {
    /**
     * Control if the radio button displays active styling or not.
     */
    active: boolean;
    /**
     * Control if the radio button is 'disabled' or not
     */
    disabled?: boolean;
    /**
     * Control if the radio button shows an 'error' state or not
     */
    error?: boolean;
}
