    001package co.aikar.commands;
    002
    003import net.dv8tion.jda.core.JDA;
    004import org.jetbrains.annotations.NotNull;
    005
    006public class JDAOptions {
    007    CommandConfig defaultConfig = new JDACommandConfig();
    008    CommandConfigProvider configProvider = null;
    009    CommandPermissionResolver permissionResolver = new JDACommandPermissionResolver();
    010
    011    public JDAOptions() {
    012    }
    013
    014    public JDAOptions defaultConfig(@NotNull CommandConfig defaultConfig) {
    015        this.defaultConfig = defaultConfig;
    016        return this;
    017    }
    018
    019    public JDAOptions configProvider(@NotNull CommandConfigProvider configProvider) {
    020        this.configProvider = configProvider;
    021        return this;
    022    }
    023
    024    public JDAOptions permissionResolver(@NotNull CommandPermissionResolver permissionResolver) {
    025        this.permissionResolver = permissionResolver;
    026        return this;
    027    }
    028
    029    public JDACommandManager create(JDA jda) {
    030        return new JDACommandManager(jda, this);
    031    }
    032}