@alifd/next
Version:
A configurable component library for web built on React.
66 lines (65 loc) • 3.12 kB
TypeScript
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<RadioWithContextProps, RadioState> {
static displayName: string;
static propTypes: {
className: PropTypes.Requireable<string>;
id: PropTypes.Requireable<string>;
style: PropTypes.Requireable<object>;
checked: PropTypes.Requireable<boolean>;
defaultChecked: PropTypes.Requireable<boolean>;
label: PropTypes.Requireable<PropTypes.ReactNodeLike>;
onChange: PropTypes.Requireable<(...args: any[]) => any>;
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
disabled: PropTypes.Requireable<boolean>;
value: PropTypes.Requireable<NonNullable<string | number | boolean | null | undefined>>;
name: PropTypes.Requireable<string>;
isPreview: PropTypes.Requireable<boolean>;
renderPreview: PropTypes.Requireable<(...args: any[]) => any>;
prefix: PropTypes.Requireable<string>;
locale: PropTypes.Requireable<object>;
defaultPropsConfig: PropTypes.Requireable<object>;
errorBoundary: PropTypes.Requireable<NonNullable<boolean | object | null | undefined>>;
pure: PropTypes.Requireable<boolean>;
warning: PropTypes.Requireable<boolean>;
rtl: PropTypes.Requireable<boolean>;
device: PropTypes.Requireable<string>;
children: PropTypes.Requireable<any>;
popupContainer: PropTypes.Requireable<any>;
};
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<boolean>;
isButton: PropTypes.Requireable<boolean>;
selectedValue: PropTypes.Requireable<NonNullable<string | number | boolean | null | undefined>>;
disabled: PropTypes.Requireable<boolean>;
};
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<HTMLInputElement>): void;
focus(): void;
render(): React.JSX.Element;
}
export type { Radio };
declare const _default: import("../config-provider/types").ConfiguredComponentClass<import("./types").RadioProps & import("../config-provider/types").ComponentCommonProps, import("./types").WrappedRadio, {}>;
export default _default;