import { RegisterOptions } from 'react-hook-form';
import { StylesConfig } from 'react-select';
import { ID } from '@zeniai/client-epic-state';
import { DisableMode } from '../common/common';
/**
 * Component & its Props
 */
interface OptionTypeBase {
    [key: string]: any;
}
export interface OptionType extends OptionTypeBase {
    label: string | JSX.Element;
    value: string;
    isDisabled?: boolean;
}
export interface SingleSelectPickerFieldValue {
    allOptions: OptionType[];
    selectedOption?: string;
}
export interface SingleSelectCreatablePickerFieldProps {
    defaultValue: SingleSelectPickerFieldValue;
    loadingState: boolean;
    name: string;
    customStyleConfig?: StylesConfig<OptionType, false>;
    isDisabled?: DisableMode;
    isOptionRemovable?: boolean;
    placeholder?: string;
    registerOptions?: RegisterOptions;
    customCreateLabel?: (inputString: string) => JSX.Element | string;
    onCreateOption?: (option: string) => void;
    onDeleteOption?: (tagId: ID) => void;
    valueToInfo?: (value: string) => string;
}
export declare const SingleSelectCreatablePickerField: ({ name, defaultValue, registerOptions, isDisabled, customStyleConfig, placeholder, isOptionRemovable, valueToInfo, customCreateLabel, onCreateOption, onDeleteOption, loadingState, }: SingleSelectCreatablePickerFieldProps) => import("react/jsx-runtime").JSX.Element;
export {};
