Tyranids don't have a win condition.
To eat humanity, they have to break humanity's armies. They do that, the Golden Throne fails, daemons flood the galaxy, and the Tyranids get raped.
Keep in mind, Chaos is by far the strongest force in the setting; the only reason they haven't won already is because they have massive deployment issues. Once the Golden Throne fails and they have a permanent entry point, everyone else loses.
Really, the only sides that can possibly win are Humanity, Chaos, and Necrons. Humans could win by either evolving into a fully psychic race (imagine if the average imperial citizen was a level 2 psyker, and the top psykers were capable of taking the Emperor's place on the Golden Throne; everyone else would be screwed) or discovering old technology (the Baneblade's STC describes it as a "light battle tank"; imagine what the discovery of a heavy battle tank STC would mean). Necrons, on the other hand, are the only non-warp-sensitive race capable of conquering humanity without causing the Golden Throne to fail (they could then gradually cull the warp-sensitive races, keeping the Golden Throne going until the Chaos Gods die).
This, of course, assumes that the setting would actually ever move forward, which it won't.