import type { Direction } from '../../../ports/NeighborProviderPort.ts';
import type ReadIdentity from './ReadIdentity.ts';
export type NeighborhoodOpticReadDirection = Exclude<Direction, 'both'>;
export type NeighborhoodOpticCompleteness = 'complete' | 'truncated';
export type NeighborhoodOpticEdge = {
    readonly direction: NeighborhoodOpticReadDirection;
    readonly neighborId: string;
    readonly label: string;
};
export default class NeighborhoodOpticReadResult {
    readonly nodeId: string;
    readonly direction: Direction;
    readonly edges: readonly NeighborhoodOpticEdge[];
    readonly completeness: NeighborhoodOpticCompleteness;
    readonly cursor: string | null;
    readonly readIdentity: ReadIdentity;
    constructor(options: {
        readonly nodeId: string;
        readonly direction: Direction;
        readonly edges: readonly NeighborhoodOpticEdge[];
        readonly completeness: NeighborhoodOpticCompleteness;
        readonly cursor: string | null;
        readonly readIdentity: ReadIdentity;
    });
}
