import type { EngineRuntimeState } from '../runtime-state.js';
export interface FreshMatrixDependencyOverlapArgs {
    readonly getRegionFormulaSubscriptionCount?: () => number;
    readonly hasRegionFormulaSubscriptionsIntersectingRect: ((sheetId: number, rowStart: number, rowEnd: number, colStart: number, colEnd: number) => boolean) | undefined;
    readonly hasRegionFormulaSubscriptionsOverlappingRange?: (sheetId: number, rowStart: number, rowEnd: number, colStart: number, colEnd: number) => boolean;
    readonly state: Pick<EngineRuntimeState, 'formulas' | 'ranges'>;
}
export interface FreshMatrixDependencyOverlapBatch {
    readonly colStart: number;
    readonly formulaCol: number;
    readonly rowCount: number;
    readonly rowStart: number;
    readonly sheet: {
        readonly name: string;
    };
    readonly sheetId: number;
}
export declare function freshMatrixOverlapsFormulaDependencies(args: FreshMatrixDependencyOverlapArgs, matrix: FreshMatrixDependencyOverlapBatch): boolean;
