import { FC, ReactElement } from 'react'; import { ISelectProps } from '@blueprintjs/select'; import { SelectOption } from '../Select/Select'; import { IconName, IconProps } from '@harnessio/icons'; import { StyledProps } from '@harnessio/design-system'; declare type Props = ISelectProps; export interface DropDownProps extends Omit { itemRenderer?: Props['itemRenderer']; onChange: Props['onItemSelect']; value?: SelectOption | string | null; items?: Props['items'] | (() => Promise); /** * Provide a promise returning function that will be called on dropdown open if the items are not available. * Useful with refetch + data combination * This function should update the items as well */ getLazyItems?: () => Promise; usePortal?: boolean; className?: string; popoverClassName?: string; minWidth?: StyledProps['width']; width?: StyledProps['width']; buttonTestId?: string; isLabel?: boolean; icon?: IconName; iconProps?: Partial; addClearBtn?: boolean; placeholder?: string; getCustomLabel?: (item: SelectOption) => string | ReactElement; } export declare function NoMatch({ hasInternalQuery }: { hasInternalQuery: boolean; }): ReactElement; export declare const DropDown: FC; export {};