import type { TotemConfig } from '@mmnto/totem';
import type { ShieldOptions } from './shield.js';
/**
 * Pre-flight deterministic-rule estimator for `totem review --estimate`
 * (mmnto-ai/totem#1714). Runs the same compiled-rule engine as
 * `totem lint` against the diff resolved by `totem review`'s standard
 * resolution chain (explicit `--diff` → `--staged` → working-tree →
 * branch-vs-base) and returns immediately. No orchestrator, no
 * embedder, no LanceDB — the entire LLM Verification Layer is
 * structurally unreachable from this module.
 *
 * Output is labeled `[Estimate]` (`ESTIMATE_DISPLAY_TAG`) on every log
 * line so consumers cannot conflate this with an LLM verdict; the
 * verdict line and `SHIELD_FAILED` exit semantics are inherited from
 * `runCompiledRules` unchanged so a passing estimate looks identical to
 * a passing `totem lint` run on the metrics + trap-ledger surface.
 *
 * After `runCompiledRules` returns, the pattern-history overlay layer
 * (mmnto-ai/totem#1731) reads `.totem/recurrence-stats.json` (substrate
 * from mmnto-ai/totem#1715) and surfaces uncovered historical patterns
 * whose tokens are present in the diff additions above a containment
 * threshold. Opt out via `--no-history`. Missing/malformed substrate
 * degrades to a single dim hint line so the deterministic pass output
 * is unchanged.
 *
 * Empty-diff handling intentionally does NOT stamp the
 * `.reviewed-content-hash` push-gate cache: an estimate is a forecast,
 * not a passing review, and stamping the cache would let the push-gate
 * unblock without ever running the LLM review.
 */
export declare function runEstimate(options: ShieldOptions, config: TotemConfig, cwd: string, configRoot: string): Promise<void>;
//# sourceMappingURL=shield-estimate.d.ts.map