import { CurrentPosition, Passage, Segment, View } from './interfaces';
export interface RdviewServiceConfig {
    apiUrl?: string;
    authorization?: string;
}
export declare class RdviewService {
    private passageService;
    private isInited;
    private distanceToBorderInKmToStartLoadingNewSegment;
    private rangeDiffInKmForClosePassagesInFindingClosest;
    private rangeDiffInCoordinatesForClosePassagesInFindingClosest;
    private rangeInKmForClosestPassages;
    private currentView;
    private currentPassage;
    private readonly segment;
    private readonly currentViewIndex;
    constructor({ apiUrl, authorization }?: RdviewServiceConfig);
    initByRoad(idRd: number, km: number): Promise<CurrentPosition>;
    initByCoordinates(lat: number, lon: number): Promise<CurrentPosition>;
    getNextView(): Promise<CurrentPosition>;
    getPreviousView(): Promise<CurrentPosition>;
    getCurrentView(): View;
    getCurrentPassage(): Passage;
    getAllPassages(): Passage[];
    getSegment(): Segment;
    getCurrentPosition(): CurrentPosition;
    setPassage(id: string, rdKm?: number): Promise<CurrentPosition>;
    private throwIfNotInited;
    private clearSettings;
    private loadNeighbourSegmentsIfNeeded;
    private generateCurrentPosition;
}
