import React from 'react'; import { DefaultProps, FlowindColor, FlowindSize, Selectors } from '../../styles'; import { RatingItemStylesNames } from './rating-item/rating-item'; import useStyles from './rating.styles'; export type RatingStylesNames = Selectors | RatingItemStylesNames; export interface RatingProps extends DefaultProps, Omit, 'onChange'> { variant?: string; /** Default value for uncontrolled component */ defaultValue?: number; /** Value for controlled component */ value?: number; /** Called when value changes */ onChange?: (value: number) => void; /** The icon that is displayed when symbol is empty */ emptySymbol?: React.ReactNode | ((value: number) => React.ReactNode); /** This icon that is displayed when symbol is full */ fullSymbol?: React.ReactNode | ((value: number) => React.ReactNode); /** Number of fractions each item can be divided into, 1 by default */ fractions?: number; /** Controls component size */ size?: FlowindSize; /** Number of controls that should be rendered */ count?: number; /** Called when item is hovered */ onHover?: (value: number) => void; /** Function should return labelText for the symbols */ getSymbolLabel?: (value: number) => string; /** Name of rating, should be unique within the page */ name?: string; /** If true, you won't be able to interact */ readOnly?: boolean; /** If true, only the selected symbol will change to full symbol */ highlightSelectedOnly?: boolean; /** Key of theme.colors or any CSS color value, yellow by default */ color?: FlowindColor; } export declare const Rating: React.ForwardRefExoticComponent>;