The US and Iran have agreed to strike a deal to end their conflict, with US President Donald Trump saying the Strait of Hormuz oil shipping channel would also reopen.

Pakistan's Prime Minister Shehbaz Sharif, whose nation has been mediating, announced the deal on Sunday.

He said both sides had declared "the immediate and permanent termination of military operations on all fronts, including in Lebanon", where Israel and the Iran-backed group Hezbollah have been fighting, although Israeli politicians criticised the deal.

The pact - due to be signed in Switzerland on Friday - will extend a ceasefire for another 60 days, during which the sides will negotiate details of a final agreement.