import { ChangeEvent, HTMLProps, ReactNode } from 'react';
export type RadioCardOption = {
    /**
     * Value passed to the underlying input element.
     */
    value: string;
    /**
     * Card headline content.
     */
    label: string | ReactNode;
    /**
     * Optional description shown below the card headline.
     */
    description?: string | ReactNode;
    /**
     * Disables the option.
     *
     * @default false
     */
    disabled?: boolean;
    /**
     * Additional classes to apply to a single card.
     */
    className?: string;
};
export type RadioCardGroupProps = Omit<HTMLProps<HTMLDivElement>, 'onChange' | 'defaultValue'> & {
    /**
     * Name used for all radios in this group.
     */
    name: string;
    /**
     * List of selectable options.
     */
    options?: RadioCardOption[];
    /**
     * Selected value (controlled usage).
     */
    value?: string;
    /**
     * Initially selected value (uncontrolled usage).
     */
    defaultValue?: string;
    /**
     * Card layout variant.
     *
     * Possible values are: `'inline'`, `'stacked'` or `'stacked-horizontal'`.
     *
     * @default 'inline'
     */
    variant?: 'inline' | 'stacked' | 'stacked-horizontal';
    /**
     * Gap utility class used for the inline layout.
     *
     * @default 'gap-15'
     */
    gap?: string;
    /**
     * Callback invoked when selection changes.
     */
    onChange?: (value: string, event: ChangeEvent<HTMLInputElement>) => void;
    /**
     * Additional classes applied to each card.
     */
    cardClassName?: string;
};
type RadioCardItemProps = Omit<HTMLProps<HTMLLabelElement>, 'onClick' | 'onChange' | 'onBlur' | 'onFocus'> & {
    /**
     * Value passed to the underlying radio input.
     */
    value: string;
    /**
     * Disables this radio card.
     *
     * @default false
     */
    disabled?: boolean;
};
type InternalRadioCardItemProps = {
    _itemIndex?: number;
    _itemsCount?: number;
};
export declare const RadioCardItem: (props: RadioCardItemProps & InternalRadioCardItemProps) => import("react/jsx-runtime").JSX.Element;
type RadioCardIndicatorProps = Omit<HTMLProps<HTMLSpanElement>, 'children'>;
export declare const RadioCardIndicator: ({ className, ...remainingProps }: RadioCardIndicatorProps) => import("react/jsx-runtime").JSX.Element;
declare const RadioCardGroup: (props: RadioCardGroupProps) => import("react/jsx-runtime").JSX.Element;
export default RadioCardGroup;
