By your comment is seems that you are asking how many different Pokemon can you possibly encounter, not how many Pokemon can you store at any one time.
In that case currently only Generation 1 and 2 Pokemon are available (a total of 251), however there are a small handful of those 251 which are currently not available or require special circumstances to find or catch.
The list of Pokemon currently available are found here.
Certain ones like #83 Farfetch'd are only seen in Asia, (a few other Pokemon are specific to certain continents or longitude/latitude zones)
The legendary birds from generation one (Zapdos, Articuno, and Moltres), where only available in specific raids, and only for a limited period of time (until the end of August 2017), so as of now they are currently not available.
A few of the 251 are also not currently available simply because they haven't been added into the game yet: See #235 Smeargle.
As of my count right now, assuming you've managed to catch all 3 legendary birds while they where available, it is possible to have a total of 247 different Pokemon.
Yes, there are many more Pokemon in future generations, but as now, none of them have been added to Pokemon Go.