using Prefab.Shared.Catalog.Categories;
using Prefab.Shared.Catalog.Products;
namespace Prefab.Shared.Catalog;
///
/// Provides HTTP-based access to module-related operations, exposing product and category management functionality
/// through their respective clients.
///
/// The category client used to perform category-related operations. Cannot be null.
/// The product client used to retrieve product configuration. Cannot be null.
/// The client used to request price quotations. Cannot be null.
public sealed class ModuleClientHttp(
ICategoryClient categoryClient,
IProductClient productClient,
IPriceQuoteClient priceQuoteClient) : IModuleClient
{
public ICategoryClient Category { get; } = categoryClient;
public IProductClient Product { get; } = productClient;
public IPriceQuoteClient PriceQuote { get; } = priceQuoteClient;
}