import { FC, HTMLAttributes, KeyboardEvent, ReactNode, Ref, MouseEvent } from 'react'; export interface OptionProps extends Omit, 'onSelect'> { /** * Whether this option is currently selected. */ selected?: boolean; /** * The unique value associated with this option. * Used in change callbacks and for identity comparisons. */ value: string | number; /** * The content displayed for this option. * Can include text, icons, or complex markup. */ children?: ReactNode; /** * If true, the option can receive keyboard focus. */ focusable?: boolean; /** * Size of the option for visual styling. */ size?: 'small' | 'medium' | 'large'; /** * Callback fired when the option is selected via click or keyboard. * * @param event - The triggering event (mouse or keyboard) * @param value - The associated option value */ onSelect?(event: MouseEvent | KeyboardEvent, value: string | number): void; /** * Ref forwarded to the root div of the option. * Useful for scroll management or focus handling in virtualized lists. */ ref?: Ref; } /** An Option is a single item within a Dropdown, Select, or similar list-based UI component, representing a choice that can be selected by the user */ export declare const Option: FC;