A police officer who had only been in the job for a few months was stabbed with a 50cm long sword in an incident which police have described as "extremely confronting".
The 28-year-old probationary officer was attacked during a callout to a home on Werombi Rd in Grasmere, Sydney's southwest, about 5.20pm on Friday.
He was called to the home alongside another probationary officer and two senior constables following reports a person had breached an apprehended violence order, and to conduct a welfare check.
Know the news with the 7NEWS app: Download today
As soon as police arrived a confrontation broke out between the officers at a 20-year-old man at the home.
Superintendent Paul Condon said police used a number of "tactical options" including taser and OC spray but none were successful.
The man then allegedly launched a spear at the cops before running at them with a 50cm long sword and stabbing the 28-year-old police officer in the leg.
His attacker was then tasered and arrested.
The police officer was airlifted to Liverpool Hospital in a serious but stable condition with a 20cm gash to his upper right thigh.
He remains in hospital and is awaiting surgery.
Condon said the two probationary officers had only been on the job for three and six months.
He said he had viewed the body worn camera footage and that the incident was "extremely confronting".
Condon praised the actions of all four police officers saying they were incredibly brave.
"Police are confronted day in day out by violent situations like this," he said.
"It escalated extremely quickly and again I commend my officers for what they've done."
The other officers gave life-saving first aid to the injured officer, Condon said, applying tourniquets to stem the bleeding.
He said the violent incident could have had a very different, tragic outcome if not for their quick thinking.
Detectives seized a knife, hatchet and spear from the scene.
The 20-year-old man was known to police who were aware that he had been armed in the past.
He was charged with 11 offences including two counts of attempted murder, four counts of wounding a person with the intent to resist arrest and breaching bail.
The man was bail refused to appear before Parramatta Local Court on Saturday.