import { CSSProperties, VNode, PropType } from 'vue'; import { strings } from '@douyinfe/semi-foundation/lib/es/radio/constants'; import { RadioChangeEvent } from '@douyinfe/semi-foundation/lib/es/radio/radioInnerFoundation'; import { ArrayElement } from '../_base/base'; import { RadioType } from './radio'; import { RadioGroupButtonSize, RadioMode } from './context'; import { CombineProps } from '../interface'; export interface OptionItem { label?: VNode | string; value?: string | number | boolean; disabled?: boolean; extra?: VNode | string; style?: CSSProperties; className?: string; addonId?: string; addonStyle?: CSSProperties; addonClassName?: string; extraId?: string; } export type Options = string[] | Array; export type RadioGroupProps = { defaultValue?: string | number | boolean; disabled?: boolean; name?: string; options?: Options; value?: string | number | boolean; onChange?: (event: RadioChangeEvent) => void; className?: string; style?: CSSProperties; direction?: ArrayElement; mode?: RadioMode; type?: RadioType; buttonSize?: RadioGroupButtonSize; prefixCls?: string; 'aria-label'?: any; 'aria-describedby'?: any; 'aria-errormessage'?: any; 'aria-invalid'?: any; 'aria-labelledby'?: any; 'aria-required'?: any; id?: string; 'onUpdate:value'?: (v: any) => void; }; export interface RadioGroupState { value?: any; } export declare const vuePropsType: CombineProps; declare const RadioGroup: import("vue").DefineComponent | { type: PropType; default?: any; required?: false; }; disabled: PropType | { type: PropType; default?: any; required?: false; }; name: PropType | { type: PropType; default?: any; required?: false; }; options: PropType | { type: PropType; default?: any; required?: false; }; value: PropType | { type: PropType; default?: any; required?: false; }; onChange: PropType<(event: RadioChangeEvent) => void> | { type: PropType<(event: RadioChangeEvent) => void>; default?: any; required?: false; }; className: PropType | { type: PropType; default?: any; required?: false; }; style: PropType | { type: PropType; default?: any; required?: false; }; direction: PropType<"horizontal" | "vertical"> | { type: PropType<"horizontal" | "vertical">; default?: any; required?: false; }; mode: PropType<"" | "advanced"> | { type: PropType<"" | "advanced">; default?: any; required?: false; }; type: PropType | { type: PropType; default?: any; required?: false; }; buttonSize: PropType<"small" | "large" | "middle"> | { type: PropType<"small" | "large" | "middle">; default?: any; required?: false; }; prefixCls: PropType | { type: PropType; default?: any; required?: false; }; 'aria-label': PropType | { type: PropType; default?: any; required?: false; }; 'aria-describedby': PropType | { type: PropType; default?: any; required?: false; }; 'aria-errormessage': PropType | { type: PropType; default?: any; required?: false; }; 'aria-invalid': PropType | { type: PropType; default?: any; required?: false; }; 'aria-labelledby': PropType | { type: PropType; default?: any; required?: false; }; 'aria-required': PropType | { type: PropType; default?: any; required?: false; }; id: PropType | { type: PropType; default?: any; required?: false; }; 'onUpdate:value': PropType<(v: any) => void> | { type: PropType<(v: any) => void>; default?: any; required?: false; }; }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly | { type: PropType; default?: any; required?: false; }; disabled: PropType | { type: PropType; default?: any; required?: false; }; name: PropType | { type: PropType; default?: any; required?: false; }; options: PropType | { type: PropType; default?: any; required?: false; }; value: PropType | { type: PropType; default?: any; required?: false; }; onChange: PropType<(event: RadioChangeEvent) => void> | { type: PropType<(event: RadioChangeEvent) => void>; default?: any; required?: false; }; className: PropType | { type: PropType; default?: any; required?: false; }; style: PropType | { type: PropType; default?: any; required?: false; }; direction: PropType<"horizontal" | "vertical"> | { type: PropType<"horizontal" | "vertical">; default?: any; required?: false; }; mode: PropType<"" | "advanced"> | { type: PropType<"" | "advanced">; default?: any; required?: false; }; type: PropType | { type: PropType; default?: any; required?: false; }; buttonSize: PropType<"small" | "large" | "middle"> | { type: PropType<"small" | "large" | "middle">; default?: any; required?: false; }; prefixCls: PropType | { type: PropType; default?: any; required?: false; }; 'aria-label': PropType | { type: PropType; default?: any; required?: false; }; 'aria-describedby': PropType | { type: PropType; default?: any; required?: false; }; 'aria-errormessage': PropType | { type: PropType; default?: any; required?: false; }; 'aria-invalid': PropType | { type: PropType; default?: any; required?: false; }; 'aria-labelledby': PropType | { type: PropType; default?: any; required?: false; }; 'aria-required': PropType | { type: PropType; default?: any; required?: false; }; id: PropType | { type: PropType; default?: any; required?: false; }; 'onUpdate:value': PropType<(v: any) => void> | { type: PropType<(v: any) => void>; default?: any; required?: false; }; }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default RadioGroup;