Boris Johnson has given his support to Donald Trump’s “reasonable” demand for Ukraine’s minerals in exchange for American help in its war with Russia.

The former prime minister insisted that an agreement between the White House and Kyiv was “very close” - despite Volodymyr Zelenskyy rejecting it at the weekend.

Under Trump’s proposal, the US would get access to $500 billion-worth of Ukraine’s natural resources in return for American weapons.

Speaking on Sunday, Zelenskyy said that was far more than the $100bn of backing the US has given Ukraine since the war started exactly three years ago.

He said: “I’m not signing something that 10 generations of Ukrainians are going to pay later.”

But appearing on ITV’s Good Morning Britain programme this morning, Johnson insisted “we are very close to getting this minerals agreement signed between the United States and Ukraine”.

That commits the US not only to future financing of Ukraine, but also to a free, sovereign and secure Ukraine under Donald Trump and that is not to be sneezed at,” the former PM said from Kyiv.

People will say ’oh this deal is extortionate for Ukraine and America is being too rapacious, but not a penny can flow from this investment fund that is going to be set up unless you have a free, sovereign and secure Ukraine.”

Johnson said America “has a history of demanding a price for its support and from where I stand today I think that price for Ukraine is reasonable”.

However, he also rejected Trump’s bizarre claim that Russia is not to blame for the war.

Johnson said: “What you’re hearing from America and a lot of people in the White House about the responsibility for the war and blaming Ukraine, saying Ukraine started it, this is Orwellian.

You might as well blame the girl for attacking the shark in the opening reel of Jaws - it is just total rubbish. Ukraine is the victim.”