using Cysharp.Threading.Tasks;
namespace TEngine
{
public interface ILocalizationModule
{
///
/// 获取或设置本地化语言。
///
public Language Language { get; set; }
///
/// 获取系统语言。
///
public Language SystemLanguage {get;}
///
/// 加载语言总表。
///
public UniTask LoadLanguageTotalAsset(string assetName);
///
/// 加载语言分表。
///
/// 语言类型。
/// 是否立刻设置成当前语言。
/// 是否初始化Inner语言。
public UniTask LoadLanguage(string language, bool setCurrent = false, bool fromInit = false);
///
/// 检查是否存在该语言。
///
/// 语言。
/// 是否已加载。
public bool CheckLanguage(string language);
///
/// 设置当前语言。
///
/// 语言名称。
/// 是否加载。
///
public bool SetLanguage(Language language, bool load = false);
///
/// 设置当前语言。
///
/// 语言名称。
/// 是否加载。
///
public bool SetLanguage(string language, bool load = false);
///
/// 通过语言的Id设置语言。
///
/// 语言ID。
/// 是否设置成功。
public bool SetLanguage(int languageId);
}
}