import type { IncomingMessage, ServerResponse } from "node:http"; export interface SignalPairingEventLike { status?: string; [key: string]: unknown; } export interface SignalPairingSessionLike { start(): Promise; stop(): void; getStatus(): string; } export interface SignalRouteState { signalPairingSessions: Map; broadcastWs?: (data: Record) => void; config: { connectors?: Record; }; runtime?: { getService(type: string): unknown | null; }; saveConfig: () => void; workspaceDir: string; } export interface SignalRouteDeps { sanitizeAccountId: (accountId: string) => string; signalAuthExists: (workspaceDir: string, accountId: string) => boolean; signalLogout: (workspaceDir: string, accountId: string) => void; createSignalPairingSession: (options: { authDir: string; accountId: string; onEvent: (event: SignalPairingEventLike) => void; }) => SignalPairingSessionLike; } export declare const MAX_PAIRING_SESSIONS = 10; export declare function handleSignalRoute(req: IncomingMessage, res: ServerResponse, pathname: string, method: string, state: SignalRouteState, deps: SignalRouteDeps): Promise; export declare function applySignalQrOverride(plugins: { id: string; validationErrors: unknown[]; configured: boolean; qrConnected?: boolean; }[], workspaceDir: string, signalAuthExists: (workspaceDir: string, accountId: string) => boolean): void; //# sourceMappingURL=signal-routes.d.ts.map