import React from 'react'; import { ExternalStyles } from '../../styles'; import { ComboboxProps } from './Combobox'; export interface ComboboxComponents { /** * Item shown when `creteNewItem` prop is indicated. */ CreateItem: React.ComponentType; /** * Item shown when `loading` prop is true. */ LoadingItem: React.ComponentType; /** * Item shown when `items` array prop is empty. */ EmptyItem: React.ComponentType; /** * Default item component used for each element in `items` prop. */ Item: React.ForwardRefExoticComponent> | React.ForwardRefRenderFunction>; /** * A custom item to be included at the beginning of the select list. */ PrependItem: React.ComponentType; /** * A custom item to be included at the end of the select list. */ AppendItem: React.ComponentType; } export interface ComboboxMultiselectComponents extends Omit, 'Item'> { /** * Component to display selected items in the input */ SelectedItem: React.ForwardRefExoticComponent; /** * Default item component used for each element in `items` prop. */ Item: React.ForwardRefExoticComponent> | React.ForwardRefRenderFunction>; } export interface ComboboxMenuItemProps extends Omit, 'style'> { style?: ExternalStyles; } export type ComboboxItemProps = ComboboxMenuItemProps & Pick, 'itemToString'> & { item: T; index: number; selected?: boolean; highlighted?: boolean; }; export declare const ComboboxMenuItem: React.ForwardRefExoticComponent, "itemToString"> & { item: any; index: number; selected?: boolean; highlighted?: boolean; } & React.RefAttributes>; export declare const ComboboxMultiselectMenuItem: React.ForwardRefExoticComponent, "itemToString"> & { item: any; index: number; selected?: boolean; highlighted?: boolean; } & React.RefAttributes>; export interface ComboboxMultiselectSelectedItemProps extends Omit, 'style'> { style?: ExternalStyles; disabled?: boolean; onRemove(e: React.MouseEvent): void; } export declare const ComboboxMultiselectSelectedItem: React.ForwardRefExoticComponent>; export declare function ComboboxLoadingItem(props: ComboboxMenuItemProps): JSX.Element; export declare function ComboboxEmptyItem(props: ComboboxMenuItemProps): JSX.Element; export declare function ComboboxCreateItem(props: ComboboxMenuItemProps): JSX.Element; export declare const defaultComboboxComponents: ComboboxComponents; export declare const defaultComboboxMultiselectComponents: ComboboxMultiselectComponents;