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