import * as React from 'react'; import { IDisableable, ICanBeReadonly, IHasCX, IHasRawProps, IHasForwardedRef, IControlled } from '@epam/uui-core'; export interface BaseRatingProps extends IHasCX, IDisableable, IControlled, ICanBeReadonly, IHasRawProps>, IHasForwardedRef { from?: number; to?: number; /** * @default 1 */ step?: 0.5 | 1; renderRating?: (rating: number, markWidth: number, numberOfMarks: number) => React.ReactNode; } interface BaseRatingState { rating?: number; containerWidth?: number; } export declare class BaseRating extends React.Component, BaseRatingState> { container: HTMLElement | null; isPointerMoveSubscribed: boolean; constructor(props: BaseRatingProps); componentDidMount(): void; componentDidUpdate(prevProps: BaseRatingProps): void; getContainerWidth(): number; getContainerOffsetLeft(): number; getNumberOfMarks(): number; getMarkWidth(): number; checkRating(rating: number): number; getRatingFromWidth(width: number): number; onPointerMove(e: React.PointerEvent): void; handleWindowPointerMove: (e: PointerEvent) => void; unsubscribePointerMove: () => void; resetRatingToValue: () => void; onPointerUp(e: React.PointerEvent): void; onTouchEnd(e: React.TouchEvent): void; onKeyDown(e: React.KeyboardEvent): void; handleRef: (container: HTMLDivElement) => void; onPointerLeave: () => void; render(): React.JSX.Element; } export {}; //# sourceMappingURL=BaseRating.d.ts.map