import { ElementType, HTMLAttributes, KeyboardEvent, MouseEvent, ReactNode } from 'react'; import { PolymorphicRefForwardingComponent } from '../../helpers'; import type { Colors } from '../../types'; export interface CChipProps extends HTMLAttributes { /** * Toggles the active state of the React Chip component for non-selectable usage. */ active?: boolean; /** * Provides an accessible label for the remove button in the React Chip component. */ ariaRemoveLabel?: string; /** * Specifies the root element or custom component used by the React Chip component. */ as?: ElementType; /** * Adds custom classes to the React Chip root element. */ className?: string; /** * Enables interactive hover styling and pointer cursor for the React Chip component. */ clickable?: boolean; /** * Sets the contextual color of the React Chip component using CoreUI theme colors. * * @type 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'light' | string */ color?: Colors; /** * Disables the React Chip component and removes interactive behavior. */ disabled?: boolean; /** * Callback fired when the React Chip component becomes deselected. */ onDeselect?: (event: MouseEvent | KeyboardEvent) => void; /** * Callback fired when the React Chip component requests removal by button click or keyboard action. */ onRemove?: (event: MouseEvent | KeyboardEvent) => void; /** * Callback fired when the React Chip component becomes selected. */ onSelect?: (event: MouseEvent | KeyboardEvent) => void; /** * Callback fired when the selected state of the React Chip component changes. */ onSelectedChange?: (selected: boolean, event: MouseEvent | KeyboardEvent) => void; /** * Displays a remove button inside the React Chip component. */ removable?: boolean; /** * Replaces the default remove icon with a custom icon node in the React Chip component. */ removeIcon?: ReactNode; /** * Enables selectable behavior and keyboard toggle support for the React Chip component. */ selectable?: boolean; /** * Controls the selected state of a selectable React Chip component. */ selected?: boolean; /** * Sets the size of the React Chip component to small or large. */ size?: 'sm' | 'lg'; /** * Sets the visual variant of the React Chip component to outline style. */ variant?: 'outline'; } export declare const CChip: PolymorphicRefForwardingComponent<'span', CChipProps>;