import { A as AgentToolSidebarHeaderContract } from '../../headerLayout.d-CP4ujEbo.js'; export { a as AgentToolSidebarHeaderLayout } from '../../headerLayout.d-CP4ujEbo.js'; import * as react from 'react'; import { ReactNode, HTMLAttributes } from 'react'; import { BrowserNodeAutomationTargetMetadata, BrowserNodeHostApi, BrowserNodeChromeImportPromptAdapter, BrowserNodeSessionMode, BrowserNodeFeature } from '@tutti-os/browser-node'; import { BrowserNodeErrorRenderContext } from '@tutti-os/browser-node/react'; import { I18nRuntime } from '@tutti-os/ui-i18n-runtime'; import { IconProps } from '@tutti-os/ui-system'; declare const agentToolPanelIds: readonly ["files", "terminal", "browser", "tasks", "apps", "messages", "side"]; type AgentToolPanelId = (typeof agentToolPanelIds)[number]; interface AgentToolPanelDefinition { canAdd?: boolean; id: AgentToolPanelId; label: string; } interface AgentToolTab { id: string; panel: AgentToolPanelId; resourceId?: string; } declare function isAgentToolPanelId(value: string): value is AgentToolPanelId; declare function filterAgentToolPanels(panels: readonly { canAdd?: boolean; id: string; label: string; }[]): AgentToolPanelDefinition[]; declare function filterAgentToolAddablePanels(panels: readonly AgentToolPanelDefinition[]): AgentToolPanelDefinition[]; declare const agentToolEmptySidebarWidth: number; declare const agentToolMainMinWidth = 280; declare const agentToolPanelDefaultWidthById: Record; declare const agentToolPanelMinWidthById: Record; declare const agentToolPanelMaxWidthById: Record; interface AgentToolSidebarState { activePanel: AgentToolPanelId | null; activeTabId: string | null; mountedTabs: AgentToolTab[]; } type AgentToolSidebarAction = { panel: AgentToolPanelId; resourceId?: string; tabId: string; type: "open-panel" | "add-panel" | "ensure-panel"; } | { tabId: string; type: "activate-tab" | "close-tab"; } | { type: "close"; }; declare function createAgentToolSidebarState(initial?: Partial): AgentToolSidebarState; declare function reduceAgentToolSidebarState(state: AgentToolSidebarState, action: AgentToolSidebarAction): AgentToolSidebarState; declare function resolveAgentToolPanelExpansionReset(input: { expandedPanel: AgentToolPanelId | null; nextPanel: AgentToolPanelId | null; widthBeforeExpansion?: number; }): { panel: AgentToolPanelId; width: number; } | null; declare function resolveAgentToolPanelExpansionTransfer(input: { expandedPanel: AgentToolPanelId | null; nextPanel: AgentToolPanelId | null; nextPanelWidth: number; widthBeforeExpansion?: number; }): { expandedPanel: AgentToolPanelId; nextPanelWidthBeforeExpansion: number; previousPanel: AgentToolPanelId; previousPanelWidth: number; } | null; declare function resolveAgentToolPanelMaxWidth(panel: AgentToolPanelId, viewportWidth: number, allowFullWidth?: boolean, mainContentMinWidth?: number): number; declare function clampAgentToolPanelWidth(input: { allowFullWidth?: boolean; mainContentMinWidth?: number; panel: AgentToolPanelId; viewportWidth: number; width: number; }): number; declare function resolveAgentToolSidebarWidth(input: { allowFullWidth?: boolean; baselineViewportWidth: number; mainContentMinWidth?: number; panel: AgentToolPanelId; preferredWidth: number; viewportWidth: number; }): number; declare function resolveAgentToolSidebarLayoutWidth(input: { baselineContainerWidth: number; panelWidth: number; containerWidth: number; }): number; declare function resolveAgentToolPanelPreferredWidth(input: { isExpanded: boolean; manuallyResizedWidth?: number | null; panelWidth: number; }): number; declare function shouldResizeAgentToolContainer(input: { currentWidth: number; lastResize?: { actualWidth: number; requestedWidth: number; } | null; requestedWidth: number; }): boolean; declare function shouldAutoCollapseAgentToolSidebar(input: { containerWidth: number; mainContentMinWidth: number; sidebarWidth: number; }): boolean; declare function formatAgentToolReminderCount(value: number | null | undefined): string | null; declare const agentToolBrowserDefaultUrl = "https://www.google.com/"; interface AgentToolBrowserPanelProps { automationTarget?: Omit | null; browserApi: BrowserNodeHostApi; chromeCookieImportPrompt?: BrowserNodeChromeImportPromptAdapter; defaultUrl?: string; defaultActions?: ReactNode; dragHandleProps?: HTMLAttributes; hidden: boolean; i18n: I18nRuntime; loadingFallback?: ReactNode; navigationActions?: ReactNode; nodeIdPrefix?: string; onCloseRequest?: () => void; onControllerReady?: (controller: AgentToolBrowserController | null) => void; profileId?: string | null; renderError?: (context: BrowserNodeErrorRenderContext) => ReactNode; sessionMode?: BrowserNodeSessionMode; sessionPartition?: string | null; } interface AgentToolBrowserController { activatePageByUrl(url: string): string | null; closePage(nodeId: string): "closed" | "last-page" | "not-found"; createPage(url?: string | null): string; ownsPage(nodeId: string): boolean; selectPage(nodeId: string): boolean; surfaceNodeId: string; } declare function AgentToolBrowserPanel({ automationTarget, browserApi, chromeCookieImportPrompt, defaultUrl, defaultActions, dragHandleProps, hidden, i18n, loadingFallback, navigationActions, nodeIdPrefix, onCloseRequest, onControllerReady, profileId, renderError, sessionMode, sessionPartition }: AgentToolBrowserPanelProps): ReactNode; declare function createAgentToolBrowserFeature(input: { browserApi: BrowserNodeHostApi; chromeCookieImportPrompt?: BrowserNodeChromeImportPromptAdapter; i18n: I18nRuntime; nodeId: string; }): BrowserNodeFeature; interface AgentToolSidebarCopy { close: string; closeRightPanel: string; expand: string; newTab: string; openRightPanel: string; resizeSidebar: string; shrink: string; tool: string; } type AgentToolSidebarReminderCounts = Partial>; declare function AgentToolPanelIcon({ panel, ...iconProps }: IconProps & { panel: AgentToolPanelId; }): ReactNode; declare function AgentToolSidebarToolbar({ activePanel, copy, isExpanded, isOpen, panels, quickActionPanels, reminders, showToggleButton, onAddPanel, onOpenPanel, onToggleExpansion, onToggleSidebar }: { activePanel: AgentToolPanelId | null; copy: AgentToolSidebarCopy; isExpanded: boolean; isOpen: boolean; panels: readonly AgentToolPanelDefinition[]; quickActionPanels?: readonly AgentToolPanelId[]; reminders?: AgentToolSidebarReminderCounts; showToggleButton?: boolean; onAddPanel: (panel: AgentToolPanelId) => void; onOpenPanel: (panel: AgentToolPanelId) => void; onToggleExpansion: () => void; onToggleSidebar: () => void; }): ReactNode; interface AgentToolSidebarHandle { addPanel(panel: AgentToolPanelId, resourceId?: string): string | null; close(): void; collapseForContainerConstraint(): void; closeTab(tabId: string): void; ensurePanel(panel: AgentToolPanelId, resourceId?: string): string | null; openPanel(panel: AgentToolPanelId, resourceId?: string): string | null; } interface AgentToolSidebarProps { children: ReactNode; containerWidth: number; copy: AgentToolSidebarCopy; header: AgentToolSidebarHeaderContract; mainContentMinWidthPx?: number; panels: readonly AgentToolPanelDefinition[]; quickActionPanels?: readonly AgentToolPanelId[]; reminders?: AgentToolSidebarReminderCounts; renderLoading?: (tab: AgentToolTab) => ReactNode; renderPanel: (input: { active: boolean; closeSidebar: () => void; tab: AgentToolTab; }) => ReactNode; renderTabIcon?: (tab: AgentToolTab) => ReactNode; resolveTabLabel?: (tab: AgentToolTab, defaultLabel: string) => string; showToggleButton?: boolean; resizeContainerContentWidth(width: number, animate?: boolean): Promise<{ width: number; }>; onPanelOpen?: (panel: AgentToolPanelId, resourceId?: string) => void; onLayoutWidthChange?: (width: number) => void; onActivePanelChange?: (panel: AgentToolPanelId | null) => void; onTabsChange?: (tabs: readonly AgentToolTab[]) => void; onTabClose?: (tab: AgentToolTab) => void; } declare const AgentToolSidebar: react.ForwardRefExoticComponent>; declare function AgentToolSidebarPicker({ panels, onSelect }: { panels: readonly AgentToolPanelDefinition[]; onSelect: (panel: AgentToolPanelId) => void; }): ReactNode; export { type AgentToolBrowserController, AgentToolBrowserPanel, type AgentToolBrowserPanelProps, type AgentToolPanelDefinition, AgentToolPanelIcon, type AgentToolPanelId, AgentToolSidebar, type AgentToolSidebarAction, type AgentToolSidebarCopy, type AgentToolSidebarHandle, AgentToolSidebarHeaderContract, AgentToolSidebarPicker, type AgentToolSidebarProps, type AgentToolSidebarReminderCounts, type AgentToolSidebarState, AgentToolSidebarToolbar, type AgentToolTab, agentToolBrowserDefaultUrl, agentToolEmptySidebarWidth, agentToolMainMinWidth, agentToolPanelDefaultWidthById, agentToolPanelIds, agentToolPanelMaxWidthById, agentToolPanelMinWidthById, clampAgentToolPanelWidth, createAgentToolBrowserFeature, createAgentToolSidebarState, filterAgentToolAddablePanels, filterAgentToolPanels, formatAgentToolReminderCount, isAgentToolPanelId, reduceAgentToolSidebarState, resolveAgentToolPanelExpansionReset, resolveAgentToolPanelExpansionTransfer, resolveAgentToolPanelMaxWidth, resolveAgentToolPanelPreferredWidth, resolveAgentToolSidebarLayoutWidth, resolveAgentToolSidebarWidth, shouldAutoCollapseAgentToolSidebar, shouldResizeAgentToolContainer };