import type { HookEvent } from './converter/template.js'; export interface TestFixture { name: string; event: HookEvent; payload: Record; shouldMatch: boolean; } export interface DryRunResult { fixture: TestFixture; exitCode: number; stdout: string; matched: boolean; } export interface ValidationReport { total: number; passed: number; falsePositives: DryRunResult[]; falseNegatives: DryRunResult[]; } /** * Generate test fixtures for a hook event. * Returns 5 matching + 10 non-matching payloads. */ export declare function generateFixtures(event: HookEvent, toolMatcher?: string, filePatterns?: string[]): TestFixture[]; /** * Run a hook script against a single fixture in dry-run mode. */ export declare function runSingleDryRun(scriptPath: string, fixture: TestFixture): DryRunResult; /** * Run all fixtures against a script and produce a validation report. */ export declare function validateHookScript(scriptPath: string, fixtures: TestFixture[]): ValidationReport;