using GFramework.Core.Abstractions.Utility;
namespace GFramework.Game.Abstractions.Config;
///
/// 定义配置加载器契约。
/// 具体实现负责从文件系统、资源包或其他配置源加载文本配置,并将解析结果注册到配置注册表。
///
public interface IConfigLoader : IUtility
{
///
/// 执行配置加载并将结果写入注册表。
/// 实现应在同一次加载过程中保证注册结果的一致性,避免只加载部分配置后就暴露给运行时消费。
///
/// 用于接收配置表的注册表。
/// 取消令牌。
/// 表示异步加载流程的任务。
Task LoadAsync(IConfigRegistry registry, CancellationToken cancellationToken = default);
}