import React from 'react';
export interface RadioGroupProps {
/**
* Radio group name (required for form submission)
*/
name: string;
/**
* Controlled value
*/
value?: string;
/**
* Default value (uncontrolled)
*/
defaultValue?: string;
/**
* Callback when value changes
*/
onChange?: (value: string) => void;
/**
* Callback when value changes (alias for onChange)
*/
onValueChange?: (value: string) => void;
/**
* Radio group content (for composable API)
*/
children?: React.ReactNode;
/**
* Custom className
*/
className?: string;
/**
* Radio group size
* @default 'md'
*/
size?: 'sm' | 'md';
/**
* Orientation of radio items
* @default 'vertical'
*/
orientation?: 'horizontal' | 'vertical';
/**
* Disable all radio items
* @default false
*/
disabled?: boolean;
}
/**
* RadioGroup Component
*
* A versatile radio group component that allows users to select one option from a set.
* Supports both composable API (recommended) and declarative API (deprecated).
*
* @public
*
* @example
* ```tsx
* // Composable API (recommended)
*
* Select an option
*
*
* Option 1
*
*
*
* Option 2
*
* Please select an option
*
*
* ```
*
* @remarks
* - Composable API provides maximum flexibility and control
* - All sub-components (RadioItem, RadioItemInput, RadioItemLabel, etc.) support `asChild`
* - Supports controlled and uncontrolled modes
* - Automatically generates accessible IDs for labels and error messages
* - Accessible: includes ARIA attributes and keyboard navigation
*/
export declare const RadioGroup: React.ForwardRefExoticComponent>;
export declare const RadioGroupItem: ({ children, ...props }: {
children?: React.ReactNode;
[key: string]: any;
}) => import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=RadioGroup.d.ts.map