///
import { RoomName } from "../position/types";
export type FindRouteFn = (fromRoom: string, toRoom: string) => ReturnType;
/**
* Provide a function like {@link Game.map.findRoute} but with cache.
* It requires than routeCallback is deterministic
* @param routeCallback optional function computing the cost to enter a room
* @returns a function like findRoute
*/
export declare function findRouteCached(routeCallback?: (to: RoomName, from: RoomName) => number): FindRouteFn;
/**
* Compute a distance lower bound from {@link Game.map.findRoute} path.
* @param from start position
* @param to destination position
* @param findRoute optional replace the default route finder
* @returns a distance between two points considering exit sides
*/
export declare function findRouteDist(from: RoomPosition, to: RoomPosition, findRoute?: FindRouteFn): number;