/** * `openlore impact-certificate` — the change-impact certificate's CLI + git-hook * surface (change: add-change-impact-certificate). * * Prints the conclusion-shaped impact certificate for the current diff (the same * artifact the `change_impact_certificate` MCP tool returns): blast radius, the * paths the change opens into each declared covering surface, drifted specs, and * the tests to run. It can install an ADVISORY pre-commit hook that emits the * certificate before every commit. Per the spec (cli/ImpactCertificateCommand, * mcp-handlers/AdvisoryByDefault): the hook is opt-in, advisory by default (exit 0), * and blocks only when `.openlore/config.json` `impactCertificate.block` names a * surface severity that the change actually opens a new path into. Infrastructure * failure (no graph, not a repo) NEVER blocks. */ import { Command } from 'commander'; import { type ImpactCertificate } from '../../core/services/mcp-handlers/impact-certificate.js'; import type { CoveringSurfaceSeverity } from '../../types/index.js'; export declare function installImpactCertificateHook(rootPath: string): Promise; export declare function uninstallImpactCertificateHook(rootPath: string): Promise; /** The surfaces a newly-opened path reaches whose severity is in the configured block list. * Reads the certificate's structured paths, never prose — a triggering path cannot be sliced off. */ export declare function triggeredBlockSeverities(cert: ImpactCertificate, block: readonly CoveringSurfaceSeverity[]): CoveringSurfaceSeverity[]; export interface ImpactCertificateCliOptions { cwd?: string; base?: string; change?: string; json?: boolean; hook?: boolean; save?: boolean; installHook?: boolean; uninstallHook?: boolean; } export declare function runImpactCertificateCli(opts: ImpactCertificateCliOptions): Promise; export declare const impactCertificateCommand: Command; //# sourceMappingURL=impact-certificate.d.ts.map