/// <reference types="react" />
import { OptionsSelectItem } from '@parlor/ui/select';
import { Variations } from './utils';
export type QueryBuilderBaseProps<T extends OptionsSelectItem> = {
    /**
     * groupId is used to find the corresponding data in COntext
     */
    groupId?: string;
    /**
     * handling item removal
     */
    handleRemoveItem?: (idx: string) => void;
    /**
     * Idx for handling array updates in child component
     */
    idx?: string;
    /**
     * What input types to show
     */
    inputType?: string;
    /**
     * Indicates whether to show "All" option in ListItems and whether or not to show "OR".
     */
    isChild?: boolean;
    /**
     * If true, the given value cannot be deleted
     */
    isDefault?: boolean;
    /**
     * isTooltip issue
     */
    isTooltip?: boolean;
    /**
     * list of menu items to display
     */
    listItems?: T[];
    /**
     * How to set the value
     */
    setValue: (newValue: {
        id: string;
        text: string;
        values: Record<string, any>;
    }, idx: string, resetValueProps?: boolean) => void;
    showStickyItem?: boolean;
    /**
     * Value of the Select component. This is optional since some of the children will fetch the data from context.
     */
    value?: {
        id: string;
        text: string;
        values: Record<string, any>;
    } | {
        id: string;
        text: string;
        values: Record<string, any>;
    }[];
    variant?: Variations;
};
export declare function QueryBuilderSelect<T extends OptionsSelectItem>({ groupId, isChild, listItems, setValue, value, inputType, idx, handleRemoveItem, variant, isCVU, isTooltip, isDefault, showStickyItem, }: QueryBuilderBaseProps<T> & {
    isCVU?: boolean;
}): JSX.Element;
