import { type JaqlPanel } from '@sisense/sdk-pivot-query-client';
import type { PivotDataNode, PivotTreeNode } from '@sisense/sdk-pivot-ui';
import type { PivotTableDataOptionsInternal } from '../../../../../domains/visualizations/core/chart-data-options/types';
import type { CellFormattingResult, CustomDataCellFormatter, CustomHeaderCellFormatter } from './types.js';
/**
 * Applies a formatting result to a data cell, mutating the cell object
 * @param cell - The cell to apply formatting to
 * @param result - The formatting result to apply
 */
export declare function applyCellFormattingResult(cell: PivotDataNode | PivotTreeNode, result: CellFormattingResult): void;
/**
 * Creates a unified formatter that handles functional formatters by applying their results
 *
 * @param formatter - A functional formatter that returns formatting information
 * @returns A function that applies the formatter result to the cell
 */
export declare function createUnifiedDataCellFormatter(formatter: CustomDataCellFormatter, dataOptions: PivotTableDataOptionsInternal): (cell: PivotDataNode, rowItem: PivotTreeNode, columnItem: PivotTreeNode, jaqlPanelItem: JaqlPanel) => void;
/**
 * Creates a unified header cell formatter that handles functional formatters by applying their results
 *
 * @param formatter - A functional header formatter that returns formatting information
 * @returns A function that applies the formatter result to the header cell
 */
export declare function createUnifiedHeaderCellFormatter(formatter: CustomHeaderCellFormatter, dataOptions: PivotTableDataOptionsInternal): (cell: PivotTreeNode, jaqlPanelItem: JaqlPanel | undefined) => void;
