import{connect as e}from"worktop/ws";function t(t){return function(n,s){let o=e(n);if(o)return o;let{0:r,1:c}=new WebSocketPair,i={};function a(e){return t(n,s,{send:c.send.bind(c),close:c.close.bind(c),state:i,event:e})}async function l(e){try{await a(e)}finally{c.close()}}return c.accept(),c.addEventListener("close",l),c.addEventListener("message",a),c.addEventListener("error",l),new Response(null,{status:101,statusText:"Switching Protocols",webSocket:r})}}export{t as listen};