Bash command completion (autocomplete), is a built-in bash function.
man complete or
man bash in the 'complete' section.
By default, bash does not autocomplete bash aliases. Here is a feature request filed for it:
It is said that the zsh shell has a more powerful, flexible command autocompletion implementation than bash.