import { JsonRpcMessage } from "./types.js";
import { AbstractTransport } from "../base.js";
import { HttpStreamTransportConfig } from "./types.js";
export declare class HttpStreamTransport extends AbstractTransport {
    readonly type = "http-stream";
    private _server?;
    private _config;
    private _activeSessions;
    private _activeSseConnections;
    private _requestStreamMap;
    private _pendingBatches;
    private _eventCounter;
    private _globalMessageStore;
    private _pruneInterval?;
    constructor(config?: HttpStreamTransportConfig);
    private getCorsHeaders;
    start(): Promise<void>;
    private handleRequest;
    private handlePost;
    private handleBatchTimeout;
    private completeBatchResponse;
    private handleGet;
    private handleDelete;
    private setupSSEConnection;
    private cleanupConnection;
    /**
     * Checks if a POST-initiated SSE connection has completed all responses.
     * If all responses have been sent, closes the connection as per spec recommendation.
     */
    private checkAndCloseCompletedPostConnection;
    private cleanupAllConnections;
    send(message: JsonRpcMessage): Promise<void>;
    private sendPing;
    private handleAuthentication;
    private validateSession;
    private handleResumption;
    private handleIncomingMessage;
    private httpError;
    close(): Promise<void>;
    isRunning(): boolean;
    private storeMessage;
    private pruneMessageStore;
    private getMessagesAfterEvent;
}
