/// <reference types="node" />
import React, { ReactNode } from 'react';
import { PureComponent } from '../component';
import { OriginRateProps } from './Props';
interface RateState {
    hover: number;
    highlight: number;
}
declare class Rate extends PureComponent<OriginRateProps, RateState> {
    static defaultProps: {
        repeat: boolean;
        max: number;
        size: number;
        text: never[];
        value: number;
        className: string;
        style: React.CSSProperties;
        type: string;
    };
    highlightTimer: NodeJS.Timeout;
    constructor(props: OriginRateProps);
    getValue(): number;
    getStyle(): React.CSSProperties | undefined;
    getScale(): {
        transform: string;
    } | undefined;
    getIcon(icons: ReactNode | ReactNode[], i: number, isBg?: boolean): {} | null | undefined;
    handleClick(value: number, e: React.MouseEvent): void;
    handleHover(hover: number): void;
    handleMove(hover: number, e: React.MouseEvent<HTMLSpanElement>): void;
    renderBackground(): JSX.Element;
    renderRate(): JSX.Element;
    renderStatic(): JSX.Element;
    render(): JSX.Element;
}
export default Rate;
