sharee.bike-App/TINKLib/Model/Stations/StationNS/IStation.cs
2023-11-06 12:23:09 +01:00

38 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using TINK.Model.Stations.StationNS.Operator;
namespace TINK.Model.Stations.StationNS
{
/// <summary>
/// Holds station information, i.e. static information like station name, station position and dynamic information like bikes available.
/// </summary>
public interface IStation
{
/// <summary> Holds the unique id of the station.c</summary>
string Id { get; }
/// <summary> Holds the group to which the station belongs.</summary>
IEnumerable<string> Group { get; }
/// <summary> Gets the name of the station.</summary>
string StationName { get; }
/// <summary> Uri of the operator or null. </summary>
Uri OperatorUri { get; }
/// <summary> Holds the gps- position of the station.</summary>
IPosition Position { get; }
/// <summary> Holds operator related data.</summary>
IData OperatorData { get; }
/// <summary> Gets the count of bikes available at station. </summary>
int? AvailableBikesCount { get; }
/// <summary> Gets bike <see cref="BikeGroupCol.Entry"/> objects. </summary>
/// <remarks> Each entry has a name, holds the count of available bikes at station and the group value. /// </remarks>
IBikeGroupCol BikeGroups { get; }
}
}