using Netina.Infrastructure.Models; namespace Netina.Infrastructure.RestServices; public interface IRestApiWrapper : IScopedDependency { IKaveNegarRestApi KaveNegarRestApi { get; } IZarinpalRestApi ZarinpalRestApi { get; } IDigikalaRestApi DigikalaRestApi { get; } IFileRestApi FileRestApi(string address); } public class RestApiWrapper : IRestApiWrapper { public IKaveNegarRestApi KaveNegarRestApi => RestService.For(RestAddress.BaseKaveNegar); public IZarinpalRestApi ZarinpalRestApi => RestService.For(RestAddress.BaseZarinpal); public IDigikalaRestApi DigikalaRestApi => RestService.For(RestAddress.DigikalaApi); public IFileRestApi FileRestApi(string address) { return RestService.For(address); } }