import { RegisterOptions } from 'react-hook-form';
import { StylesConfig } from 'react-select';
import { User } from '@zeniai/client-epic-state';
import { DisableMode } from '../common/common';
export interface OptionType extends User {
    label: string;
    value: string;
}
export interface UserSingleSelectFieldValue {
    allOptions: OptionType[];
    selectedOption?: string;
}
interface TooltipProp {
    sticky: boolean;
    text: string;
}
export interface UserSingleSelectFieldProps {
    defaultValue: UserSingleSelectFieldValue;
    name: string;
    additionalLabelInfo?: string;
    allowEmpty?: boolean;
    customStyleConfig?: StylesConfig<OptionType, false>;
    isDisabled?: DisableMode;
    menuPlacement?: "auto" | "bottom" | "top";
    menuPortal?: HTMLElement | null;
    placeholder?: string;
    registerOptions?: RegisterOptions;
    showDownChevronWithValue?: boolean;
    showEmptyState?: boolean;
    style?: React.CSSProperties;
    tooltip?: TooltipProp;
    disableCurrentOption?: (option: string) => boolean;
}
export declare const UserSingleSelectField: ({ name, registerOptions, defaultValue, isDisabled, style, placeholder, showEmptyState, additionalLabelInfo, customStyleConfig, showDownChevronWithValue, allowEmpty, menuPortal, disableCurrentOption, menuPlacement, }: UserSingleSelectFieldProps) => import("react/jsx-runtime").JSX.Element;
/**
 * internal Styled components
 */
export declare const CustomTooltip: ({ children, title, }: {
    children: string;
    title: string;
}) => import("react/jsx-runtime").JSX.Element;
export {};
