import { f as Sandbox } from "../types-Bv6I2U1c.mjs"; import { Experimental_SandboxSession, Tool, ToolSet } from "ai"; //#region src/ai/index.d.ts interface AISandboxSessionOptions { description?: string; } type SandboxToolApproval = "mutations" | "always" | "never"; type SandboxToolApprovalConfiguration = Readonly<{ bash: "user-approval" | "not-applicable"; read_file: "user-approval" | "not-applicable"; write_file: "user-approval" | "not-applicable"; }>; /** * Adapt a sandbox-sdk sandbox to AI SDK 7's experimental sandbox contract. * The caller continues to own the original sandbox and must stop it. */ declare function toAISandboxSession(sandbox: Sandbox, options?: AISandboxSessionOptions): Experimental_SandboxSession; type BashInput = { command: string; workingDirectory?: string; env?: Record; }; type ReadFileInput = { path: string; encoding?: string; startLine?: number; endLine?: number; }; type WriteFileInput = { path: string; content: string; encoding?: string; }; type SandboxTools = ToolSet & { bash: Tool; read_file: Tool; write_file: Tool; }; /** Ready-made AI SDK tools that execute only through `experimental_sandbox`. */ declare function createSandboxTools(): SandboxTools; /** Create the AI SDK 7 `toolApproval` policy for the ready-made sandbox tools. */ declare function createSandboxToolApproval(approval?: SandboxToolApproval): SandboxToolApprovalConfiguration; //#endregion export { AISandboxSessionOptions, SandboxToolApproval, SandboxToolApprovalConfiguration, SandboxTools, createSandboxToolApproval, createSandboxTools, toAISandboxSession }; //# sourceMappingURL=index.d.mts.map