import { ReactNode } from 'react';
import { NoContentPlaceholderType } from '../SynapseTable/NoContentPlaceholderType';
import { ExternalAnalysisPlatform } from '../SynapseTable/export/ExternalAnalysisPlatformsConstants';
type ColumnOrFacetHelpConfig = {
    /** Text that describes the column or facet */
    helpText: string;
    /** The name of the column for which the markdown applies */
    columnName: string;
    /** The JSON path matching a described JSON Column facet */
    jsonPath?: string;
};
export type QueryVisualizationWrapperProps = {
    children: ReactNode | ReactNode[];
    rgbIndex?: number;
    /** The singular word to use to describe a what a row represents (e.g. "file"). Defaults to "result" */
    unitDescription?: string;
    /** Mapping from column name to the name that should be shown for the column */
    columnAliases?: Record<string, string>;
    visibleColumnCount?: number;
    hiddenColumns?: string[];
    defaultShowPlots?: boolean;
    hideCopyToClipboard?: boolean;
    hideSearchBarControl?: boolean;
    defaultShowSearchBar?: boolean;
    showLastUpdatedOn?: boolean;
    /** Default is INTERACTIVE */
    noContentPlaceholderType?: NoContentPlaceholderType;
    isRowSelectionVisible?: boolean;
    /** The set of columns that defines a uniqueness constraint on the table for the purposes of filtering based on row selection.
     * Note that Synapse tables have no internal concept of a primary key.
     */
    rowSelectionPrimaryKey?: string[];
    /** Look for additional filters using the given key.  If not provided, the entity ID will be used.
     * @deprecated - configure the filter before passing a query */
    additionalFiltersSessionStorageKey?: string;
    /** Configuration to add a help popover to each corresponding column header */
    helpConfiguration?: ColumnOrFacetHelpConfig[];
    hasCustomPlots?: boolean;
    /** The set of external analysis platform to which the UI will support exporting data.
     * @default [] (no platforms are enabled) */
    enabledExternalAnalysisPlatforms?: ExternalAnalysisPlatform[];
    hideVisualizationsControl?: boolean;
};
/**
 * QueryVisualizationWrapper manages UI state for components that query tables in Synapse. That state can be accessed
 * or updated using QueryVisualizationContext. A QueryVisualizationWrapper must be used within a QueryWrapper.
 */
export declare function QueryVisualizationWrapper(props: QueryVisualizationWrapperProps): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=QueryVisualizationWrapper.d.ts.map