import type { EngineCounters } from '../../perf/engine-counters.js';
import type { RuntimeFormula } from '../runtime-state.js';
import type { FreshDirectScalarFormulaBindingInput } from './formula-binding-service-types.js';
import type { InitialResolvedFormulaEntry } from './formula-initialization-refs.js';
export interface InitialFreshDirectScalarFormulaRunQueue {
    readonly flush: () => void;
    readonly queue: (prepared: InitialResolvedFormulaEntry) => void;
}
export declare function createInitialFreshDirectScalarFormulaRunQueue(args: {
    readonly bindFreshDirectScalarFormulaRun: ((run: FreshDirectScalarFormulaBindingInput) => void) | undefined;
    readonly clearPendingFormulaCell: (cellIndex: number) => void;
    readonly capacity?: number;
    readonly counters: EngineCounters;
    readonly noteInitializedFormula: (prepared: InitialResolvedFormulaEntry, runtimeFormula: RuntimeFormula | undefined) => void;
    readonly readRuntimeFormula: (cellIndex: number) => RuntimeFormula | undefined;
}): InitialFreshDirectScalarFormulaRunQueue;
