import { ReactElement, ReactNode } from 'react'; import { ControllerStateAndHelpers } from 'downshift'; import { DisplayType } from '@monorail/visualComponents/inputs/inputTypes'; import { DownshiftGetInputProps, DropdownType } from './helpers'; import { DropdownParser } from './parsers'; export declare interface RenderItemProps { children?: ReactNode; disabled?: boolean; highlighted: boolean; item: T; selected: boolean; } export declare type CustomRenderHandlerHook = (props: RenderHandlerProps) => ReactElement; export declare interface RenderHandlerProps { customRender?: CustomRenderHandlerHook; downshiftProps: ControllerStateAndHelpers; handlerProps: DownshiftGetInputProps; display?: DisplayType; clearable?: boolean; } export declare interface RenderListProps { children: ReactNode; downshiftProps: ControllerStateAndHelpers; items: Array; parser: DropdownParser; } export declare interface DropdownRender { handler: (props: RenderHandlerProps) => ReactElement; item: (props: RenderItemProps) => ReactElement; list?: (props: RenderListProps) => ReactElement; } export declare const DropdownPlaceholder: import("styled-components").StyledComponent<"span", import("../../helpers/theme").GlobalAppThemeInterface, {}, never>; export declare const createCustomHandler: (customRender?: CustomRenderHandlerHook) => (props: RenderHandlerProps) => ReactElement; export declare const createDefaultDropdownRender: () => DropdownRender;