import type { CellProps } from 'payload/types';
import React from 'react';
import type { ColumnPreferences } from '../../providers/ListInfo/types.js';
import type { Column } from '../Table/types.js';
import type { Action } from './columnReducer.js';
export interface ITableColumns {
    columns: Column[];
    dispatchTableColumns: React.Dispatch<Action>;
    moveColumn: (args: {
        fromIndex: number;
        toIndex: number;
    }) => void;
    setActiveColumns: (columns: string[]) => void;
    toggleColumn: (column: string) => void;
}
export declare const TableColumnContext: React.Context<ITableColumns>;
export declare const useTableColumns: () => ITableColumns;
export type ListPreferences = {
    columns: ColumnPreferences;
};
export declare const TableColumnsProvider: React.FC<{
    cellProps?: Partial<CellProps>[];
    children: React.ReactNode;
    collectionSlug: string;
    enableRowSelections?: boolean;
    listPreferences: ListPreferences;
}>;
//# sourceMappingURL=index.d.ts.map