import ChessPointer from "./chess_pointer";
export interface Square {
    distanceFromStart?: number;
    shortestPath?: ChessPointer.BasicPointer;
    isPassable: boolean;
    weight: number;
}
export declare enum SearchResult {
    SearchContinues = 0,
    TargetFound = 1,
    TargetNotFound = 2
}
export interface IterationResult {
    result: SearchResult;
    from?: ChessPointer.BasicPointer;
    to?: ChessPointer.BasicPointer;
}
export interface SearchIterator {
    (): IterationResult;
}
export interface PathFindingAlgo {
    (start: ChessPointer.BasicPointer, end: ChessPointer.BasicPointer): SearchIterator;
}
