import { ReactNode } from 'react';
import { RateProps as C7NRateProps } from '../../../lib/rate';
import { FormField, FormFieldProps } from '../field/FormField';
import ValidationResult from '../validator/ValidationResult';
export interface RateProps extends C7NRateProps, FormFieldProps {
    defaultValue?: number;
    onChange?: (value: number) => any;
    value?: number;
}
export default class Rate<T extends RateProps> extends FormField<T> {
    static displayName: string;
    static propTypes: {
        id: import("prop-types").Requireable<string>;
        size: import("prop-types").Requireable<import("../core/enum").Size>;
        suffixCls: import("prop-types").Requireable<string>;
        prefixCls: import("prop-types").Requireable<string>;
        title: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
        disabled: import("prop-types").Requireable<boolean>;
        hidden: import("prop-types").Requireable<boolean>;
        autoFocus: import("prop-types").Requireable<boolean>;
        accessKey: import("prop-types").Requireable<string | boolean>;
        dir: import("prop-types").Requireable<string>;
        contentEditable: import("prop-types").Requireable<string | boolean>;
        draggable: import("prop-types").Requireable<string | boolean>;
        style: import("prop-types").Requireable<object>;
        className: import("prop-types").Requireable<string>;
        tabIndex: import("prop-types").Requireable<number>;
        lang: import("prop-types").Requireable<string>;
        spellCheck: import("prop-types").Requireable<boolean>;
        onFocus: import("prop-types").Requireable<(...args: any[]) => any>;
        onBlur: import("prop-types").Requireable<(...args: any[]) => any>;
        onClick: import("prop-types").Requireable<(...args: any[]) => any>;
        onDoubleClick: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseUp: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseDown: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseMove: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseEnter: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseLeave: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseOver: import("prop-types").Requireable<(...args: any[]) => any>;
        onMouseOut: import("prop-types").Requireable<(...args: any[]) => any>;
        onContextMenu: import("prop-types").Requireable<(...args: any[]) => any>;
        onKeyDown: import("prop-types").Requireable<(...args: any[]) => any>;
        onKeyUp: import("prop-types").Requireable<(...args: any[]) => any>;
        onKeyPress: import("prop-types").Requireable<(...args: any[]) => any>;
        dataSet: import("prop-types").Requireable<object>;
        _inTable: import("prop-types").Requireable<boolean>;
        type: import("prop-types").Requireable<string>;
        name: import("prop-types").Requireable<string>;
        value: import("prop-types").Requireable<any>;
        defaultValue: import("prop-types").Requireable<any>;
        required: import("prop-types").Requireable<boolean>;
        readOnly: import("prop-types").Requireable<boolean>;
        form: import("prop-types").Requireable<string>;
        dataIndex: import("prop-types").Requireable<number>;
        multiple: import("prop-types").Requireable<boolean>;
        range: import("prop-types").Requireable<boolean | (string | null | undefined)[]>;
        rowSpan: import("prop-types").Requireable<number>;
        newLine: import("prop-types").Requireable<boolean>;
        colSpan: import("prop-types").Requireable<number>;
        validator: import("prop-types").Requireable<(...args: any[]) => any>;
        onInvalid: import("prop-types").Requireable<(...args: any[]) => any>;
        help: import("prop-types").Requireable<string>;
        showHelp: import("prop-types").Requireable<import("../field/enum").ShowHelp>;
        renderer: import("prop-types").Requireable<(...args: any[]) => any>;
        validationRenderer: import("prop-types").Requireable<(...args: any[]) => any>;
        maxTagPlaceholder: import("prop-types").Requireable<string | number | boolean | {} | import("prop-types").ReactElementLike | import("prop-types").ReactNodeArray>;
        maxTagCount: import("prop-types").Requireable<number>;
        maxTagTextLength: import("prop-types").Requireable<number>;
        pristine: import("prop-types").Requireable<boolean>;
        trim: import("prop-types").Requireable<import("../data-set/enum").FieldTrim>;
        onBeforeChange: import("prop-types").Requireable<(...args: any[]) => any>;
        onChange: import("prop-types").Requireable<(...args: any[]) => any>;
        onInput: import("prop-types").Requireable<(...args: any[]) => any>;
        onEnterDown: import("prop-types").Requireable<(...args: any[]) => any>;
        fieldClassName: import("prop-types").Requireable<string>;
        highlight: import("prop-types").Requireable<string | number | boolean | {} | import("prop-types").ReactElementLike | import("prop-types").ReactNodeArray>;
        highlightRenderer: import("prop-types").Requireable<(...args: any[]) => any>;
        useColon: import("prop-types").Requireable<boolean>;
        showValidation: import("prop-types").Requireable<string>;
        character: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
    };
    static defaultProps: {
        suffixCls: string;
        readOnly: boolean;
        disabled: boolean;
        noValidate: boolean;
        trim: import("../data-set/enum").FieldTrim;
        character: JSX.Element;
    };
    static __PRO_RATE: boolean;
    static __IS_IN_CELL_EDITOR: boolean;
    get hasFloatLabel(): boolean;
    renderValidationResult(validationResult?: ValidationResult): ReactNode;
    onChange: (value: number) => void;
    handleHelpMouseEnter(e: any): void;
    handleHelpMouseLeave(): void;
    renderTooltipHelp(): ReactNode;
    renderFloatLabel(): ReactNode;
    getOtherProps(): any;
    renderWrapper(): ReactNode;
    renderHelpMessage(): ReactNode;
}
