import type { Express } from "express"; import type { SessionRegistry } from "./session-registry.js"; import type { WandStorage } from "./storage.js"; import type { LayoutNode, TaskWindowLayout } from "./types.js"; /** 校验并清洗前端提交的布局树;非法输入返回 null(空工作空间)。 */ export declare function sanitizeLayout(value: unknown): LayoutNode | null; /** 校验任务级工作窗口集合;旧版单棵布局会兼容升级成一个 window。 */ export declare function sanitizeTaskLayout(value: unknown): TaskWindowLayout | null; /** * Workspace(多标签 / 分屏项目)REST 路由。 * * 设计要点: * - POST 只建项目实体,**不启动任何会话**;会话由工作空间内「+」标签按需创建并绑定 workspaceId。 * - 布局树由前端 allotment 构造,PUT 时经 sanitizeLayout 校验/规整后落库。 */ export declare function registerWorkspaceRoutes(app: Express, storage: WandStorage, sessions?: SessionRegistry): void;