Sorry to give you that answer, but: It doesn't matter!
Since the first Pokémon games (Red/Blue/Green) gameplay mechanics were really simple. As you have endless tries to defeat opponent trainers, you are also able to train your Pokémon to oblivion.
So if you can't beat on first time, just level 5 levels further and you go. In 6th generation, story mode has been made even more easier.
Sure, there are some little tips:
- Try to get a counter for each type (you can look up on effectiveness tables like this (German) to see which one counters).
- Try not to focus on one type one one Pokémon. If you've got a water Pokémon, don't only teach him water type attacks. It maybe can learn ice type or others which can then be used to counter other Pokémons.
- Prepare for Gym Leaders. Read the signs or ask NPCs what type the next Gym Leader uses. Battle against him/her once to see which Pokémon he/she uses. If you got it, learn your Pokémon counter-attacks or even switch them with more effective ones.
For story mode there is no "perfect team" as you can win with every team. You can choose your own team of your own favor.
It really begins to matter if you want to compete online - there you have to counter sets of Pokémon, strategy and tactics. But that's a whole different story.
As you want suggestions for some good Pokémon: As it is totally opinion-based for story mode I can't tell you "the three you must have". You see a Pokémon you like? Catch it, train it, try it. You're not happy with it? Replace it. This game is full of grindiness and you should experience this, too.
As for type suggestions I do have another link: Click here
Unfortunately I do have this table only in German, but I'll translate the introducing text for you:
In this ranking, types are ordered by how well they can put away
attacks of all types (including double types). Morphers and Mega
Pokémons are included in count [ger Anzahl]
Please note, that this won't make your team good at the second thought. Grass type may be the worst type in attack and defense - but it may be wunderful if the opponent's team consists of "strong" Ground and Water types.