Labour MP Jo Cox is in a critical condition after she was shot and stabbed in an attack in her constituency near Leeds.

An eyewitness said the 41-year-old mother of two was left lying in a pool of blood on the pavement after her assailant struck in Birstall, West Yorkshire.

Hichem Ben Abdallah said: "He was kicking her as she was lying on the floor."

He said that after a bystander intervened, the attacker produced a gun, stepped back and shot her twice.

It has been reported that the gunman shouted 'Britain First'.

West Yorkshire Police said a 52-year-old man has been arrested in connection with the attack, which happened near the town's library, where the MP holds her advice surgeries.

Ms Cox was elected to the seat of Batley and Spen at the last general election in 2015.

Her husband Brendan Cox is a former Downing Street adviser who worked for Gordon Brown.

Mr Cox and the couple’s children are understood to have spent yesterday at Westminster as part of the pro-Remain EU flotilla on the Thames.

Before entering parliament Mrs Cox  was a former head of policy at Oxfam and advised Sarah Brown on her campaign to cut the number of mothers dying in childbirth in the developing world.

She was also one of 36 Labour MPs to nominate Jeremy Corbyn as a candidate in the 2015 Labour leadership election.

Mr Abdallah, 56, was in the cafe next door to the library when he heard screaming and went outside.

He said: "There was a guy who was being very brave and another guy with a white baseball cap who he was trying to control and the man in the baseball cap suddenly pulled a gun from his bag."

He added: "He was fighting with her and wrestling with her and then the gun went off twice and then she fell between two cars and I came and saw her bleeding on the floor."

After around 15 minutes, the shop owner said emergency services arrived and tended to her with a drip.

Ms Cox's assistant confirmed she had been attacked and said he was trying to get more information from police at the scene.

Mr Abdallah said the weapon looked handmade and that the man who had been wrestling with the assailant continued to do so even after he saw the gun.

He said: "The man stepped back with the gun and fired it and then he fired a second shot, as he was firing he was looking down at the ground."

A police spokesman said: "At 12.53 today, police were called to a report of an incident on Market Street, Birstall, where a woman in her 40s had suffered serious injuries and is in a critical condition.

"A man in his late 40s to early 50s nearby also suffered slight injuries.

"Armed officers attended and a 52-year-old man was arrested in the area. There are no further details at present.

"Police presence in the area has been increased as a reassurance to the community."

Ms Cox was elected to the seat of Batley and Spen at the last general election in 2015.

West Yorkshire Police said: "There is an ongoing incident in Birstall", while Yorkshire Ambulance Service said it was "aware" of an incident but had no further information.

Labour leader Jeremy Corbyn said: "Utterly shocked by the news of the attack on Jo Cox. The thoughts of the whole Labour Party are with her and her family at this time."

A Labour spokesman said that the party’s thoughts were with Mrs Cox and her family.

The whole incident lasted about 15 to 20 minutes, Mr Abdallah said and another bystander told him she had also been stabbed.

He added: "He was kicking her and he was pulling her by her hair. A very courageous man from the dry cleaners tried to restrain him and he couldn't stop him because all of a sudden he pulled a gun.

"She was a standing still target for him when he shot her."