import React from 'react';
import type { CommandItem as CommandItemType } from './CommandPalette.types';
import { commandPaletteTheme } from './CommandPalette.theme';
/**
 * CommandItem Component Props
 */
export interface CommandItemProps {
    /** The command item data */
    command: CommandItemType;
    /** Index of the command in the list */
    index: number;
    /** Whether this command is currently highlighted */
    isHighlighted: boolean;
    /** Content to display at the start (icon, avatar, etc.) - overrides command.contentStart */
    contentStart?: React.ReactNode;
    /** Content to display at the end (keyboard shortcuts, badges, etc.) - overrides command.contentEnd */
    contentEnd?: React.ReactNode;
    /** Additional className for the command item */
    className?: string;
    /** Called when the command is clicked */
    onSelect: (command: CommandItemType) => void;
    /** Called when mouse enters the command */
    onMouseEnter: (index: number) => void;
    /** Theme overrides */
    theme?: typeof commandPaletteTheme;
}
/**
 * CommandItem Component
 *
 * Internal component used by CommandPalette to render individual command items.
 * Supports flexible content with contentStart (icons, avatars) and contentEnd (shortcuts, badges).
 *
 * @example
 * ```tsx
 * <CommandItem
 *   command={{
 *     id: 'user-profile',
 *     label: 'John Doe',
 *     subtitle: 'View profile',
 *     contentStart: <Avatar src="..." />,
 *     contentEnd: <Badge>Admin</Badge>,
 *     onSelect: () => navigate('/profile')
 *   }}
 *   index={0}
 *   isHighlighted={true}
 *   onSelect={handleSelect}
 *   onMouseEnter={setHighlightedIndex}
 * />
 * ```
 */
export declare const CommandItem: React.FC<CommandItemProps>;
