/**
 * Deterministic slot assignment via priority-ordered conflict-graph local search.
 *
 * Warm-started from each node's previously committed slot (set by the engine
 * before this runs), it repeatedly moves the worst-conflict node to its lowest
 * cost slot, re-scoring only the affected neighbourhood, until no node has a
 * conflict or the move budget is spent. A best-total snapshot is restored at the
 * end so a re-solve can never regress below where it started.
 */
import type { LabelNode, SolverConfig } from './types';
export declare const solve: (nodes: LabelNode[], config: SolverConfig, bestSnap: Int16Array) => void;
