import React from 'react'; import type { JSX } from 'react'; type Variant = 'default' | 'primary' | 'outlined'; type Size = 'sm' | 'md' | 'lg'; export interface RadioButtonProps { /** group name (required for radio behavior) */ name: string; /** this option's value */ value: string; /** controlled selected value for the group */ selectedValue?: string; /** uncontrolled checked (rare; prefer selectedValue on group) */ checked?: boolean; /** called with (value, event) */ onChange?: (value: string, event: React.ChangeEvent) => void; disabled?: boolean; label?: string; /** * Extra content rendered after the label (e.g. a status dot or badge). * The component owns the layout/spacing for this slot. */ endAdornment?: React.ReactNode; /** * Whether the endAdornment wrapper is hidden from assistive tech. * Defaults to true since endAdornment is typically decorative. */ endAdornmentAriaHidden?: boolean; variant?: Variant; size?: Size; containerLabel?: string; error?: string; helpText?: string; orientation?: 'vertical' | 'horizontal'; labelWidth?: string; fullWidth?: boolean; required?: boolean; /** * If true, do NOT wrap with InputContainer. * Use inside RadioGroup. */ noContainer?: boolean; id?: string; 'data-cy'?: string; } export declare function RadioButton({ name, value, selectedValue, checked, onChange, disabled, label, endAdornment, endAdornmentAriaHidden, variant, size, containerLabel, error, helpText, orientation, labelWidth, fullWidth, required, noContainer, id, 'data-cy': dataCy, }: RadioButtonProps): JSX.Element; export {};