import { Status } from "../../DataFrame";
import { IDIService } from "../../IDIService";
import { ResponseResult } from "../FieldChangeResult";
export interface IGeolocationService extends IDIService {
    GetCurrentGeolocationAsync(): Promise<GeolocationPosition | GeolocationPositionError>;
    SetControllerGeolocationAsync(location: Coordinates | Status): Promise<ResponseResult<SetGeolocationResponseCode>>;
    GetControlllerGeolocationAsync(): Promise<CoordinatesWithSourceInfo | Status>;
    IsControllerGeolocationSetAsync(): Promise<boolean | Status>;
}
export declare class Coordinates {
    Longitude: number;
    Latitude: number;
}
export declare class CoordinatesWithSourceInfo {
    Longitude: number;
    Latitude: number;
    IsNetworkBased: boolean;
}
export declare enum SetGeolocationResponseCode {
    OK = 0,
    NoPermissions = 1,
    UserIsNotLoggedIn = 2,
    UnknownError = 3
}
