001package net.minecraft.command; 002 003import java.util.List; 004 005public interface ICommand extends Comparable 006{ 007 String getCommandName(); 008 009 String getCommandUsage(ICommandSender icommandsender); 010 011 List getCommandAliases(); 012 013 void processCommand(ICommandSender icommandsender, String[] astring); 014 015 /** 016 * Returns true if the given command sender is allowed to use this command. 017 */ 018 boolean canCommandSenderUseCommand(ICommandSender icommandsender); 019 020 /** 021 * Adds the strings available in this command to the given list of tab completion options. 022 */ 023 List addTabCompletionOptions(ICommandSender icommandsender, String[] astring); 024 025 /** 026 * Return whether the specified command parameter index is a username parameter. 027 */ 028 boolean isUsernameIndex(String[] astring, int i); 029}