i've made the same ;
void OnEnter()
{
AddEntityCollideCallback("Player", "ScriptArea", "Callback", true, 1);
}
void CallBack(string &in asParent, string &in asChild, int alState)
{
SetSwingDoorLocked("sewer_arched_1", true, true);
//ofc i added some more events to happen ;) this one i used for the door :P
}
now you have to fill your own propeties
this wil suddenly close the door in a blink of an eye
but it won't close it as a effect, just look unatural. If you can't see the door and it close, then you can use it i geuss
if you want to see the door closing like a 'bang' you should use AddPropImpulse, as junkfood said