interface XRange { readonly x0: number; readonly x1: number; } interface NodeWithDepth { readonly __depth?: number; /** * The visual column index from the align function (e.g. sankeyJustify). Used * as the map key when present so sink/source nodes repositioned by justify * don't corrupt the x-range of their assigned depth column. */ readonly __layer?: number; readonly __x0?: number; readonly __x1?: number; } /** * Builds a map from visual column index to the x-range covering all nodes in * that column. Uses `__layer` as the key when available (the actual column * assigned by the align function), falling back to `__depth`. When multiple * nodes share the same column, the map stores the union of their x-extents. */ export declare function buildDepthToXRangeMap(nodes: ReadonlyArray): Map; /** * Returns the x-range for the given column depth index. * * - If the depth has layout nodes, returns their x-range directly. * - If the depth is within the range of known depths but has no nodes, * linearly interpolates between the nearest known neighbors. * - If the depth falls outside [minDepth, maxDepth], returns `undefined` * so the caller can silently skip it */ export declare function getXRangeForDepth(depth: number, depthToXRange: Map, sortedDepths?: ReadonlyArray): XRange | undefined; export {}; //# sourceMappingURL=get-column-x-range.d.ts.map