/**
 * NeighborProvider backed by in-memory adjacency maps.
 *
 * Wraps the { outgoing, incoming } Maps produced by _buildAdjacency().
 * Adjacency lists are pre-sorted at construction by (neighborId, label)
 * using strict codepoint comparison. Label filtering via Set.has() in-memory.
 *
 * @module domain/services/query/AdjacencyNeighborProvider
 */
import NeighborProviderPort, { type Direction, type NeighborOptions, type NeighborEdge, type LatencyClass } from '../../../ports/NeighborProviderPort.ts';
type AdjEdge = {
    neighborId: string;
    label: string;
};
type AdjMap = Map<string, AdjEdge[]>;
export default class AdjacencyNeighborProvider extends NeighborProviderPort {
    private readonly _outgoing;
    private readonly _incoming;
    private readonly _aliveNodes;
    constructor(params: {
        outgoing: AdjMap;
        incoming: AdjMap;
        aliveNodes: Set<string>;
    });
    getNeighbors(nodeId: string, direction: Direction, options?: NeighborOptions): Promise<NeighborEdge[]>;
    private _filteredEdges;
    private _resolveEdges;
    hasNode(nodeId: string): Promise<boolean>;
    get latencyClass(): LatencyClass;
}
export {};
