using System; using System.Threading; using System.Threading.Tasks; using TINK.Model.Device; using Xamarin.Essentials; namespace TINK.Model.Services.Geolocation { /// Query geolocation. public interface IGeolocation : IGeolodationDependent { /// Gets the current location. /// Token to cancel request for geolocation. If null request can not be cancels and times out after GeolocationService.GEOLOCATIONREQUEST_TIMEOUT_MS if geolocation is not available. /// Time when geolocation is of interest. Is used to determine for some implementations whether cached geoloation can be used or not. /// Task GetAsync(CancellationToken? cancellationToken = null, DateTime? timeStamp = null); /// If true location data returned is simulated. bool IsSimulation { get; } } }