import type { Context } from "@steve.kite/stdlib"; import { type NativeProcessManager } from "../../processes/index.js"; import { type PermissionContext } from "../../permissions/index.js"; import type { BashContext } from "./BashContext.js"; import { type ManagedNetworkInterceptor, type ManagedNetworkPolicy } from "./ManagedNetworkPolicy.js"; import { type SandboxedProcessNetwork } from "./startSandboxedProcessNetwork.js"; import { loadProjectManagedNetworkPolicy } from "./loadProjectManagedNetworkPolicy.js"; import { type SessionSecretContext } from "../../secrets/index.js"; export interface CreateNodeBashContextOptions { ctx: Context; cwd: string; environment?: NodeJS.ProcessEnv; loadManagedNetworkPolicy?: typeof loadProjectManagedNetworkPolicy; networkInterceptor?: ManagedNetworkInterceptor; processManager: NativeProcessManager; permissions: PermissionContext; secrets?: SessionSecretContext; startManagedNetwork?: (policy: ManagedNetworkPolicy | undefined) => Promise<(Pick & Partial>) | undefined>; } export declare function createNodeBashContext(options: CreateNodeBashContextOptions): BashContext;