2023-08-31 12:20:06 +02:00
|
|
|
using System.Threading.Tasks;
|
|
|
|
using TINK.Repository.Request;
|
|
|
|
using TINK.ViewModel.Bikes.Bike.BluetoothLock;
|
|
|
|
using static TINK.Model.Bikes.BikeInfoNS.BluetoothLock.Command.CloseCommand;
|
|
|
|
using static TINK.Model.Bikes.BikeInfoNS.BluetoothLock.Command.GetLockedLocationCommand;
|
|
|
|
|
2023-04-05 15:02:10 +02:00
|
|
|
namespace TINK.Model.Bikes.BikeInfoNS.BluetoothLock
|
2022-08-30 15:42:25 +02:00
|
|
|
{
|
2023-04-05 15:02:10 +02:00
|
|
|
public interface IBikeInfoMutable : BC.IBikeInfoMutable
|
2022-09-06 16:08:19 +02:00
|
|
|
{
|
|
|
|
ILockInfoMutable LockInfo { get; }
|
2023-08-31 12:20:06 +02:00
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Closes the lock.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="listener">View model to process closing notifications.</param>
|
|
|
|
/// <param name="stopPollingTask">Task which stops polling to be awaited before updating bike object and copri communication.</param>
|
|
|
|
Task CloseLockAsync(ICloseCommandListener listener, Task stopPollingTask);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets the location of the locked bike.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="listener">View model to process notifications.</param>
|
|
|
|
/// <returns></returns>
|
|
|
|
Task<LocationDto> GetLockedBikeLocationAsync(IGetLockedLocationCommandListener listener);
|
2022-09-06 16:08:19 +02:00
|
|
|
}
|
2022-08-30 15:42:25 +02:00
|
|
|
}
|