import { BaseTransport } from "../base.js";
import { JSONRPCMessage } from "@modelcontextprotocol/sdk/types.js";
import { ImageTransportOptions, ImageContent } from "../utils/image-handler.js";
type ExtendedJSONRPCMessage = JSONRPCMessage & {
    result?: {
        content?: Array<ImageContent | {
            type: string;
            [key: string]: unknown;
        }>;
        [key: string]: unknown;
    };
};
/**
 * StdioServerTransport
 */
export declare class StdioServerTransport implements BaseTransport {
    readonly type = "stdio";
    private transport;
    private running;
    private imageOptions;
    constructor(imageOptions?: Partial<ImageTransportOptions>);
    start(): Promise<void>;
    send(message: ExtendedJSONRPCMessage): Promise<void>;
    private prepareMessageWithImage;
    close(): Promise<void>;
    isRunning(): boolean;
    set onclose(handler: (() => void) | undefined);
    set onerror(handler: ((error: Error) => void) | undefined);
    set onmessage(handler: ((message: JSONRPCMessage) => void) | undefined);
}
export {};
