const { connect:e } = require('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})}}exports.listen=t;