import { AppOptions, HttpRequest, HttpResponse, ListenOptions, RecognizedString, TemplatedApp, WebSocketBehavior, us_listen_socket } from 'uWebSockets.js'; import * as http from 'node:http'; import * as https from 'node:https'; export declare class NativeTemplatedApp implements TemplatedApp { private listeners; server: https.Server | http.Server; constructor(options?: AppOptions); listen(host: RecognizedString, port: number, cb: (listenSocket: false | us_listen_socket) => void | Promise): TemplatedApp; listen(port: number, cb: (listenSocket: false | us_listen_socket) => void | Promise): TemplatedApp; listen(port: number, options: ListenOptions, cb: (listenSocket: false | us_listen_socket) => void | Promise): TemplatedApp; listen_unix(cb: (listenSocket: us_listen_socket) => void | Promise, path: RecognizedString): TemplatedApp; get(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; post(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; options(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; del(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; patch(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; put(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; head(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; connect(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; trace(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; any(pattern: RecognizedString, handler: (res: HttpResponse, req: HttpRequest) => void | Promise): TemplatedApp; ws(pattern: RecognizedString, behavior: WebSocketBehavior): TemplatedApp; publish(topic: RecognizedString, message: RecognizedString, isBinary?: boolean | undefined, compress?: boolean | undefined): boolean; numSubscribers(topic: RecognizedString): number; addServerName(hostname: string, options: AppOptions): TemplatedApp; domain(domain: string): TemplatedApp; removeServerName(hostname: string): TemplatedApp; missingServerName(cb: (hostname: string) => void): TemplatedApp; filter(cb: (res: HttpResponse, count: Number) => void | Promise): TemplatedApp; close(): TemplatedApp; }