import React, { type ChangeEvent } from 'react'; import PropTypes from 'prop-types'; import UIState, { type UIStateState } from '../mixin-ui-state'; import type { RadioContext, RadioWithContextProps } from './types'; interface RadioState extends UIStateState { checked?: boolean; } declare class Radio extends UIState { static displayName: string; static propTypes: { className: PropTypes.Requireable; id: PropTypes.Requireable; style: PropTypes.Requireable; checked: PropTypes.Requireable; defaultChecked: PropTypes.Requireable; label: PropTypes.Requireable; onChange: PropTypes.Requireable<(...args: any[]) => any>; onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>; onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>; disabled: PropTypes.Requireable; value: PropTypes.Requireable>; name: PropTypes.Requireable; isPreview: PropTypes.Requireable; renderPreview: PropTypes.Requireable<(...args: any[]) => any>; prefix: PropTypes.Requireable; locale: PropTypes.Requireable; defaultPropsConfig: PropTypes.Requireable; errorBoundary: PropTypes.Requireable>; pure: PropTypes.Requireable; warning: PropTypes.Requireable; rtl: PropTypes.Requireable; device: PropTypes.Requireable; children: PropTypes.Requireable; popupContainer: PropTypes.Requireable; }; static defaultProps: { onChange: () => void; onMouseLeave: () => void; onMouseEnter: () => void; tabIndex: number; prefix: string; isPreview: boolean; }; static contextTypes: { onChange: PropTypes.Requireable<(...args: any[]) => any>; __group__: PropTypes.Requireable; isButton: PropTypes.Requireable; selectedValue: PropTypes.Requireable>; disabled: PropTypes.Requireable; }; static getDerivedStateFromProps(nextProps: RadioWithContextProps): { checked: boolean | undefined; } | null; radioRef: HTMLInputElement | null; constructor(props: RadioWithContextProps); get disabled(): boolean | undefined; shouldComponentUpdate(nextProps: RadioWithContextProps, nextState: RadioState, nextContext: RadioContext): boolean; componentDidUpdate(): void; onChange(e: ChangeEvent): void; focus(): void; render(): React.JSX.Element; } export type { Radio }; declare const _default: import("../config-provider/types").ConfiguredComponentClass; export default _default;