UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

48 lines (47 loc) 1.62 kB
import { Component, CSSProperties, KeyboardEventHandler, MouseEventHandler, ReactNode } from 'react'; import CheckboxGroup, { CheckboxGroupContext } from './Group'; import CheckboxContext from './CheckboxContext'; export interface AbstractCheckboxProps<T> { prefixCls?: string; className?: string; defaultChecked?: boolean; checked?: boolean; style?: CSSProperties; disabled?: boolean; onChange?: (e: T) => void; onMouseEnter?: MouseEventHandler<any>; onMouseLeave?: MouseEventHandler<any>; onKeyPress?: KeyboardEventHandler<any>; onKeyDown?: KeyboardEventHandler<any>; value?: any; tabIndex?: number; name?: string; children?: ReactNode; } export interface CheckboxProps extends AbstractCheckboxProps<CheckboxChangeEvent> { indeterminate?: boolean; } export interface CheckboxChangeEventTarget extends CheckboxProps { checked: boolean; } export interface CheckboxChangeEvent { target: CheckboxChangeEventTarget; stopPropagation: () => void; preventDefault: () => void; nativeEvent: MouseEvent; } export default class Checkbox extends Component<CheckboxProps, {}> { static displayName: string; static Group: typeof CheckboxGroup; static defaultProps: { indeterminate: boolean; }; static get contextType(): typeof CheckboxContext; context: CheckboxGroupContext; private rcCheckbox; shouldComponentUpdate(nextProps: CheckboxProps, nextState: {}, nextContext: CheckboxGroupContext): boolean; focus(): void; blur(): void; saveCheckbox: (node: any) => void; render(): JSX.Element; }