import type { OrderBy } from '../helpers/sort.js';
/** Order used to fetch and render the rows.
 *
 * If an empty array, the table is unordered.
 */
export declare const OrderByContext: import("react").Context<OrderBy>;
/**
 * Function to toggle the order of a column.
 *
 * It depends on the current order and the exclusiveSort mode (see DataContext)
 * and can be used to toggle between ascending, descending and no order for a column.
 *
 * @param columnName The name of the column to toggle
 */
export type ToggleColumnOrderBy = (columnName: string) => void;
/**
 * Context to provide the function to toggle the order of a column.
 *
 * If undefined, the interactions are disabled.
 */
export declare const ToggleColumnOrderByContext: import("react").Context<ToggleColumnOrderBy | undefined>;
export declare function useOrderBy(): OrderBy;
/**
 * Returns the order and index (0-based) of a column in the orderBy array.
 */
export declare function useColumnOrderBy(columnName: string): {
    direction: import("../dataframe.js").Direction;
    orderByIndex: number;
} | {
    direction: undefined;
    orderByIndex: undefined;
};
export declare function useToggleColumnOrderBy(): ToggleColumnOrderBy | undefined;
