/// import { ComponentClass, MouseEvent, ReactNode } from 'react'; import { PassTroughFunction } from '../../utils/getPassThrough'; export interface ListItemNodeProps { className?: string; disabled?: boolean; onClick(event: MouseEvent): void; onMouseDown(event: MouseEvent): void; onMouseEnter(event: MouseEvent): void; onMouseLeave(event: MouseEvent): void; } export interface ListItemFactoryArgs { ListItemNode: ComponentClass; passthrough: PassTroughFunction, 'ListItemNode'>; } export interface ListItemProps { children: ReactNode; className?: string; disabled?: boolean; onClick?(event: MouseEvent, value: T): void; onMouseDown?(event: MouseEvent, value: T): void; onMouseEnter?(event: MouseEvent, value: T): void; onMouseLeave?(event: MouseEvent, value: T): void; value: T; } export default function listItemFactory({ListItemNode, passthrough}: ListItemFactoryArgs): ComponentClass>;