import type { Point } from "./point.js";
export type HexReachable<P extends Point> = {
    direction?: undefined;
    distance: 0;
    point: P;
    prior?: undefined;
} | {
    direction: Readonly<P>;
    distance: Exclude<number, 0>;
    point: P;
    prior: P;
};
export declare const hexReachable: <P extends Point, Id extends string | number>(start: P, steps: number, directions: Readonly<Readonly<P>[]>, adder: (left: P, right: P) => P, identity: (point: P) => Id, isBlocked: (point: P, id: Id) => boolean, onPoint?: ((point: P, distance: number, prior: P, direction: Readonly<P>) => void) | undefined) => HexReachable<P>[];
//# sourceMappingURL=hex-reachable.d.ts.map