/**
 * @file Rating
 * @description
 * @author fex
 */
import React from 'react';
import type { RatingPositionType, RatingProps } from '../types';
export default class Rating extends React.Component<RatingProps, any> {
    static defaultProps: {
        containerClass: string;
        readOnly: boolean;
        half: boolean;
        allowClear: boolean;
        value: number;
        count: number;
        char: JSX.Element;
        colors: {
            '2': string;
            '3': string;
            '5': string;
        };
        textPosition: RatingPositionType;
    };
    starsNode: Record<string, any>;
    constructor(props: RatingProps);
    componentDidMount(): void;
    componentDidUpdate(prevProps: RatingProps): void;
    sortKeys(map: {
        [propName: number]: string;
    }): string[];
    getShowColorAndText(value: number): void;
    getRate(): number;
    getStars(activeCount?: number): {
        active: boolean;
    }[];
    saveRef(index: number): (node: HTMLLIElement) => HTMLLIElement;
    mouseOver(event: React.ChangeEvent<any>, index: number): void;
    onHoverChange(value: number): void;
    moreThanHalf(event: any, index: number): boolean;
    mouseLeave(): void;
    handleStarMouseLeave(event: any, index: number): void;
    handleClick(event: React.ChangeEvent<any>, index: number): void;
    renderStars(): JSX.Element;
    renderText(): JSX.Element | null;
    render(): JSX.Element;
}
