Democrat Joe Biden pledges to be a "president for all Americans," as US networks project he has defeated Republican incumbent Donald Trump in their bitterly contested election. "The work ahead of us will be hard, but I promise you this: I will be a President for all Americans -- whether you voted for me or not," the 77-year-old former vice president says in a tweet.