using BankSampahApp.Models;

namespace BankSampahApp.Services;

/// <summary>
/// Interface untuk service yang menangani logic bisnis halaman Home
/// </summary>
public interface IHomeService
{
    /// <summary>
    /// Mendapatkan data view model untuk halaman utama
    /// </summary>
    /// <returns>HomeViewModel yang berisi data untuk ditampilkan</returns>
    Task<HomeViewModel> GetHomeViewModelAsync();

    /// <summary>
    /// Mendapatkan daftar fitur aplikasi
    /// </summary>
    /// <returns>List fitur aplikasi</returns>
    Task<IEnumerable<FeatureModel>> GetFeaturesAsync();

    /// <summary>
    /// Mendapatkan statistik aplikasi
    /// </summary>
    /// <returns>Model statistik aplikasi</returns>
    Task<StatisticsModel> GetStatisticsAsync();
}