import { default as React, HTMLAttributes } from 'react'; import { LabelProps } from '../Label'; import { RadioGroupThemeType } from './RadioGroup.themes'; import { RadioProps } from './components/Radio'; import { ItemRootProps } from './components/ItemRoot'; export type LabelGroupOrientation = 'horizontal' | 'vertical'; type RadioGroupBaseProps = Omit, 'onChange' | 'disabled'>; export type RadioContextProps = { /** * Currently selected value. */ value?: string; /** * The initial selected value of the Radio button. * Applies to a single Radio button. * * Used for the Uncontrolled RadioGroup. */ defaultValue?: string; /** * `name` attribute for `Radio`. * * Automatically applied to all Radio buttons. */ name: string; /** * `disabled` attribute for `Radio`. * * Automatically applied to all Radio buttons. */ isDisabled?: boolean; /** * Handler for the selected value. * * Automatically applied to all Radio buttons. */ onChange: (e: React.ChangeEvent) => void; }; export type RadioGroupProps = RadioGroupBaseProps & Omit & { onChange: (value: string) => void; /** * Object with CSS theme properties. */ theme: RadioGroupThemeType; /** * Responsible for vertical or horizontal alignment of RadioGroup. */ orientation?: LabelGroupOrientation; }; export type RadioGroupType = React.ForwardRefExoticComponent> & { /** * Radio component. */ Radio: React.ForwardRefExoticComponent>; /** * Label component. */ Label: React.ForwardRefExoticComponent>; /** * ItemRoot component. */ ItemRoot: React.FC; }; export {}; //# sourceMappingURL=RadioGroup.props.d.ts.map