import { ComponentPropsWithRef, ReactNode } from 'react'; import { GetStatusProps } from '../shared/types.js'; type HTMLInputProps = ComponentPropsWithRef<'input'>; type FilteredHTMLInputProps = Omit; export type InputRadioScale = 'medium' | 'large'; export type InputRadioProps = FilteredHTMLInputProps & GetStatusProps & { id: string; label: ReactNode; value: string; name: string; scale?: InputRadioScale; /** @deprecated use `data-testid` instead */ testId?: string; 'data-testid'?: string; }; /** * - InputRadio supports both controlled and uncontrolled patterns: * - **Controlled**: Provide `checked` and `onChange` props. Use for inputs with complex interactions or when you need to programmatically control the checked state. * - **Uncontrolled**: Provide `defaultChecked` prop. Use for simple forms or when integrating with form libraries like react-hook-form. * - `id` is required to associate the input with the `label` and optional `message`. * - Use [InputRadioGroup](/docs/inputradiogroup--docs) to generate radio inputs for you via the `options` property. * - If you want, though, you can use InputRadio directly to render a single radio input. */ export declare const InputRadio: import('react').ForwardRefExoticComponent & import('react').RefAttributes>; export default InputRadio;