using System; using System.Collections.Generic; using System.ComponentModel; using TINK.Model.Bike; using TINK.Model.State; namespace TINK.Model.Bikes.Bike.BC { public interface IBikeInfoMutable { /// /// Holds the unique id of the bike; /// string Id { get; } /// True if bike is a demo bike. bool IsDemo { get; } /// Returns the group (TINK, Konrad, ...). IEnumerable Group { get; } /// /// Holds the count of wheels. /// WheelType? WheelType { get; } /// /// Holds the type of bike. /// TypeOfBike? TypeOfBike { get; } /// Holds the description of the bike. string Description { get; } /// /// Station a which bike is located, null otherwise. /// string StationId { get; } /// /// Holds the rent state of the bike. /// IStateInfoMutable State { get; } /// /// Uri of the operator or null, in case of single operator setup. /// Uri OperatorUri { get; } event PropertyChangedEventHandler PropertyChanged; } public enum NotifyPropertyChangedLevel { /// Notify about all property changes. All, /// Notify about no property changes. None } }