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 CheckboxGroup component
 * @extends ComponentPropsWithoutRef<"fieldset">
 * @extends LayoutUtilProps
 * @extends Omit<InternalFieldLabelProps, "labelProps">
 */
export type CheckboxGroupProps = ComponentPropsWithoutRef<"fieldset"> & LayoutUtilProps & Omit<InternalFieldLabelProps, "labelProps"> & {
    /**
     * required flag for label
     * @accessibility This does not enforce error when nothing is selected.
     * @default false
     */
    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">;
    /**
     * 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"];
    /**
     * When `true`, hides the visual label row. The sr-only `<legend>` always remains for screen readers.
     * @default false
     */
    hideLabel?: boolean;
};
/**
 * CheckboxGroup component for grouping related checkboxes together.
 *
 * Features:
 * - Groups multiple checkboxes with a common legend
 * - Supports required field indication
 * - Optional helper text and descriptions
 * - Full accessibility support with fieldset/legend
 * - Focus management for keyboard navigation
 * - Layout utility props for positioning and spacing
 * - Flexible layout direction (row/column)
 * - Screen reader support with hidden labels
 *
 * @example
 * <CheckboxGroup legend="Select your interests" required>
 *   <Checkbox label="Technology" />
 *   <Checkbox label="Sports" />
 *   <Checkbox label="Music" />
 * </CheckboxGroup>
 */
export declare const CheckboxGroup: import('react').ForwardRefExoticComponent<Omit<import('react').DetailedHTMLProps<import('react').FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & LayoutUtilProps & Omit<InternalFieldLabelProps, "labelProps"> & {
    /**
     * required flag for label
     * @accessibility This does not enforce error when nothing is selected.
     * @default false
     */
    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">;
    /**
     * 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"];
    /**
     * When `true`, hides the visual label row. The sr-only `<legend>` always remains for screen readers.
     * @default false
     */
    hideLabel?: boolean;
} & import('react').RefAttributes<HTMLFieldSetElement>>;
