import { type WorkbenchSessionRow, type WorkbenchTerminalLocation } from './agent-workbench-model.js'; import { type WorkbenchStorage } from './agent-workbench-storage.js'; import type { FeishuJsApi, WorkbenchH5Context } from './agent-workbench-chat.js'; import { type WorkbenchApi } from './agent-workbench-api.js'; import type { WorkbenchCapabilities } from './agent-workbench-capabilities.js'; export interface AgentWorkbenchViewProps { sessions: readonly WorkbenchSessionRow[]; online: boolean; authenticated: boolean; /** P1-4:服务端投影的最小操作能力集。`authenticated` 只决定观察级形态(同源 * 终端链路、控制权状态拉取);三类写操作入口分别看 canLocate(定位按钮)、 * canControl(终端接管)、canInteract(Preview 解锁)。话题跳转是数据提供的 * 原生 AppLink,不是写操作。必填——调用方必须显式 * 给出投影值(页面从 ui.workbenchCapabilities 取,缺省已是全 false)。 */ capabilities: WorkbenchCapabilities; /** 本机**完整管理身份**(`/api/settings` 的 `authed`,即 Dashboard 既有的 * owner 判据)。只用来决定「常驻链接」这一个入口画不画:那条端点只对 legacy * 管理 cookie 开放,H5/平台身份点了必然 401。缺省 false = fail closed。 * 与 `authenticated`(能进工作台)和 `capabilities`(三类会话操作)都不同轴, * 所以单独一个字段,不塞进能力集。 */ manageAuthed?: boolean; initialSessionId?: string | null; locale?: string; now?: number; viewportWidth?: number; api?: WorkbenchApi; storage?: WorkbenchStorage | null; location?: WorkbenchTerminalLocation | null; h5Context?: WorkbenchH5Context | null; sdk?: FeishuJsApi | null; demo?: boolean; onRouteChange?(hash: string): void; } export declare function AgentWorkbenchView(props: AgentWorkbenchViewProps): JSX.Element; //# sourceMappingURL=agent-workbench-view.d.ts.map