/**
 * Thompson Protocol Tools — "Calculus Made Easy" approach to AI content
 *
 * 4-agent pipeline:
 *   1. Thompson Writer — Plain English mandate, intuition-before-mechanics
 *   2. Feynman Editor — Skeptical Beginner rejection loop
 *   3. Visual Metaphor Mapper — 1:1 analogy→visual prompt generation
 *   4. Anti-Elitism Linter — Mechanical ban list + readability scoring
 *
 * Plus orchestration:
 *   5. thompson_pipeline — End-to-end orchestrator
 *   6. thompson_quality_gate — Deterministic pass/fail checklist
 */
import type { McpTool } from "../types.js";
export declare const THOMPSON_SYSTEM_PROMPTS: {
    writer: string;
    feynman_editor: string;
    visual_mapper: string;
    anti_elitism_linter: string;
};
export interface ThompsonQualityChecklist {
    hasPlainEnglishTranslations: boolean;
    hasAnalogyPerConcept: boolean;
    hasDifficultyAcknowledgment: boolean;
    hasIntuitionBeforeMechanics: boolean;
    passesFeynmanEdit: boolean;
    passesAntiElitismLint: boolean;
    hasVisualMetaphors: boolean;
    fleschKincaidUnder10: boolean;
    noBannedPhrases: boolean;
    hasProgressiveComplexity: boolean;
}
export declare function deriveThompsonGrade(checklist: ThompsonQualityChecklist): "exemplary" | "passing" | "needs_work" | "failing";
declare function lintBannedPhrases(text: string): Array<{
    phrase: string;
    category: string;
    replacement: string;
    position: number;
}>;
declare function computeReadabilityMetrics(text: string): {
    fleschKincaidGrade: number;
    passiveVoicePct: number;
    avgSentenceLength: number;
    jargonDensity: number;
};
declare function countSyllables(word: string): number;
export declare function createThompsonProtocolTools(): McpTool[];
/**
 * Detect positive Thompson signals — analogies, difficulty acknowledgments,
 * "in other words" translations, and progressive complexity markers.
 * Returns a density score (0-100) and specific signal counts.
 */
export declare function computeAnalogyDensity(text: string): {
    score: number;
    analogyCount: number;
    difficultyAckCount: number;
    translationCount: number;
    questionCount: number;
    wordCount: number;
    details: string[];
};
export declare const _testExports: {
    lintBannedPhrases: typeof lintBannedPhrases;
    computeReadabilityMetrics: typeof computeReadabilityMetrics;
    countSyllables: typeof countSyllables;
    BANNED_PHRASES: {
        phrase: string;
        category: string;
        replacement: string;
    }[];
    computeAnalogyDensity: typeof computeAnalogyDensity;
};
export {};
