import type { PivotHeaderLayoutMap } from '../layout/pivot-header-layout';
import type { Scenegraph } from '../scenegraph/scenegraph';
import type { CellAddress } from '../ts-types';
export declare function diffCellAddress(col: number, row: number, oldCellIds: number[], newCellIds: number[], oldRowHeaderCellPositons: CellAddress[], layout: PivotHeaderLayoutMap): {
    addCellPositionsRowDirection: {
        col: number;
        row: number;
    }[];
    removeCellPositionsRowDirection: CellAddress[];
    updateCellPositionsRowDirection: {
        col: never;
        row: number;
    }[];
};
export declare function diffCellAddressForGridTree(col: number, row: number, oldCellIds: number[], newCellIds: number[], oldRowHeaderCellPositons: CellAddress[], layout: PivotHeaderLayoutMap): {
    addCellPositionsRowDirection: {
        col: number;
        row: number;
    }[];
    removeCellPositionsRowDirection: CellAddress[];
    updateCellPositionsRowDirection: {
        col: never;
        row: number;
    }[];
    addCellPositionsColumnDirection: {
        col: number;
        row: number;
    }[];
    removeCellPositionsColumnDirection: {
        col: number;
        row: number;
    }[];
};
export declare function diffCellAddressForGridTreeOnColumn(col: number, row: number, oldCellIds: number[], newCellIds: number[], oldRowHeaderCellPositons: CellAddress[], layout: PivotHeaderLayoutMap): {
    addCellPositionsColumnDirection: {
        col: number;
        row: number;
    }[];
    removeCellPositionsColumnDirection: CellAddress[];
    updateCellPositionsColumnDirection: {
        col: never;
        row: number;
    }[];
    addCellPositionsRowDirection: {
        col: number;
        row: number;
    }[];
    removeCellPositionsRowDirection: {
        col: number;
        row: number;
    }[];
};
export declare function calculateArrayDiff(originalArray: (number | number[])[], targetArray: (number | number[])[], startIndex: number): {
    add: number[];
    remove: number[];
};
export declare function callUpdateRowOnScenegraph(result: {
    addCellPositionsRowDirection?: CellAddress[];
    removeCellPositionsRowDirection?: CellAddress[];
    updateCellPositionsRowDirection?: CellAddress[];
    addCellPositionsColumnDirection?: CellAddress[];
    removeCellPositionsColumnDirection?: CellAddress[];
    updateCellPositionsColumnDirection?: CellAddress[];
}, recalculateColWidths: boolean, newFrozenRowCount: number, oldFrozenRowCount: number, scenegraph: Scenegraph): void;
export declare function callUpdateColOnScenegraph(result: {
    addCellPositionsRowDirection?: CellAddress[];
    removeCellPositionsRowDirection?: CellAddress[];
    updateCellPositionsRowDirection?: CellAddress[];
    addCellPositionsColumnDirection?: CellAddress[];
    removeCellPositionsColumnDirection?: CellAddress[];
    updateCellPositionsColumnDirection?: CellAddress[];
}, newFrozenColCount: number, oldFrozenColCount: number, scenegraph: Scenegraph): void;
