import { createClineMcpRuntimeService } from "../cline-sdk/cline-mcp-runtime-service.js";
import type { ClineTaskSessionService } from "../cline-sdk/cline-task-session-service.js";
import type { RuntimeConfigState } from "../config/runtime-config.js";
import type { RuntimeCommandRunResponse } from "../core/api-contract.js";
import type { TerminalSessionManager } from "../terminal/session-manager.js";
import type { RuntimeTrpcContext, RuntimeTrpcWorkspaceScope } from "./app-router.js";
export interface CreateRuntimeApiDependencies {
    getActiveWorkspaceId: () => string | null;
    getActiveRuntimeConfig?: () => RuntimeConfigState;
    loadScopedRuntimeConfig: (scope: RuntimeTrpcWorkspaceScope) => Promise<RuntimeConfigState>;
    setActiveRuntimeConfig: (config: RuntimeConfigState) => void;
    getScopedTerminalManager: (scope: RuntimeTrpcWorkspaceScope) => Promise<TerminalSessionManager>;
    getScopedClineTaskSessionService: (scope: RuntimeTrpcWorkspaceScope) => Promise<ClineTaskSessionService>;
    resolveInteractiveShellCommand: () => {
        binary: string;
        args: string[];
    };
    runCommand: (command: string, cwd: string) => Promise<RuntimeCommandRunResponse>;
    broadcastClineMcpAuthStatusesUpdated?: (statuses: Awaited<ReturnType<ReturnType<typeof createClineMcpRuntimeService>["getAuthStatuses"]>>) => void;
    bumpClineSessionContextVersion?: () => void;
    prepareForStateReset?: () => Promise<void>;
}
export declare function createRuntimeApi(deps: CreateRuntimeApiDependencies): RuntimeTrpcContext["runtimeApi"];
//# sourceMappingURL=runtime-api.d.ts.map