import { type JsonObject } from "../sync/json-path.js";
/**
 * Read one project-relative text file through deterministic Health confinement.
 * @param projectRoot - Project root, canonicalized before the read
 * @param relativePath - Strict project-relative path
 * @returns Bounded UTF-8 text, or undefined when absent
 */
export declare function readConfinedProjectText(projectRoot: string, relativePath: string): Promise<string | undefined>;
/**
 * Read and parse one confined JSON file.
 * @param projectRoot - Project root
 * @param relativePath - Strict project-relative JSON path
 * @returns Parsed JSON, or undefined when absent
 */
export declare function readConfinedProjectJson(projectRoot: string, relativePath: string): Promise<unknown | undefined>;
/**
 * Read committed-plus-local Lisa config without following unsafe files.
 * @param projectRoot - Project root
 * @returns Merged config with the local overlay winning per key
 */
export declare function readConfinedMergedConfig(projectRoot: string): Promise<JsonObject>;
//# sourceMappingURL=ui-confined-project-read.d.ts.map