import { ReactNode } from 'react';
import { CheckboxGroupProps } from '../Checkbox/CheckboxGroup';
import { ISelectCardContext } from './internal/SelectCardContext';
/**
 * Props for the SelectCardGroup component
 * @extends Omit<ISelectCardContext, "radioName" | "selection">
 */
export interface SelectCardGroupProps extends Omit<ISelectCardContext, "radioName" | "selection">, Pick<CheckboxGroupProps, "moreInfo"> {
    /**
     * Associates the legend with content below.
     */
    ariaLabelledBy?: string;
    children?: ReactNode;
    /**
     * Initial selection state for uncontrolled usage.
     * Array of `SelectCard` ids that are selected on first render.
     * Takes precedence over individual `SelectCard` `defaultChecked` props.
     */
    defaultValue?: Array<string | number>;
    /**
     * Sets the legend on the group.
     */
    legend: CheckboxGroupProps["legend"];
    /**
     * Additional props for the legend `FieldLabel` (for example `aiMark`, `className`).
     */
    legendProps?: CheckboxGroupProps["legendProps"];
    /**
     * When `true`, sets "required" text in label.
     * @accessibility This does not enforce error when nothing is selected.
     * @default false
     */
    required?: boolean;
    /**
     * When `true`, displays a checkbox or radio indicator in a separate column on the left side of the card.
     * The indicator type (checkbox or radio) is automatically determined by the `selectionMode` setting.
     * @default false
     */
    showSelectIndicator?: boolean;
    /**
     * Controlled selection state. When provided, the group becomes controlled.
     * Array of `SelectCard` ids that are currently selected.
     */
    value?: Array<string | number>;
}
/**
 * SelectCardGroup component for managing groups of selectable cards.
 *
 * Features:
 * - Manages selection state for multiple SelectCard components
 * - Supports both single and multiple selection modes
 * - Provides proper accessibility with legends and ARIA labels
 * - Handles required field validation
 * - Automatic radio button grouping for single selection
 * - Context provider for child SelectCard components
 * - Integrates with CheckboxGroup and RadioGroup for proper form semantics
 * - Supports AI mark indicator
 *
 * @example
 * <SelectCardGroup
 *   legend="Choose your plan"
 *   selectionMode="single"
 *   onChange={(e, state) => console.log('Selection changed:', state)}
 *   legendProps={{ aiMark: true }}
 * >
 *   <SelectCard id="basic" onChange={() => {}}>
 *     <Text variant="headline" size="small" el="h3">Basic Plan</Text>
 *   </SelectCard>
 *   <SelectCard id="premium" onChange={() => {}}>
 *     <Text variant="headline" size="small" el="h3">Premium Plan</Text>
 *   </SelectCard>
 * </SelectCardGroup>
 */
export declare const SelectCardGroup: import('react').ForwardRefExoticComponent<SelectCardGroupProps & import('react').RefAttributes<HTMLInputElement>>;
