import type { CellStore } from '../cell-store.js';
type U32 = Uint32Array;
export interface DynamicTopoGraph {
    readonly forEachFormulaDependencyCell: (cellIndex: number, fn: (dependencyCellIndex: number) => void) => void;
    readonly collectFormulaDependents: (entityId: number) => U32;
}
export interface DynamicTopoRepairResult {
    readonly repaired: boolean;
    readonly orderedFormulaCellIndices: U32;
    readonly orderedFormulaCount: number;
}
export declare class DynamicTopo {
    private affectedEpoch;
    private affectedSeen;
    private affectedFormulaIds;
    private topoQueue;
    private topoIndegree;
    private externalPredecessorRanks;
    private orderedFormulaIds;
    repair(changedFormulaCellIndices: readonly number[] | U32, graph: DynamicTopoGraph, cellStore: CellStore, hasFormula: (cellIndex: number) => boolean): DynamicTopoRepairResult;
    private ensureCapacity;
    private ensureFormulaCapacity;
    private ensureQueueCapacity;
    private ensureOrderedCapacity;
}
export {};
