sharee.bike-App/TINKLib/Model/Bikes/BikeInfoNS/BluetoothLock/IBikeInfoMutable.cs
2023-08-31 12:20:06 +02:00

28 lines
1 KiB
C#

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;
namespace TINK.Model.Bikes.BikeInfoNS.BluetoothLock
{
public interface IBikeInfoMutable : BC.IBikeInfoMutable
{
ILockInfoMutable LockInfo { get; }
/// <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);
}
}