import type { LocaleProps, Option, ThemeProps } from 'jamis-core';
import type { UserSelectProps } from './UserSelect.types';
export interface UserSelectTop extends UserSelectProps {
    title: string;
    deferApi?: string;
    searchApi?: string;
    searchable?: boolean;
    searchParam?: PlainObject;
    searchTerm?: string;
}
export interface UserTabSelectProps extends ThemeProps, LocaleProps {
    tabOptions?: Array<UserSelectTop>;
    multiple?: boolean;
    placeholder?: string;
    valueField: string;
    labelField: string;
    selection?: Array<Option>;
    data?: PlainObject;
    onChange: (value: Array<Option> | Option) => void;
    onSearch?: (term: string, cancelExecutor?: (cancel: Function) => void, paramObj?: PlainObject) => Promise<any[]> | undefined;
    deferLoad: (data?: Object, isRef?: boolean, param?: PlainObject) => Promise<Option[]>;
}
