using gehGassiApp.Core.Interfaces.Synchronization;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using gehGassiApp.Domain.Dogs;
namespace gehGassiApp.Core.Interfaces
{
///
/// Schnittstellenbeschreibung für einen Service der die Verwaltung von Hunderassen realisiert
///
public interface IDogRaceService : IService, ISyncPushPullService
{
///
/// Gibt eine Liste der Hunderassen zurück.
/// Entweder von der DB oder vom Server
///
/// Gewünschte Sprache
/// Aktuelles Accesstoken
/// CancellationToken
/// Liste der Hunderassen
Task> GetRacesAsync(string language, string accessToken, CancellationToken token);
///
/// Gibt eine Hunderasse zurück.
/// Entweder von der DB oder vom Server
///
/// Id der Hunderasse
/// Gewünschte Sprache
/// Aktuelles Accesstoken
/// CancellationToken
/// Hunderasse oder null, wenn nicht gefunden
Task GetRaceAsync(string id, string language, string accessToken, CancellationToken token);
}
}