There is not a comprehensive list of what is allowed and disallowed. Further, Riot tends not to make public posts of what is/is not allowed because programs change all the time and one new feature or a rework of an old one could flag it as not allowed.
We do not know fully how Riot tracks unallowed program usage, but we know that they monitor what are called "critical game files" - basically the client executable and anything it calls upon from my understanding. Anything that attempts to edit any of those files either while in use or not in use will be flagged as not allowed. This means that most voice/skin/texture packs, as well as anything that directly adds something to the client (i.e. not as an overlay) is not allowed.
It's likely but as far as I know not confirmed that Riot also tracks other running programs that are being "used" at the same time as League. For example, there was a time that Riot explicitly stated the Curse (now Twitch) app overlay was not allowed because it added jungle timers and other features to the client that were not normally there for everyone to use. Based on this, I'd venture to say that the League client doesn't just monitor itself/its files, but monitors other programs that are heavily active during the time a game is in progress to determine if there are any disallowed programs running.
It's possible to likely that Riot uses keystroke and/or mouse click heatmaps to determine if a player is likely to be using macros and/or automated scripts to play the game. I can't see any reason why Riot, while having access to that information, wouldn't use it to reduce bots, thus I'd venture to say they probably do use it. Basically, all of the keystrokes and clicks that the game sees should be the result of your own fingers. Note that from my understanding text macros are allowed if they are not spammed: i.e. it's acceptable to have a macro such as keybinding a key to "enter G G enter" that you click at the end of the game to say GG in chat. Someone please correct me if that's wrong.
There are also some things I can't classify into the above categories but are still disallowed: Any program which edits the resolution of the game to one that is not natively an option in the client, any program that "changes" graphics that are not changeable through the client settings.
Bottom line: If it makes League any easier or look different, it's probably not allowed. To be completely honest with you, you're better off not using any third party program that has not been explicitly cleared by Riot without prompt. Riot is very good at coming out and saying if commonly used/desired programs are explicitly acceptable, and even working with developers of third party applications to make them acceptable (such as what happened with Curse). If you haven't seen a post by Riot on their blog/website saying it's okay, my advice is don't even download it.
Best of luck!