const { byteLength:e } = require('worktop/utils');var t="content-type",s="content-length",a={400:"Bad Request",401:"Unauthorized",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",409:"Conflict",410:"Gone",411:"Length Required",413:"Payload Too Large",422:"Unprocessable Entity",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout"};function n(a,n,r){let o={};for(let e in r)o[e.toLowerCase()]=r[e];let d=o[t],i=typeof n;return null==n?n="":"object"===i?(n=JSON.stringify(n),d=d||"application/json;charset=utf-8"):"string"!==i&&(n=String(n)),o[t]=d||"text/plain",o[s]=o[s]||String(n.byteLength||e(n)),new Response(n,{status:a,headers:o})}var r=new Set([101,204,205,304]);function o(e,t){let a=r.has(e.status);if(!t&&!a)return e;let n=new Response(null,e);return a&&n.headers.delete(s),205===e.status&&n.headers.set(s,"0"),n}function d(){var e=this,a=e.headers=new Headers({"Cache-Control":"private, no-cache"});return e.body="",e.finished=!1,e.status=e.statusCode=200,e.getHeaders=()=>Object.fromEntries(a),e.getHeaderNames=()=>[...a.keys()],e.hasHeader=a.has.bind(a),e.getHeader=a.get.bind(a),e.removeHeader=a.delete.bind(a),e.setHeader=a.set.bind(a),Object.defineProperty(e,"status",{set:t=>{e.statusCode=t},get:()=>e.statusCode}),e.end=t=>{e.finished||(e.finished=!0,e.body=t)},e.writeHead=(t,s)=>{e.statusCode=t;for(let e in s)a.set(e,s[e])},e.send=(r,o,d)=>{let i,l,u=n(r,o,{[s]:e.getHeader(s),[t]:e.getHeader(t),...d});for([i,l]of u.headers)a.set(i,l);e.statusCode=u.status,e.end(u.body)},e}exports.STATUS_CODES=a;exports.ServerResponse=d;exports.finalize=o;exports.reply=n;