/**
 * Public browser runtime barrel.
 *
 * Exposes the browser control server, client helpers, config resolution, and
 * route/runtime primitives used by the plugin entrypoints and local CLI.
 */
export { startBrowserBridgeServer, stopBrowserBridgeServer } from "./browser/bridge-server.js";
export type { BrowserBridge } from "./browser/bridge-server.js";
export {
  browserAct,
  browserArmDialog,
  browserArmFileChooser,
  browserConsoleMessages,
  browserNavigate,
  browserPdfSave,
  browserScreenshotAction,
} from "./browser/client-actions.js";
export {
  browserCloseTab,
  browserFocusTab,
  browserOpenTab,
  browserCreateProfile,
  browserDeleteProfile,
  browserDoctor,
  browserProfiles,
  browserResetProfile,
  browserSnapshot,
  browserStart,
  browserStatus,
  browserStop,
  browserTabAction,
  browserTabs,
} from "./browser/client.js";
export { runBrowserProxyCommand } from "./node-host/invoke-browser.js";
export type {
  BrowserCreateProfileResult,
  BrowserDeleteProfileResult,
  BrowserDoctorCheck,
  BrowserDoctorReport,
  BrowserResetProfileResult,
  BrowserStatus,
  BrowserTab,
  BrowserTransport,
  ProfileStatus,
  SnapshotResult,
} from "./browser/client.js";
export type { BrowserExecutable } from "./browser/chrome.executables.js";
export type { ResolvedBrowserConfig, ResolvedBrowserProfile } from "./browser/config.js";
export { resolveBrowserConfig, resolveProfile } from "./browser/config.js";
export {
  DEFAULT_AI_SNAPSHOT_MAX_CHARS,
  DEFAULT_BROWSER_EVALUATE_ENABLED,
  DEFAULT_OPENCLAW_BROWSER_COLOR,
  DEFAULT_OPENCLAW_BROWSER_PROFILE_NAME,
} from "./browser/constants.js";
export {
  parseBrowserMajorVersion,
  readBrowserVersion,
  resolveGoogleChromeExecutableForPlatform,
} from "./browser/chrome.executables.js";
export { redactCdpUrl } from "./browser/cdp.helpers.js";
export {
  DEFAULT_UPLOAD_DIR,
  resolveExistingPathsWithinRoot,
  resolveExistingUploadPaths,
} from "./browser/paths.js";
export { getBrowserProfileCapabilities } from "./browser/profile-capabilities.js";
export { applyBrowserProxyPaths, persistBrowserProxyFiles } from "./browser/proxy-files.js";
export {
  isPersistentBrowserProfileMutation,
  normalizeBrowserRequestPath,
  resolveRequestedBrowserProfile,
} from "./browser/request-policy.js";
export {
  closeTrackedBrowserTabsForSessions,
  trackSessionBrowserTab,
  untrackSessionBrowserTab,
} from "./browser/session-tab-registry.js";
export { ensureBrowserControlAuth, resolveBrowserControlAuth } from "./browser/control-auth.js";
export { movePathToTrash } from "./browser/trash.js";
export {
  createBrowserControlContext,
  getBrowserControlState,
  startBrowserControlServiceFromConfig,
  stopBrowserControlService,
} from "./control-service.js";
export { createBrowserRuntimeState, stopBrowserRuntime } from "./browser/runtime-lifecycle.js";
export { type BrowserServerState, createBrowserRouteContext } from "./browser/server-context.js";
export { registerBrowserRoutes } from "./browser/routes/index.js";
export { createBrowserRouteDispatcher } from "./browser/routes/dispatcher.js";
export type { BrowserRouteRegistrar } from "./browser/routes/types.js";
export {
  installBrowserAuthMiddleware,
  installBrowserCommonMiddleware,
} from "./browser/server-middleware.js";
export type { BrowserFormField } from "./browser/client-actions-core.js";
export {
  normalizeBrowserFormField,
  normalizeBrowserFormFieldValue,
} from "./browser/form-fields.js";
