Update- Players level ten and up can all battle. Just keep grinding if your below level ten as that is the lowest level you can be to battle.
Players who are looking to battle it out with friends in Pokemon Go can do that now. Actually players who are level 40 can go out and battle friends. Players like me will have to wait until Niantic allows it to happen.
— Pokémon GO is ready to #GOBattle❗ (@PokemonGoApp) December 13, 2018
Soon all players will be able to go out and battle their friends. By using a Battle Code players will be able to battle friends at any time. Pokemon Go is finally starting to feel like a full Pokemon Game.
Players will be able to battle in three different leagues, The Great League, Ultra League, and Master League. The first two leagues will have cp limits while the Master League will not. If you have anymore questions regarding the trainer battles, cp limits, and leagues click this link. Hopefully within the next week the rest of use who are not at the highest level will be able to battle other players.