import { ReactNode } from 'react';
import { AsyncSelect, SelectActions } from '../../helpers';
type Option = {
    id: string;
    name: string;
};
export type SelectorTabActions<T extends Option> = {
    inputValue: string;
    onBack: () => void;
    parent: T;
} & SelectActions<T>;
export type SelectorTabProps<T extends Option> = AsyncSelect<T> & {
    classes?: {
        selectedOption?: string;
    };
    disabled?: boolean;
    isDefaultOpened?: boolean;
    onSelect: (items?: T | null) => void;
    placeholderElement?: JSX.Element;
    preOptions?: never;
    renderMenuFooter?: (payload: SelectorTabActions<T>) => JSX.Element;
    renderMenuHeader?: (payload: SelectorTabActions<T>) => JSX.Element;
    renderSelectedItem?: (item: T, actions?: SelectorTabActions<T>) => JSX.Element;
    suffix?: ReactNode;
    value?: T | null;
};
export declare const SelectorTab: typeof SelectorComponent;
declare function SelectorComponent<T extends Option>({ classes, checkIsAlreadySelectedFunction, renderSelectedItem, renderOption: renderOptionOuter, renderMenuFooter, renderMenuHeader, renderPrevSelectedItem, onSelect, onBlur, loadOptions, menuWidth, menuPlacement, placeholder, value, emptyState, formRef, valueContainerWrapper, disabled, placeholderElement, portalElement, preOptions, isDefaultOpened, }: SelectorTabProps<T>): JSX.Element;
export {};
