import type { BaseToolExecutorPort } from "../../agent_executionEngine/basic_toolLayer/baseTools/baseToolExecutorPort.js";
import { type McpRuntimeServerProfile } from "./mcpRuntimeAdapter.js";
export type RuntimeBaseToolExecutorEvent = {
    type: string;
    runtimeId: string;
    sessionId: string;
    portPath: string;
    metadata?: Readonly<Record<string, unknown>>;
};
export type RuntimeBaseToolExecutorPolicy = {
    workspaceRoot?: string;
    allowedRoots?: readonly string[];
    allowShellExecution?: boolean;
    allowGitExecution?: boolean;
    allowProcessExecution?: boolean;
    allowFilesystemWrite?: boolean;
    allowFilesystemDelete?: boolean;
    allowRipgrep?: boolean;
    allowNetworkFetch?: boolean;
    allowNetworkSearch?: boolean;
};
export type RuntimeBaseToolExecutorResourceLimits = {
    timeoutMs?: number;
    maxOutputBytes?: number;
    maxReadBytes?: number;
    maxListEntries?: number;
};
export type RuntimeBaseToolExecutorSandbox = {
    providerFamily?: string;
    profile?: string;
    isolationLevel?: string;
    ready?: boolean;
    policyProfile?: string;
    mountPolicy?: {
        readonlyRoot?: boolean;
        allowedWriteRoots?: readonly string[];
    };
    networkPolicy?: {
        outbound?: string;
    };
    probe?: {
        status?: string;
        publicSafeMessage?: string;
    };
    smoke?: {
        status?: string;
        publicSafeMessage?: string;
    };
};
export type RuntimeBaseToolExecutorContext = {
    runtimeId: string;
    sessionId: string;
    policy?: RuntimeBaseToolExecutorPolicy;
    resourceLimits?: RuntimeBaseToolExecutorResourceLimits;
    sandbox?: RuntimeBaseToolExecutorSandbox;
    mcpServers?: readonly McpRuntimeServerProfile[];
    environment?: Readonly<Record<string, string | undefined>>;
    adapters?: Partial<BaseToolExecutorPort>;
    emitEvent?: (event: RuntimeBaseToolExecutorEvent) => void;
};
export declare const baseToolExecutorPortFactoryDescriptor: {
    readonly surface: "runtime.execEngine.baseToolExecutorPortFactory";
    readonly output: "BaseToolExecutorPort";
    readonly classificationAxis: "storage-family-group-toolId-through-catalog";
    readonly implementedAdapters: readonly ["artifact.store", "computeruse.analyzeCameraFrame", "computeruse.captureCameraPhoto", "computeruse.captureScreenshot", "computeruse.keyboardAction", "computeruse.locateCursor", "computeruse.pointerAction", "computeruse.recordAudio", "computeruse.releasePermission", "computeruse.requestPermission", "computeruse.selectDevice", "computeruse.startRecording", "computeruse.stopRecording", "debug.captureState", "debug.collectLogs", "debug.launch", "filesystem.readText", "filesystem.writeText", "filesystem.deletePath", "filesystem.list", "shell.run", "process.run", "git.runGit", "search.ripgrep", "network.fetch", "network.ground", "network.nativeWebSearch", "network.search", "lsp.applyCodeActionPreview", "lsp.assistSignature", "lsp.completeCode", "lsp.explainSymbol", "lsp.formatDocumentPreview", "lsp.formatRangePreview", "lsp.inspectDiagnostics", "lsp.inspectSymbol", "lsp.locateDefinition", "lsp.locateTypeDefinition", "lsp.renameSymbolPreview", "lsp.scanDocumentSymbols", "lsp.searchWorkspaceSymbols", "lsp.suggestCodeActions", "lsp.traceImplementations", "lsp.traceReferences", "mcp.authenticate", "mcp.authorize", "mcp.cache", "mcp.callTool", "mcp.cancelExecution", "mcp.checkHealth", "mcp.connect", "mcp.createResource", "mcp.deleteResource", "mcp.disconnect", "mcp.invalidateCache", "mcp.listResources", "mcp.listTools", "mcp.nativeExecute", "mcp.ping", "mcp.readResource", "mcp.registerTool", "mcp.streamTool", "mcp.subscribe", "mcp.unregisterTool", "mcp.unsubscribe", "mcp.updateResource", "mcp.updateTool", "omni.transformMedia", "shell.validateCommand", "shell.controlPermission", "shell.enforceSandbox", "shell.monitorExecution", "shell.captureOutput", "shell.controlInteractive", "shell.feedStdin", "shell.handlePrompt", "shell.manageLifecycle", "shell.manageProcess", "shell.manageResource", "shell.manageSession", "shell.spawnProcess", "shell.startBackground", "shell.startDetached", "shell.terminateProcess", "skill.runSkill"];
    readonly unavailableCode: "PROVIDER_UNAVAILABLE";
    readonly hostOwnsRealExecution: true;
};
export declare function listRuntimeBaseToolImplementedPortPaths(context?: Pick<RuntimeBaseToolExecutorContext, "adapters">): readonly string[];
export declare function createRuntimeBaseToolExecutorPort(context: RuntimeBaseToolExecutorContext): BaseToolExecutorPort;
