import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service"; /** * Encapsulates workspace folder resolution with an optional working directory override. * * When a working directory is set (agents window), it takes priority over * workspace folders for all folder-related operations. Otherwise, the class * delegates to the underlying {@link IWorkspaceContextService}. */ export declare class WorkingDirectory { private readonly _workspaceContextService; private readonly _uri?; constructor(_workspaceContextService: IWorkspaceContextService, _uri?: URI | undefined); /** The explicit working directory URI, if set. */ get uri(): URI | undefined; /** Whether an explicit working directory is set. */ get hasExplicitWorkingDirectory(): boolean; /** * Returns the workspace folder containing the given resource. * When a working directory is set, only checks against it. * Otherwise falls back to workspace context service. */ getFolder(resource: URI): URI | undefined; /** * Resolves a workspace-relative file path to a URI. * When a working directory is set, resolves against it. * Otherwise resolves against the first workspace folder. */ resolveRelativePath(filePath: string): URI | undefined; }