/// <reference types="react" />
import { IconDefinition } from '@fortawesome/fontawesome-svg-core';
import { QueryWrapperChildProps } from '../QueryWrapper';
import { QueryResultBundle } from '../../utils/synapseTypes';
export declare type TopLevelControlsProps = {
    name?: string;
    entityId: string;
    sql: string;
    hideDownload?: boolean;
    hideVisualizationsControl?: boolean;
    hideFacetFilterControl?: boolean;
    hideQueryCount?: boolean;
    showColumnSelection?: boolean;
    customControls?: CustomControl[];
};
declare type CustomControlCallbackData = {
    data: QueryResultBundle | undefined;
    selectedRowIndices: number[] | undefined;
    refresh: () => void;
};
declare type CustomControl = {
    buttonText: string;
    onClick: (event: CustomControlCallbackData) => void;
    classNames?: string;
    icon?: IconDefinition;
};
declare const TopLevelControls: (props: QueryWrapperChildProps & TopLevelControlsProps) => JSX.Element;
export default TopLevelControls;
