import { type Component, type InputHTMLAttributes, type HTMLAttributes, type VNode } from 'vue'; import { type OUIAProps } from '../helpers/ouia'; interface Props extends OUIAProps, /* @vue-ignore */ Omit { /** Sets the radio wrapper component to render. Defaults to "div", or "label" with labelWrapped. */ component?: string | Component; /** Additional classes added to the input. */ inputClass?: HTMLAttributes['class']; /** Id of the radio. Generated when not set. */ id?: string; /** Value of the radio, emitted as the model value when it gets selected. */ value?: T; /** Value of the selected radio of the group, bound with v-model. The radio is checked when it equals value. */ modelValue?: T; /** Flag to show if the radio is checked, when it is not bound with v-model. */ checked?: boolean; /** Flag to show if the radio is disabled. */ disabled?: boolean; /** Flag to show if the radio selection is invalid. */ invalid?: boolean; /** Label text of the radio. */ label?: string; /** Aria label for the radio, used only without a label. */ ariaLabel?: string; /** Description text of the radio. The input is described by it, unless aria-describedby is set ("" removes it). */ description?: string; /** Body of the radio. */ body?: string; /** Flag to indicate whether the radio wrapper element is a