import { ComponentPropsWithoutRef, ReactElement } from 'react';
import { LayoutUtilProps } from '../../types';
import { FieldLabelProps as FieldLabelElementProps } from '../FieldLabel';
import { FieldLabelProps as InternalFieldLabelProps } from '../../internal/types';
import { HelperProps } from '../../internal/components';
/**
 * Props for the RadioGroup component
 * @extends ComponentPropsWithoutRef<"fieldset">
 * @extends LayoutUtilProps
 * @extends Omit<InternalFieldLabelProps, "labelProps">
 */
export type RadioGroupProps = ComponentPropsWithoutRef<"fieldset"> & LayoutUtilProps & Omit<InternalFieldLabelProps, "labelProps"> & {
    /**
     * Required flag for label
     * @remarks This does not enforce error when nothing is selected
     */
    required?: boolean;
    /**
     * Legend for the fieldset.
     * Passing `ReactNode` is deprecated — use a plain string with inline markdown instead.
     */
    legend: string | ReactElement;
    /**
     * Additional props for the legend `FieldLabel` (for example `aiMark`, `className`).
     */
    legendProps?: Omit<FieldLabelElementProps, "el">;
    /**
     * When `true`, hides the visual label row. The sr-only `<legend>` always remains for AT.
     * @default false
     */
    hideLabel?: boolean;
    /**
     * Error state for the field. Pass `true` to indicate error styling without a message.
     * Pass a string, string[], or ReactElement (deprecated) for error messages.
     */
    error?: boolean | string | ReactElement | string[];
    /**
     * @deprecated No longer used. Error messages always use `aria-live="assertive"`.
     */
    errorAriaLive?: HelperProps["errorAriaLive"];
    /**
     * Warning message(s) to display. Supports a single string or an array of strings.
     */
    warning?: string | string[];
    /**
     * Description text to display below the field.
     */
    description?: HelperProps["description"];
    /**
     * Hint text to display below the field.
     */
    hint?: HelperProps["hint"];
};
/**
 * RadioGroup component for grouping related radio options.
 *
 * Features:
 * - Groups multiple radio options together
 * - Legend support for group labeling
 * - Required field indication
 * - Accessibility support with proper fieldset semantics
 * - Layout utility props for positioning and spacing
 * - Focus and blur event handling
 * - More info support for additional context
 * - Automatic alignment based on flex direction
 *
 * @example
 * <RadioGroup legend="Choose your preference" required>
 *   <Radio label="Option A" value="a" />
 *   <Radio label="Option B" value="b" />
 *   <Radio label="Option C" value="c" />
 * </RadioGroup>
 *
 * @example
 * <RadioGroup
 *   legend="Horizontal layout"
 *   flexDirection="row"
 *   gap="4"
 * >
 *   <Radio label="Yes" value="yes" />
 *   <Radio label="No" value="no" />
 * </RadioGroup>
 */
export declare const RadioGroup: import('react').ForwardRefExoticComponent<Omit<import('react').DetailedHTMLProps<import('react').FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & LayoutUtilProps & Omit<InternalFieldLabelProps, "labelProps"> & {
    /**
     * Required flag for label
     * @remarks This does not enforce error when nothing is selected
     */
    required?: boolean;
    /**
     * Legend for the fieldset.
     * Passing `ReactNode` is deprecated — use a plain string with inline markdown instead.
     */
    legend: string | ReactElement;
    /**
     * Additional props for the legend `FieldLabel` (for example `aiMark`, `className`).
     */
    legendProps?: Omit<FieldLabelElementProps, "el">;
    /**
     * When `true`, hides the visual label row. The sr-only `<legend>` always remains for AT.
     * @default false
     */
    hideLabel?: boolean;
    /**
     * Error state for the field. Pass `true` to indicate error styling without a message.
     * Pass a string, string[], or ReactElement (deprecated) for error messages.
     */
    error?: boolean | string | ReactElement | string[];
    /**
     * @deprecated No longer used. Error messages always use `aria-live="assertive"`.
     */
    errorAriaLive?: HelperProps["errorAriaLive"];
    /**
     * Warning message(s) to display. Supports a single string or an array of strings.
     */
    warning?: string | string[];
    /**
     * Description text to display below the field.
     */
    description?: HelperProps["description"];
    /**
     * Hint text to display below the field.
     */
    hint?: HelperProps["hint"];
} & import('react').RefAttributes<HTMLFieldSetElement>>;
