/**
 * Hono Server Adapter
 * Primary server adapter implementation using Hono framework
 * Hono is chosen for its performance, TypeScript-first design, and edge compatibility
 */
import type { NeuroLink } from "../../neurolink.js";
import { BaseServerAdapter } from "../abstract/baseServerAdapter.js";
import type { MiddlewareDefinition, RouteDefinition, ServerAdapterConfig } from "../../types/index.js";
/**
 * Hono-specific server adapter
 * Supports multiple runtimes: Bun, Deno, Node.js
 */
export declare class HonoServerAdapter extends BaseServerAdapter {
    private app;
    private server?;
    private rateLimitStore;
    private rateLimitCleanupInterval?;
    private requestContextStore;
    constructor(neurolink: NeuroLink, config?: ServerAdapterConfig);
    /**
     * Create rate limiter middleware for Hono
     */
    private createRateLimiter;
    /**
     * Periodically clean up expired rate limit entries
     */
    private cleanupRateLimitStore;
    /**
     * Initialize Hono framework
     */
    protected initializeFramework(): void;
    /**
     * Register route with Hono
     */
    protected registerFrameworkRoute(route: RouteDefinition): void;
    /**
     * Handle streaming response using SSE
     */
    private handleStreamingResponse;
    /**
     * Transform a raw provider chunk into a StreamEvent
     * Provider chunks are typically { content: string } objects;
     * the client SDK expects { type: "text", content: string, timestamp: number }
     */
    private toStreamEvent;
    /**
     * Register middleware with Hono
     */
    protected registerFrameworkMiddleware(middleware: MiddlewareDefinition): void;
    /**
     * Start the Hono server
     */
    start(): Promise<void>;
    /**
     * Stop the Hono server with graceful shutdown
     */
    stop(): Promise<void>;
    /**
     * Stop accepting new connections
     */
    protected stopAcceptingConnections(): Promise<void>;
    /**
     * Close the underlying server
     */
    protected closeServer(): Promise<void>;
    /**
     * Force close all active connections
     */
    protected forceCloseConnections(): Promise<void>;
    /**
     * Get the Hono app instance
     */
    getFrameworkInstance(): unknown;
    private extractHeaders;
    private extractQuery;
    private extractBody;
}
