/// <reference types="react" />
/*!
 * Copyright (c) Microsoft. All rights reserved.
 * Licensed under the MIT license. See LICENSE file in the project.
 */
import type { TableContainer } from '@essex/arquero';
import type { BaseButton, Button, IContextualMenuItem } from '@fluentui/react';
/**
 * Returns props to render a grouped menu,
 * including the text to display (based on selected table),
 * the list of renderable items, and an onItemClick handler to update the selection
 * @param inputs
 * @param derived
 * @param selected
 * @param onSelect
 * @returns
 */
export declare function useTableSelection(inputs: TableContainer[], derived: TableContainer[], selected?: string, onSelect?: (id: string) => void): {
    text?: string;
    items: IContextualMenuItem[];
    onItemClick: (ev?: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>, item?: IContextualMenuItem) => boolean | void;
};
/**
 * Provides a button click handler to select the last derived table.
 * @param derived
 * @param onSelect
 * @returns
 */
export declare function useOutputPreview(derived: TableContainer[], onSelect?: (id: string) => void): {
    onClick: React.MouseEventHandler<HTMLDivElement | HTMLAnchorElement | HTMLButtonElement | BaseButton | Button | HTMLSpanElement> | undefined;
};
