001package com.ericlam.mc.bungee.hnmc.config;
002
003import com.ericlam.mc.bungee.hnmc.config.yaml.BungeeConfiguration;
004
005/**
006 * 新的 Config 管理器
007 */
008public interface YamlManager {
009
010    /**
011     * 重載所有文件
012     *
013     * @return 成功
014     */
015    boolean reloadConfigs();
016
017    /**
018     * @param yml 文件名稱
019     * @param <T> 映射接口
020     * @return 映射物件
021     */
022    <T extends BungeeConfiguration> T getConfig(String yml);
023
024    /**
025     * @param config 映射物件類
026     * @param <T>    映射接口
027     * @return 映射物件
028     */
029    <T extends BungeeConfiguration> T getConfigAs(Class<T> config);
030
031}