import type { SandboxBrowserSettings, SandboxDockerSettings, SandboxPruneSettings, SandboxRuntime, SandboxSrtSettings } from "./types.sandbox.js";
export type AgentModelConfig = string | {
    /** Primary model (provider/model). */
    primary?: string;
    /** Per-agent model fallbacks (provider/model). */
    fallbacks?: string[];
};
export type AgentSandboxConfig = {
    mode?: "off" | "non-main" | "all";
    /** Sandbox runtime: "docker" (container) or "srt" (OS-level via @anthropic-ai/sandbox-runtime). */
    runtime?: SandboxRuntime;
    /** Agent workspace access inside the sandbox. */
    workspaceAccess?: "none" | "ro" | "rw";
    /**
     * Session tools visibility for sandboxed sessions.
     * - "spawned": only allow session tools to target sessions spawned from this session (default)
     * - "all": allow session tools to target any session
     */
    sessionToolsVisibility?: "spawned" | "all";
    /** Container/workspace scope for sandbox isolation. */
    scope?: "session" | "agent" | "shared";
    /** Legacy alias for scope ("session" when true, "shared" when false). */
    perSession?: boolean;
    workspaceRoot?: string;
    /** Docker-specific sandbox settings. */
    docker?: SandboxDockerSettings;
    /** @anthropic-ai/sandbox-runtime settings (OS-level sandboxing). */
    srt?: SandboxSrtSettings;
    /** Optional sandboxed browser settings. */
    browser?: SandboxBrowserSettings;
    /** Auto-prune sandbox settings. */
    prune?: SandboxPruneSettings;
};
