import type { Project } from './types.js'; export type WorkspaceProjectMatchReason = 'exact' | 'contained' | 'auto_created'; export type WorkspaceProjectMatch = { project: Project; reason: WorkspaceProjectMatchReason; created: boolean; }; export declare class ProjectWorkspaceConflictError extends Error { readonly project: Project; constructor(project: Project, message?: string); } export declare class ProjectWorkspaceMissingError extends Error { readonly workspaceRoot: string; constructor(workspaceRoot: string, message?: string); } export declare function canonicalWorkspacePath(raw: string | null | undefined): string | null; export declare function workspaceDirectoryExists(workspaceRoot: string | null | undefined): boolean; export declare function ensureWorkspaceDirectory(workspaceRoot: string): void; export declare function resolveWorkspaceProjectRoot(raw: string | null | undefined): string | null; export declare function isPathSameOrInsideWorkspace(workspaceRoot: string, candidatePath: string): boolean; export declare function inferProjectNameFromWorkspaceRoot(workspaceRoot: string | null | undefined): string | null; export declare function isSafeAutoCreateWorkspaceRoot(workspaceRoot: string | null | undefined): boolean;