/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { SVGIcon } from '@progress/kendo-vue-common'; import { RatingItemMouseEvent } from './RatingEvents'; /** * Represents the properties of [RatingItem](% slug api_inputs_ratingitem %) component. */ export interface RatingItemProps { /** * Sets the `id` property of the top div element of the RatingItem. */ id?: string; /** * Sets the `tabIndex` attribute. */ tabIndex?: number; /** * Determines if icon is partly selected. */ half?: boolean; /** * Determines the RatingItem direction `ltr` - by default, or `rtl`. */ dir?: string; /** * Sets the current value of the RatingItem, used in controlled mode. */ value: number; /** * Sets the title of current RatingItem component. [See example]({% slug controlled_rating %}) */ title?: string; /** * Sets the icon of current RatingItem component. [See example]({% slug label_rating %}) */ icon?: any; /** * Sets custom Rating SVG icon. */ svgIcon?: SVGIcon; /** * Sets custom Rating SVG icon. */ svgIconOutline?: SVGIcon; /** * Determines if current RatingItem is selected. [See example]({% slug item_customization_ratingitem %}) */ selected?: boolean; /** * Determines if some of the RatingItems are selected. * [See example]({% slug item_customization_ratingitem %}) */ haveSelectedValue?: boolean; /** * Determines if current RatingItem is hovered. */ hovered?: boolean; /** * @hidden */ item?: any; /** * @hidden */ itemTemplate?: any; /** * Triggered after `onClick` event. Gets outside access to the target element, the new value and the event type. */ onClick?: (event: RatingItemMouseEvent) => void; /** * Triggered after `onKeyDown` event. Gets outside access to the target element, the new value and the event type. */ onKeyDown?: (event: KeyboardEvent) => void; /** * Triggered after `onFocus` event. Gets outside access to the target element and the event type. */ onFocus?: (event: FocusEvent) => void; /** * Triggered after `onBlur` event. Gets outside access to the target element and the event type. */ onBlur?: (event: FocusEvent) => void; /** * Triggered after `onMouseEnter` event. Gets outside access to the target element and the event type. */ onMouseEnter?: (event: RatingItemMouseEvent) => void; /** * Triggered after `onMouseLeave` event. Gets outside access to the target element and the event type. */ onMouseLeave?: (event: RatingItemMouseEvent) => void; /** * Triggered after `onMouseMove` event. Gets outside access to the target element and the event type. */ onMouseMove?: (event: RatingItemMouseEvent) => void; }