001package fr.aumgn.bukkitutils.command.arg;
002
003import java.util.List;
004
005import org.bukkit.command.CommandSender;
006
007public interface SenderMatchingArg<V> {
008
009    /**
010     * Returns all values which match the argument or
011     * the given CommandSender if argument is omitted.
012     */
013    List<V> matchOr(CommandSender sender);
014
015    /**
016     * Same as {@link #matchOr(CommandSender)}
017     * but also check the given permission if
018     * the argument is specified.
019     */
020    List<V> matchWithPermOr(String permission, CommandSender sender);
021}