/**
 * Test-assertion-strength lint.
 *
 * Background — issue #6, third piece (private):
 *   Hostile-QA against earlier versions kept finding tests that
 *   advertised wide coverage in their name ("covers all 8 scenarios",
 *   "happy path works", "全部场景") but whose body only asserted the
 *   shape was non-null. Examples we actually saw:
 *     it('covers source=model annotation', () => {
 *       const r = run()
 *       expect(r.source).toBeDefined()  // ← passes for model OR fallback
 *     })
 *
 *   The agent then summarized these as "8 scenarios fully covered",
 *   which the operator believed until they shipped and a real failure
 *   slipped through.
 *
 * What this module DOES:
 *   - Parses `it('name', ...)` / `test('name', ...)` blocks via cheap
 *     regex (no AST) and pulls the body roughly via brace balancing.
 *   - Flags a test when:
 *       (a) its name contains a wide-coverage word (covers, works,
 *           happy path, complete, all, supported, verified, 场景,
 *           覆盖, 全部, …) AND
 *       (b) the body's ONLY `expect(...)` calls use vacuous matchers
 *           (toBeDefined / toBeTruthy / not.toBeNull /
 *           not.toBeUndefined / toBeOk — anything that passes when
 *           the value is bare-defined).
 *   - Returns a list of `{file, testName, line, reason}` warnings.
 *
 * What it does NOT do:
 *   - Run the tests
 *   - Understand semantic equivalence (a test that asserts `r.source`
 *     equals 'model' OR 'fallback' is not vacuous by this lint, but
 *     it's also not strong; that's a higher-tier check we don't try
 *     to do here)
 *   - Walk imports / shared helpers
 *
 * Intentional. False positives are acceptable because the user-facing
 * surface is "warning in the DeliveryAudit report" — the model can
 * acknowledge or refute. False negatives are also acceptable: a stronger
 * lint can be layered later without changing this module.
 */
export interface VacuousAssertionFinding {
    file: string;
    testName: string;
    line: number;
    reason: string;
}
export interface LintResult {
    file: string;
    testCount: number;
    findings: VacuousAssertionFinding[];
}
/**
 * Lint a single test file's content. `filePath` is included in
 * findings for downstream reporting; the function does no fs I/O.
 */
export declare function lintTestStrength(filePath: string, content: string): LintResult;
