import { DISTANCE_UNIT_TYPE, MAP_LOCALE_TYPE } from './CommandTypes';
import type { GEOJSON_PATH_TYPE, INSTRUCTION_TYPE, JIBESTREAM_PATH_TYPE } from './JibestreamTypes';
export declare function getCurrentInstruction(userLocation: number[], instructions: INSTRUCTION_TYPE[], dist_unit?: DISTANCE_UNIT_TYPE, locale?: MAP_LOCALE_TYPE): any;
export declare function getSurroundingPoints(path: JIBESTREAM_PATH_TYPE, instructions: INSTRUCTION_TYPE[], waypointId: number): number;
export declare const preProcessPath: (path: JIBESTREAM_PATH_TYPE[], instructions: INSTRUCTION_TYPE[]) => INSTRUCTION_TYPE[];
export declare const generateGeojsonPath: (processedInstructions: INSTRUCTION_TYPE[], jibestreamPath: JIBESTREAM_PATH_TYPE[], distUnit: DISTANCE_UNIT_TYPE, locale: MAP_LOCALE_TYPE) => GEOJSON_PATH_TYPE;
export declare function getDistanceAlongPath(point: number[], startPathPoint: number[], endPathPoint: number[]): {
    distanceAlongPath: number;
    ratioAlongPath: number;
    totalPathDist: number;
    distOffPath: number;
};
export declare function getPerpendicularDistanceFromPath(point: number[], startPathPoint: number[], endPathPoint: number[]): number;
export declare function getDistanceFromPoints(point: number[], startPathPoint: number[], endPathPoint: number[]): number;
export declare function getDistanceBetweenPoints(point1: number[], point2: number[]): number;
export declare function generateInstructionText(instruction: INSTRUCTION_TYPE, dist_unit: DISTANCE_UNIT_TYPE, locale: MAP_LOCALE_TYPE): string;
export declare function convertDistanceUnit(distance: number, dist_unit: DISTANCE_UNIT_TYPE): number;
export declare function convertPrepend(prepend: string, locale: MAP_LOCALE_TYPE): string;
export declare function convertDirection(prepend: string, locale: MAP_LOCALE_TYPE): string;
export declare function convertUnitName(unit: DISTANCE_UNIT_TYPE, locale: MAP_LOCALE_TYPE, plural: boolean): string;
//# sourceMappingURL=Instructions.d.ts.map