aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/api/server.classes.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/bun.js/api/server.classes.ts')
-rw-r--r--src/bun.js/api/server.classes.ts78
1 files changed, 78 insertions, 0 deletions
diff --git a/src/bun.js/api/server.classes.ts b/src/bun.js/api/server.classes.ts
new file mode 100644
index 000000000..5ae4f1739
--- /dev/null
+++ b/src/bun.js/api/server.classes.ts
@@ -0,0 +1,78 @@
+import { define } from "../scripts/class-definitions";
+
+function generate(name) {
+ return define({
+ name,
+ proto: {
+ fetch: {
+ fn: "fetch",
+ length: 1,
+ },
+ },
+ values: ["callback"],
+ klass: {},
+ finalize: true,
+ construct: true,
+ });
+}
+export default [
+ // generate(`HTTPServer`),
+ // generate(`DebugModeHTTPServer`),
+ // generate(`HTTPSServer`),
+ // generate(`DebugModeHTTPSServer`),
+
+ define({
+ name: "ServerWebSocket",
+ JSType: "0b11101110",
+ proto: {
+ send: {
+ fn: "send",
+ length: 2,
+ },
+ close: {
+ fn: "close",
+ length: 1,
+ },
+ getBufferedAmount: {
+ fn: "getBufferedAmount",
+ length: 0,
+ },
+ publish: {
+ fn: "publish",
+ length: 3,
+ },
+ data: {
+ getter: "getData",
+ cache: true,
+ setter: "setData",
+ },
+ readyState: {
+ getter: "getReadyState",
+ },
+ subscribe: {
+ fn: "subscribe",
+ length: 1,
+ },
+ unsubscribe: {
+ fn: "unsubscribe",
+ length: 1,
+ },
+ isSubscribed: {
+ fn: "isSubscribed",
+ length: 1,
+ },
+
+ // topics: {
+ // getter: "getTopics",
+ // },
+
+ remoteAddress: {
+ getter: "getRemoteAddress",
+ cache: true,
+ },
+ },
+ finalize: true,
+ construct: true,
+ klass: {},
+ }),
+];