import type { ChangeEvent, ReactNode } from 'react'; import type { SingleSelection } from '@brix-ui/hooks/use-single-selection'; import type { FormComponent } from '@brix-ui/types/component'; export interface RadioGroupProps extends Omit, 'isReadonly'> { name: string; children: ReactNode | ((props: RadioGroupValue) => ReactNode); } export interface RadioGroupState extends Pick, 'value' | 'options'> { isDisabled: boolean | undefined; isInvalid: boolean | undefined; isRequired: boolean | undefined; } export interface RadioGroupValue extends Pick, RadioGroupState { dispatcher: SingleSelection['dispatch']; handleChange(optionValue: string, event: ChangeEvent): void; }