/** * Workspace Tool Helpers * * Runtime assertions for extracting workspace resources from tool execution context. */ import type { ToolExecutionContext } from '../../tools/types.js'; import type { WorkspaceFilesystem } from '../filesystem/index.js'; import type { WorkspaceSandbox } from '../sandbox/index.js'; import type { Workspace } from '../workspace.js'; /** * Extract workspace from tool execution context. * Throws if workspace is not available. */ export declare function requireWorkspace(context: ToolExecutionContext): Workspace; /** * Extract filesystem from workspace in tool execution context. * Throws if workspace or filesystem is not available. */ export declare function requireFilesystem(context: ToolExecutionContext): { workspace: Workspace; filesystem: WorkspaceFilesystem; }; /** * Extract sandbox from workspace in tool execution context. * Throws if workspace or sandbox is not available. */ export declare function requireSandbox(context: ToolExecutionContext): { workspace: Workspace; sandbox: WorkspaceSandbox; }; /** * Emit workspace metadata as a data chunk so the UI can render workspace info immediately. * Should be called at the start of every workspace tool's execute function. */ export declare function emitWorkspaceMetadata(context: ToolExecutionContext, toolName: string): Promise; /** * Get LSP diagnostics text to append to edit tool results. * Non-blocking — returns empty string on any failure. * * LSP is a Workspace-level feature. This helper checks if the workspace * has an LSP manager and uses it to get diagnostics for the edited file. * * @param workspace - The workspace (must have an LSP manager for diagnostics) * @param filePath - Relative path within the filesystem (as used by the tool) * @param content - The file content after the edit * @returns Formatted diagnostics text, or empty string if unavailable */ export declare function getEditDiagnosticsText(workspace: Workspace, filePath: string, content: string): Promise; //# sourceMappingURL=helpers.d.ts.map