import type { RadioProps } from './Radio'; import type { Ref } from 'vue'; export interface RadioChangeEventTarget extends RadioProps { checked: boolean; } export type RadioGroupButtonStyle = 'outline' | 'solid'; export type RadioGroupOptionType = 'default' | 'button'; export interface RadioChangeEvent { target: RadioChangeEventTarget; stopPropagation: () => void; preventDefault: () => void; nativeEvent: MouseEvent; } export interface RadioGroupContext { onChange: (e: RadioChangeEvent) => void; value: Ref; disabled: Ref; name: Ref; /** * Control the appearance for Radio to display as button or not * * @default 'default' * @internal */ optionType?: Ref; } export type RadioOptionTypeContextProps = RadioGroupOptionType;