import type { Direction } from '../../../ports/NeighborProviderPort.ts';
import type CheckpointTailWitnessLocator from './CheckpointTailWitnessLocator.ts';
import type NeighborhoodOpticReadResult from './NeighborhoodOpticReadResult.ts';
import Optic from './Optic.ts';
export type NeighborhoodOpticReadOptions = {
    readonly direction?: Direction;
    readonly labels?: readonly string[];
    readonly limit?: number;
    readonly cursor?: string;
};
export default class NeighborhoodOptic {
    private readonly _optic;
    private readonly _locator;
    constructor(options: {
        readonly optic: Optic;
        readonly locator: CheckpointTailWitnessLocator;
    });
    toOptic(): Optic;
    read(options?: NeighborhoodOpticReadOptions): Promise<NeighborhoodOpticReadResult>;
}
