import type { EngineRuntimeState, U32 } from '../runtime-state.js';
import type { DirectFormulaIndexCollection } from './direct-formula-index-collection.js';
export declare function createOperationDirectFormulaDeltas(args: {
    readonly state: Pick<EngineRuntimeState, 'workbook' | 'formulas' | 'counters'>;
    readonly canSkipTerminalFormulaColumnVersion: (cellIndex: number) => boolean;
    readonly canSkipDirectFormulaColumnVersion: (cellIndex: number) => boolean;
}): {
    readonly applyDirectFormulaNumericDelta: (cellIndex: number, delta: number) => boolean;
    readonly applyDirectFormulaNumericDeltaBatch: (cellIndices: readonly number[] | U32, delta: number) => boolean;
    readonly applyTerminalDirectFormulaNumericDelta: (cellIndex: number, delta: number) => boolean;
    readonly applyTerminalDirectFormulaNumericDeltaAndReturn: (cellIndex: number, delta: number) => number | undefined;
    readonly tryApplyDirectFormulaDeltas: (collection: DirectFormulaIndexCollection, captureChanged?: boolean) => U32 | undefined;
    readonly tryApplyDirectScalarDeltas: (collection: DirectFormulaIndexCollection, captureChanged?: boolean) => U32 | undefined;
};
