import { NextRequest, NextResponse } from 'next/server';
import { PlugNPlayServer } from '../server/index.js';
import { e as ServerConfig, E as EventMap } from '../types-BQpUMSaB.js';
import 'zod';

interface NextJSWSConfig extends Omit<ServerConfig, 'port'> {
    corsOrigin?: string | string[] | boolean;
    enableHealthCheck?: boolean;
}
declare function createNextJSHandler<T extends Record<string, unknown> = EventMap>(server: PlugNPlayServer<T>, config?: NextJSWSConfig): (request: NextRequest) => Promise<NextResponse<unknown>>;
declare function startWebSocketServer<T extends Record<string, unknown> = EventMap>(config?: ServerConfig): Promise<PlugNPlayServer<T>>;
declare function createExampleRoute(): {
    GET: (request: NextRequest) => Promise<NextResponse<unknown>>;
    POST: (request: NextRequest) => Promise<NextResponse<unknown>>;
    DELETE: (request: NextRequest) => Promise<NextResponse<unknown>>;
    OPTIONS: (request: NextRequest) => Promise<NextResponse<unknown>>;
};

export { type NextJSWSConfig, createExampleRoute, createNextJSHandler, startWebSocketServer };
