import type { ToolDefinition, ScreenNode, ScreenNodeVisibility } from "@loomic/types"; import type { UIComposer } from "./ui-composer.js"; /** * Built-in surface.* tools that let the planner manipulate the UI * through the standard tool call mechanism. * * Each tool wraps a UIComposer operation and returns the updated screen state. */ export type MountInput = { node: ScreenNode; }; export type UnmountInput = { nodeId: string; }; export type ReorderInput = { nodeId: string; priority: number; }; export type UpdatePropsInput = { nodeId: string; props: Record; }; export type SetVisibilityInput = { nodeId: string; visibility: ScreenNodeVisibility; }; export type AnnotateInput = { nodeId: string; text: string; }; /** * Create all surface.* tool definitions bound to a given UIComposer. */ export declare function createUITools(ui: UIComposer): ToolDefinition[]; //# sourceMappingURL=ui-tools.d.ts.map