import type { GuestAgentMessagePayload } from "../hub/index.js";
import { PeerRuntime } from "../peer/runtime/peer-runtime.js";
import type { PeerInteractiveRuntime } from "../peer/tui/peer-interactive-mode.js";
import type { PeerThinkingLevel } from "../peer/types.js";
import type { AcpClientRuntimeOptions } from "./acp-client-runtime.js";
import type { GuestAcpCliOptions } from "./cli-args.js";
export declare class GuestAcpRuntime implements PeerInteractiveRuntime {
    private readonly peerRuntime;
    private readonly acpRuntime;
    private readonly projection;
    private readonly acpProcess?;
    private promptChain;
    private cancelRequested;
    readonly hello: import("../hub/index.js").PeerHelloPayload;
    readonly appState: import("../peer/index.js").PeerAppState;
    readonly uiState: import("../peer/index.js").PeerUiState;
    private constructor();
    static fromCommand(options: GuestAcpCliOptions & {
        version: string;
        cwd?: string;
    }): GuestAcpRuntime;
    static fromRuntimes(peerRuntime: PeerRuntime, acpOptions: AcpClientRuntimeOptions): GuestAcpRuntime;
    start(): Promise<void>;
    stop(): Promise<void>;
    queueWrite(text: string): Promise<void>;
    private enqueueInboundAgentMessage;
    queueFlush(): Promise<void>;
    submitPrompt(text: string): Promise<void>;
    abort(): Promise<boolean>;
    switchAgent(): Promise<void>;
    setModel(): Promise<void>;
    setThinkingLevel(_level: PeerThinkingLevel): Promise<void>;
    invokeCommand(commandName: string): Promise<void>;
    getSessionSources(): ReturnType<PeerRuntime["getSessionSources"]>;
    pauseSource(): ReturnType<PeerRuntime["pauseSource"]>;
    restartSource(): ReturnType<PeerRuntime["restartSource"]>;
    removeSource(): ReturnType<PeerRuntime["removeSource"]>;
    getMcpServers(): ReturnType<PeerRuntime["getMcpServers"]>;
    pauseMcpServer(): ReturnType<PeerRuntime["pauseMcpServer"]>;
    restartMcpServer(): ReturnType<PeerRuntime["restartMcpServer"]>;
    removeMcpServer(): ReturnType<PeerRuntime["removeMcpServer"]>;
}
export declare function createAcpProcessEnv(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
export declare function formatGuestAgentMessagePrompt(payload: GuestAgentMessagePayload): string;
//# sourceMappingURL=acp-guest-runtime.d.ts.map