///
import { ComponentClass, MouseEvent, ReactNode } from 'react';
import { PassTroughFunction } from '../../utils/getPassThrough';
export interface DropdownOptionProps {
children: ReactNode;
className?: string;
disabled: boolean;
innerRef(instance: HTMLElement): void;
onClick(event: MouseEvent, value: T): void;
selected: boolean;
value: T;
}
export interface OptionNodeProps {
className?: string;
disabled?: boolean;
children: ReactNode;
innerRef(instance: HTMLElement): void;
onClick(event: MouseEvent): void;
selected: boolean;
}
export interface DefaultTemplateProps {
className?: string;
disabled?: boolean;
children: ReactNode;
innerRef(instance: HTMLElement): void;
onClick(event: MouseEvent): void;
selected: boolean;
}
export interface DropdownOptionFactoryArgs {
OptionNode: ComponentClass;
DefaultTemplate: ComponentClass;
passthrough: PassTroughFunction, 'OptionNode' | 'DefaultTemplate'>;
}
export default function dropdownOptionFactory({OptionNode, DefaultTemplate, passthrough}: DropdownOptionFactoryArgs): ComponentClass>;