import { DetailedHTMLProps } from 'react';
import type { ForwardRefComponent } from '@fluentui/react-utilities';
import { ForwardRefExoticComponent } from 'react';
import { HTMLAttributes } from 'react';
import { RatingContextValues } from '@fluentui/react-rating';
import type { RatingItemBaseState } from '@fluentui/react-rating';
import { RatingItemBaseProps as RatingItemProps } from '@fluentui/react-rating';
import { RatingItemSlots } from '@fluentui/react-rating';
import { RatingBaseProps as RatingProps } from '@fluentui/react-rating';
import { RatingSlots } from '@fluentui/react-rating';
import { RatingBaseState as RatingState } from '@fluentui/react-rating';
import type * as React_2 from 'react';
import { RefAttributes } from '@fluentui/react-utilities';
import { renderRating_unstable as renderRating } from '@fluentui/react-rating';
import { renderRatingItem_unstable as renderRatingItem } from '@fluentui/react-rating';
import { useRatingBase_unstable as useRating } from '@fluentui/react-rating';
import { useRatingItemContextValue_unstable as useRatingItemContextValue } from '@fluentui/react-rating';
/**
* A rating component for displaying star ratings.
*/
export declare const Rating: ForwardRefComponent;
export { RatingContextValues }
/**
* A RatingItem component representing a single star/icon within a Rating.
*/
export declare const RatingItem: ForwardRefExoticComponent, "root"> & Omit<{
as?: "span" | undefined;
} & Omit, HTMLSpanElement>, "children"> & {
children?: any;
}, "ref"> & {
value?: number;
} & RefAttributes>;
/**
* Context value provided by Rating and RatingDisplay to their items.
*/
export declare type RatingItemContextValue = ReturnType;
export { RatingItemProps }
export { RatingItemSlots }
/**
* RatingItem component state
*/
export declare type RatingItemState = RatingItemBaseState & {
root: {
/**
* Data attribute reflecting the appearance of the rating item. Value is 'filled', 'filled-half', or 'outline'.
*/
'data-appearance'?: 'filled' | 'filled-half' | 'outline';
};
};
export { RatingProps }
export { RatingSlots }
export { RatingState }
export { renderRating }
export { renderRatingItem }
export { useRating }
export declare const useRatingContextValues: (state: RatingState) => RatingContextValues;
/**
* Returns the state for a RatingItem component, given its props and ref.
* The returned state can be modified with hooks before being passed to `renderRatingItem`.
*/
export declare const useRatingItem: (props: RatingItemProps, ref: React_2.Ref) => RatingItemState;
export { useRatingItemContextValue }
export { }