import * as React from 'react';
import { type FieldProps } from '@/components/atoms/forms/_shared';
import { type SelectionColor, type SelectionItem, type SelectionSize, type SelectionVariant } from '@/components/ui/selection-group';
export type CheckboxGroupVariant = SelectionVariant;
export type CheckboxGroupColor = SelectionColor;
export type CheckboxGroupSize = SelectionSize;
export type CheckboxGroupItem = SelectionItem;
interface CheckboxGroupControlProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {
    /** Array of checkbox items */
    items: CheckboxGroupItem[];
    /** Controlled selected values */
    value?: string[];
    /** Default selected values for uncontrolled mode */
    defaultValue?: string[];
    /** Callback when selection changes */
    onValueChange?: (value: string[]) => void;
    /** Visual variant */
    variant?: CheckboxGroupVariant;
    /** Size of the checkbox items */
    size?: CheckboxGroupSize;
    /** Layout orientation */
    orientation?: 'horizontal' | 'vertical';
    /** Gap between items */
    gap?: 'sm' | 'md' | 'lg';
    /** Color theme */
    color?: CheckboxGroupColor;
    /** Whether to use filled/muted background for card variants */
    filled?: boolean;
    /** Whether the entire group is disabled */
    disabled?: boolean;
    /** Accessible label for the group */
    'aria-label'?: string;
    /** ID of element that labels the group */
    'aria-labelledby'?: string;
}
export interface CheckboxGroupProps extends CheckboxGroupControlProps, Omit<FieldProps, 'topRight' | 'bottomRight'> {
}
declare const CheckboxGroup: React.ForwardRefExoticComponent<CheckboxGroupProps & React.RefAttributes<HTMLDivElement>>;
export { CheckboxGroup };
