import type { SyncReport } from "../sync/config-sync.js";
import type { HealthFinding } from "./contract.js";
import type { HealthProjectShape } from "./template-inspection.js";
/** Result of safely loading committed project configuration. */
export interface HealthConfigState {
    readonly config: Readonly<Record<string, unknown>>;
    readonly present: boolean;
    readonly readable: boolean;
}
/**
 * Project and legacy overlay check derived from doctor without mutation.
 * @param projectRoot
 * @param configState
 * @param shape
 */
export declare function projectStateFinding(projectRoot: string, configState: HealthConfigState, shape: HealthProjectShape | undefined): Promise<HealthFinding>;
/**
 * Local wiki contract check derived from doctor without network or writes.
 * @param projectRoot
 */
export declare function wikiFinding(projectRoot: string): Promise<HealthFinding>;
/** Offline representation of doctor's network-only starter check. */
export declare function starterFinding(): HealthFinding;
/**
 * Read-only canonical instruction check.
 * @param projectRoot
 */
export declare function instructionFinding(projectRoot: string): Promise<HealthFinding>;
/**
 * Convert one dry-run sync report into required-key and sync findings.
 * @param report
 */
export declare function configFindings(report: SyncReport): readonly [HealthFinding, HealthFinding];
//# sourceMappingURL=project-probes.d.ts.map