package me.totalfreedom.admin; import me.totalfreedom.permission.Group; import me.totalfreedom.permission.Node; import java.util.Map; import java.util.Set; import java.util.UUID; import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; public interface AdminManager { Map getAdminMap(); Administrator getAdmin(UUID uuid); Administrator getAdmin(String name); Set getAdminsWithPermissions(Node... nodes); void addAdmin(Administrator admin); void removeAdmin(Administrator admin); CompletableFuture saveAdmin(Administrator admin, Consumer callback); }