import { type Endpoint, type Router, type RouterConfig } from "@colyseus/better-call"; import { toNodeHandler } from "@colyseus/better-call/node"; import { Transport } from "../Transport.ts"; export { createEndpoint, createMiddleware, createInternalContext, type Router, type RouterConfig, type Endpoint, type EndpointHandler, type EndpointOptions, type EndpointContext, type StrictEndpoint, } from "@colyseus/better-call"; export { toNodeHandler }; export declare function bindRouterToTransport(transport: Transport, router: Router, useExpress: boolean): void; /** * Do not use this directly. This is used internally by `@colyseus/playground`. * TODO: refactor. Avoid using globals. * @internal */ export declare let __globalEndpoints: Record; export declare function createRouter, Config extends RouterConfig>(endpoints: E, config?: Config): { handler: (request: Request) => Promise; endpoints: E; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: Endpoint & { path: string; }; params: Record; }; extend: >(newEndpoints: NE) => { handler: (request: Request) => Promise; endpoints: E & NE; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_1) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_2) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_3) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_4) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3 & NE_4; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_5) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3 & NE_4 & NE_5; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_6) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3 & NE_4 & NE_5 & NE_6; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_7) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3 & NE_4 & NE_5 & NE_6 & NE_7; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_8) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3 & NE_4 & NE_5 & NE_6 & NE_7 & NE_8; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_9) => { handler: (request: Request) => Promise; endpoints: E & NE & NE_1 & NE_2 & NE_3 & NE_4 & NE_5 & NE_6 & NE_7 & NE_8 & NE_9; addEndpoint: (endpoint: Endpoint) => void; findRoute: (method: string, path: string) => { data: ((inputCtx: any) => Promise) & { options: import("@colyseus/better-call").EndpointOptions; path: string; } & { path: string; }; params: Record; }; extend: >(newEndpoints: NE_10) => any; }; }; }; }; }; }; }; }; }; }; };