import { CardProps } from '../Card';
import { RadioProps } from '../Radio/internal/Radio';
import { CheckboxProps } from '../Checkbox/internal/Checkbox';
/**
 * Props for the SelectCard component
 * @extends Omit<CardProps, "onChange" | "id">
 */
export interface SelectCardProps extends Omit<CardProps, "onChange" | "id"> {
    /**
     * Passes props to the underlying `<Checkbox />` component.
     */
    checkboxProps?: Omit<CheckboxProps, "label">;
    /**
     * Controlled state. When provided, the component becomes controlled.
     */
    checked?: boolean;
    /**
     * Uncontrolled initial state. Ignored when inside a `SelectCard.Group` that sets `defaultValue`.
     */
    defaultChecked?: boolean;
    /**
     * When `true`, disables the card.
     */
    disabled?: boolean;
    /**
     * When `true`, sets error styling on the card.
     */
    errored?: boolean;
    /**
     * A unique identifier for the card, used to track the selection state.
     */
    id: string | number;
    /**
     * Function called on selection state change.
     */
    onChange?: (value: boolean) => void;
    /**
     * Passes props to the underlying `<Radio />` component.
     */
    radioProps?: Omit<RadioProps, "label">;
    /**
     * Removes the drop shadow effect on the card.
     */
    removeDropShadow?: 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` prop on the
     * `SelectCard.Group`, and defaults to checkbox if no `SelectCard.Group` is used.
     * @default false
     */
    showSelectIndicator?: boolean;
}
/**
 * SelectCard component for creating interactive card-based selection interfaces.
 *
 * Features:
 * - Supports both single selection (radio) and multiple selection (checkbox) modes
 * - Automatic context detection for selection behavior
 * - Visual feedback for selected, disabled, and error states
 * - Accessible with proper ARIA roles and keyboard navigation
 * - Customizable styling through Card component props
 * - Hover and focus states with smooth transitions
 * - Integration with SelectCardGroup for grouped selection
 *
 * @example
 * <SelectCard
 *   id="option-1"
 *   onChange={(checked) => console.log('Selected:', checked)}
 * >
 *   <Text variant="headline" size="small">Option 1</Text>
 *   <Text>Description of option 1</Text>
 * </SelectCard>
 */
export declare const SelectCard: import('react').ForwardRefExoticComponent<SelectCardProps & import('react').RefAttributes<HTMLInputElement>> & {
    /**
     * 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
     *
     * @example
     * <SelectCard.Group
     *   legend="Choose your plan"
     *   selectionMode="single"
     *   onChange={(e, state) => console.log('Selection changed:', state)}
     * >
     *   <SelectCard id="basic" onChange={() => {}}>
     *     <Text variant="headline" size="small">Basic Plan</Text>
     *   </SelectCard>
     *   <SelectCard id="premium" onChange={() => {}}>
     *     <Text variant="headline" size="small">Premium Plan</Text>
     *   </SelectCard>
     * </SelectCard.Group>
     */
    Group: import('react').ForwardRefExoticComponent<import('./SelectCardGroup').SelectCardGroupProps & import('react').RefAttributes<HTMLInputElement>>;
};
