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;