namespace Cleanuparr.Infrastructure.Http.DynamicHttpClientSystem;
///
/// Store interface for managing HttpClient configurations dynamically
///
public interface IHttpClientConfigStore
{
///
/// Tries to get a configuration for the specified client name
///
bool TryGetConfiguration(string clientName, out HttpClientConfig config);
///
/// Adds or updates a configuration for the specified client name
///
void AddConfiguration(string clientName, HttpClientConfig config);
///
/// Removes a configuration for the specified client name
///
void RemoveConfiguration(string clientName);
///
/// Adds or updates a retry configuration for the specified client name
///
void AddRetryConfiguration(string clientName, RetryConfig retryConfig);
///
/// Gets all currently registered configurations
///
IEnumerable> GetAllConfigurations();
///
/// Updates multiple configurations atomically
///
void UpdateConfigurations(IEnumerable> configurations);
}