using JdeScoping.ConfigManager.Models; namespace JdeScoping.ConfigManager.Services; /// /// Service for loading and saving configuration files. /// public interface IConfigFileService { /// /// Loads the application settings configuration from the specified file path. /// /// The file path to load appsettings from. /// Cancellation token for the operation. /// The loaded configuration model or a new empty model if deserialization fails. Task LoadAppSettingsAsync(string path, CancellationToken ct = default); /// /// Loads the pipelines configuration from the specified file path. /// /// The file path to load pipelines from. /// Cancellation token for the operation. /// The loaded pipelines configuration model or a new empty model if deserialization fails. Task LoadPipelinesAsync(string path, CancellationToken ct = default); /// /// Saves the application settings configuration to the specified file path. /// /// The file path to save appsettings to. /// The configuration model to save. /// Cancellation token for the operation. Task SaveAppSettingsAsync(string path, ConfigModel config, CancellationToken ct = default); /// /// Saves the pipelines configuration to the specified file path. /// /// The file path to save pipelines to. /// The pipelines configuration model to save. /// Cancellation token for the operation. Task SavePipelinesAsync(string path, PipelinesConfigModel config, CancellationToken ct = default); }