/** * Small, side-effect-free input-validation helpers shared by the cli-core library API. Each returns a * discriminated union so call sites pattern-match without throwing across the public boundary * (matches the three CLIs' `lib/validation.ts`). The project-path resolution ladder here backs the * T5 `install-plugin` policy (design 02 §T5): resolve `path? → --path? → cwd`, then marker-probe. */ /** A validated, absolute path result. */ export type ValidatedPath = { ok: true; projectPath: string; } | { ok: false; error: Error; }; /** Require a non-empty string and resolve it to an absolute path. */ export declare function requireProjectPath(raw: unknown): ValidatedPath; /** Require a non-empty path that also exists on disk (does not need to host an engine project). */ export declare function requireExistingPath(raw: unknown): ValidatedPath; /** * Resolve the T5 project-path ladder — an explicit positional arg, then a `--path` flag, then the * current working directory — and resolve the winner to an absolute path. The `--path`/`cwd` fallback * is exactly what closes defect B1 (unity `install-plugin` used to demand an explicit path). * `cwd` is injectable for deterministic tests. Never throws. */ export declare function resolveProjectPathLadder(opts: { positional?: string; path?: string; cwd?: string; }): { source: "positional" | "path" | "cwd"; projectPath: string; }; //# sourceMappingURL=validation.d.ts.map