/**
 * Full API surface — import from "@ag-bash/bash/advanced"
 *
 * This entry point re-exports every public symbol from the package.
 * Use this when you need access to internals like the parser, transform
 * pipeline, security modules, services, or network utilities.
 *
 * For a minimal surface, use "@ag-bash/bash/slim" instead.
 */
export type { SearchResult } from "./agentic/ToolSearchEngine.js";
export { ToolSearchEngine } from "./agentic/ToolSearchEngine.js";
export type { BashEventMap, ExecEndEvent, ExecStartEvent, ToolEndEvent, ToolProgressEvent, ToolStartEvent, TypedEventEmitter, } from "./events.js";
export { VERSION } from "./version.js";
export { fail, output, success } from "./commands/result-helpers.js";
export type { ParseArgsOptions, ParsedArgs } from "./commands/parse-args.js";
export { parseArgs } from "./commands/parse-args.js";
export { type CreateBashToolOptions, createBashTool } from "./ai.js";
export type { AnthropicToolSet, BashToolBuilder, GenericToolSet, LangChainToolSet, OpenAIToolSet, ToolDefinition, ToolResult, VercelToolSet, } from "./ai/index.js";
export { toAnthropic, toLangChain, toOpenAI, toVercel } from "./ai/adapters/index.js";
export type { CommandNode, PipelineNode, ScriptNode, SimpleCommandNode, StatementNode, WordNode, } from "./ast/types.js";
export type { BashLogger, BashOptions, ExecOptions, JavaScriptConfig, } from "./Bash.js";
export { Bash } from "./Bash.js";
export type { AllCommandName, CommandName, JavaScriptCommandName, NetworkCommandName, PythonCommandName, } from "./commands/registry.js";
export { getCommandNames, getJavaScriptCommandNames, getNetworkCommandNames, getPythonCommandNames, } from "./commands/registry.js";
export type { CustomCommand, LazyCommand } from "./custom-commands.js";
export { defineCommand } from "./custom-commands.js";
export { InMemoryFs } from "./fs/in-memory-fs/index.js";
export type { BufferEncoding, CpOptions, DirectoryEntry, FileContent, FileEntry, FileInit, FileSystemFactory, FsEntry, FsStat, InitialFiles, LazyFileEntry, LazyFileProvider, MkdirOptions, RmOptions, SymlinkEntry, } from "./fs/interface.js";
export { MountableFs, type MountableFsOptions, type MountConfig, } from "./fs/mountable-fs/index.js";
export { OverlayFs, type OverlayFsOptions } from "./fs/overlay-fs/index.js";
export { ReadWriteFs, type ReadWriteFsOptions, } from "./fs/read-write-fs/index.js";
export { DebuggerBridge } from "./interpreter/index.js";
export type { CallStackState, CompletionSpec, ControlFlowState, ExpansionState, InterpreterContext, InterpreterState, IOState, LocalScopingState, ProcessState, ShellOptions, ShoptOptions, VariableAttributeState, } from "./interpreter/types.js";
export { SemanticEngine } from "./lsp/semantic-engine.js";
export type { AllowedUrl, AllowedUrlEntry, NetworkConfig, RequestTransform, SecureFetch, } from "./network/index.js";
export { NetworkAccessDeniedError, RedirectNotAllowedError, TooManyRedirectsError, } from "./network/index.js";
export type { CacheEntry } from "./network/WebCache.js";
export { WebCache } from "./network/WebCache.js";
export { parse } from "./parser/parser.js";
export type { CommandFinished as SandboxCommandFinished, OutputMessage, SandboxOptions, WriteFilesInput, } from "./sandbox/index.js";
export { Command as SandboxCommand, Sandbox } from "./sandbox/index.js";
export type { DestructiveWarning } from "./security/destructive-command-detector.js";
export { detectDestructiveCommand } from "./security/destructive-command-detector.js";
export type { DefenseInDepthConfig, DefenseInDepthHandle, DefenseInDepthStats, SecurityViolation, SecurityViolationType, } from "./security/index.js";
export { createConsoleViolationCallback, DefenseInDepthBox, SecurityViolationError, SecurityViolationLogger, } from "./security/index.js";
export type { MemoryEntry, MemoryScope } from "./services/AgentMemory.js";
export { AgentMemory } from "./services/AgentMemory.js";
export { loadMemoryFromFs, saveMemoryToFs, syncAgentMemory, } from "./services/AgentMemorySync.js";
export type { CronJob } from "./services/CronScheduler.js";
export { CronScheduler } from "./services/CronScheduler.js";
export type { GitOperation } from "./services/GitTracker.js";
export { GitTracker } from "./services/GitTracker.js";
export type { ServiceContainer } from "./services/ServiceContainer.js";
export { createDefaultServices } from "./services/ServiceContainer.js";
export type { Task, TaskStatus } from "./services/TaskManager.js";
export { TaskManager } from "./services/TaskManager.js";
export type { AgentMessage, Team } from "./services/TeamManager.js";
export { TeamManager } from "./services/TeamManager.js";
export type { Worktree } from "./services/WorktreeManager.js";
export { WorktreeManager } from "./services/WorktreeManager.js";
export { BashTransformPipeline } from "./transform/pipeline.js";
export type { CommandCollectorMetadata } from "./transform/plugins/command-collector.js";
export { CommandCollectorPlugin } from "./transform/plugins/command-collector.js";
export type { TeeFileInfo, TeePluginMetadata, TeePluginOptions, } from "./transform/plugins/tee-plugin.js";
export { TeePlugin } from "./transform/plugins/tee-plugin.js";
export { serialize } from "./transform/serialize.js";
export type { BashTransformResult, TransformContext, TransformPlugin, TransformResult, } from "./transform/types.js";
export type { BashExecResult, Command, CommandContext, ExecResult, IFileSystem, Observation, } from "./types.js";
export type { OutputChunk, StreamExecOptions } from "./streaming/types.js";
export { StreamingExecutor } from "./streaming/StreamingExecutor.js";
