/** * Compat capability detectors. * * Pure module: (content, filePath) -> { evidence, observations }. Detectors * collect raw EvidenceRecord[] from the source, then deriveObservations() * rolls evidence up into capability-level Observation[]. The verdict layer * (downstream) decides whether each observation produces a compat issue. * * Pattern IDs MUST be registered in PATTERN_REGISTRY (assertPatternRegistered * is called against every emitted record). */ import { type ValidationIssue } from '@vibe-agent-toolkit/agent-schema'; import type { EvidenceRecord, Observation } from '../evidence/index.js'; export interface DetectorOutput { evidence: EvidenceRecord[]; observations: Observation[]; } export declare function collectLocalShellEvidence(content: string, filePath: string, locationRoot: string): EvidenceRecord[]; export declare function collectExternalCLIEvidence(content: string, filePath: string, locationRoot: string): EvidenceRecord[]; export declare function collectBrowserAuthEvidence(content: string, filePath: string, locationRoot: string): EvidenceRecord[]; export declare function deriveObservations(evidence: readonly EvidenceRecord[]): Observation[]; /** * Convert a capability Observation into a ValidationIssue using the * default severity, fix, and reference from CODE_REGISTRY. */ export declare function observationToIssue(obs: Observation, location: string): ValidationIssue; /** * @param locationRoot - The ONE base every emitted evidence `location.file` is * expressed relative to. Required, so a producer cannot emit an absolute * location by omission. */ export declare function runCompatDetectors(content: string, filePath: string, locationRoot: string): DetectorOutput; //# sourceMappingURL=compat-detectors.d.ts.map