import { ComponentOptionsMixin } from 'vue'; import { ComponentProvideOptions } from 'vue'; import { ComputedRef } from 'vue'; import { DefineComponent } from 'vue'; import { ExtractPropTypes } from 'vue'; import { InjectionKey } from 'vue'; import { PropType } from 'vue'; import { PublicProps } from 'vue'; declare type __VLS_NonUndefinedable = T extends undefined ? never : T; declare type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; declare type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: PropType<__VLS_NonUndefinedable>; } : { type: PropType; required: true; }; }; declare type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; declare type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; declare const _default: __VLS_WithTemplateSlots, { variant: string; fullWidth: boolean; modelValue: undefined; name: undefined; options: undefined; orientation: string; }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, { "update:modelValue": (value: string) => void; }, string, PublicProps, Readonly, { variant: string; fullWidth: boolean; modelValue: undefined; name: undefined; options: undefined; orientation: string; }>>> & Readonly<{ "onUpdate:modelValue"?: ((value: string) => any) | undefined; }>, { name: string; options: RadioGroupOption[]; modelValue: string; variant: "button" | "radio" | "tile" | "chip"; fullWidth: boolean; orientation: "horizontal" | "vertical"; }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>, { default?(_: {}): any; }>; export default _default; declare interface FieldProps { /** * Adds spacing under the field that is consistent whether hint/error text is displayed. */ addBottomSpace?: boolean; /** * Error text to display. Replaces `hintText` (if provided) & adds error styling. */ errorText?: string; /** * Displays text below the input; hidden when the isReadOnly prop is truthy. */ hintText?: string; /** * ID for the Label and Input; must be unique */ id?: string; /** * ID for the error text element; useful for aria-errormessage */ errorId?: string; /** * Whether it's a readonly field. */ isReadOnly?: boolean; /** * Whether the field is required. */ isRequired?: boolean; /** * Label to render above the input. */ label?: string; /** * Show "(optional)" to the right of the label text */ showOptionalInLabel?: boolean; /** * Indicates whether the label should be visually hidden (screen reader only). */ isLabelSrOnly?: boolean; /** * Indicates wheter the field is a fieldset or not */ fieldset?: boolean; /** * Indicates whether the field is disabled. */ isDisabled?: boolean; /** * Indicates whether the field is disabled. * * @deprecated Use `isDisabled` instead. */ disabled?: boolean; } export declare const RADIO_GROUP_INJECTION: { key: InjectionKey; }; /** * Properties and utilities provided to children of a RadioGroup instance */ export declare interface RadioGroupInjection { /** * This type should match RadioGroupProps['disabled'] */ disabled: ComputedRef; /** * This type should match RadioGroupProps['fullWidth'] */ fullWidth: ComputedRef; /** * This type should match RadioGroupProps['modelValue'] */ modelValue: ComputedRef; /** * This type should match RadioGroupProps['name'] */ name: ComputedRef; /** * This type should match RadioGroupProps['options'] */ options: ComputedRef; /** * Triggered when the user changes their selection; updates the v-model. */ update: (e: Event) => void; /** * This type should match RadioGroupProps['variant'] * @default 'radio' */ variant: ComputedRef; /** * Default orientation. If the variant is `button` and the group is wider than its parent it will be displayed in a column, and this prop will be ignored. * * Note: This does not work with the deprecated `options` prop. Update those instances to use the `RadioNew` component and default slot. */ orientation?: ComputedRef<'horizontal' | 'vertical'>; } /** * An individual radio `` within a RadioGroup instance */ export declare interface RadioGroupOption { /** * Disables the RadioGroupOption if truthy */ disabled?: boolean; /** * The unique identifier for the option */ id: number | string; /** * The text to be displayed for the option */ text: string; /** * The value of the option. Used for the modelValue of the RadioGroup. */ value: string; /** * The subtitle for tile variant */ subTitle?: string; /** * The subtext for tile variant */ subText?: string; } export declare interface RadioGroupProps extends FieldProps { /** * Passed to the "name" attribute of the `` elements within the RadioGroup. */ name?: string; /** * Deprecated - Compose your radio group with the `Radio` component instead * @deprecated */ options?: RadioGroupOption[]; /** * The value of the selected radio option. Use this prop with the `update:modelValue` event to create a controlled component. */ modelValue?: RadioGroupOption['value']; /** * @defaultValue 'radio' */ variant?: RadioGroupVariants; /** * Whether the group should expand to the parent's width */ fullWidth?: boolean; /** * Default orientation. If the variant is `button` and the group is wider than its parent it will be displayed in a column, and this prop will be ignored. * * Note: This does not work with the deprecated `options` prop. Update those instances to use the `RadioNew` component and default slot. * * @defaultValue 'horizontal' */ orientation?: 'horizontal' | 'vertical'; } export declare enum RadioGroupVariant { Radio = "radio", Button = "button", Chip = "chip", Tile = "tile" } export declare type RadioGroupVariants = `${RadioGroupVariant}`; export { }