The upside to all these is the durability you are looking for.
Engineered flooring (Pergo, etc.) - Downside: looks fake, off brands/cheap imitation are highly problematic, DOES NOT LIKE WATER AT ALL
Bamboo - Downside: price, cheaper stuff is not as good.
Stone or porcelain tile - Downside: expensive, especially natural stone, price, it's also cold to walk on, or hot in direct sun, grout get's dirty, cracking, tile separation, must be installed perfectly.
Concrete - Downside: same as tile minus the grout.
Hardwood - Downside: not all hardwood is hard enough, not all finishes are durable (most are not, the ones that are are super expensive, hard to apply, take time to dry, and have pretty bad fumes for weeks. The hard hardwoods are expensive as fuck all, Brazilian Cherry for instance. Depending on the finish, these can be somewhat water sensitive. All wood is ruined by standing water.
The main downside to all of these is price, and anything that comes unfinished, including tile can not be walked on for days. With all the options listed with the exception of Pergo, you will lose the room for a couple weeks.