/** * SSRF Pattern Scanning - SMI-3509 * * Detects SSRF instructions in skill content. * Extracted from SecurityScanner to keep file sizes under 500 lines. */ import type { SecurityFinding } from './types.js'; import type { LineContext } from './SecurityScanner.helpers.js'; /** * Scan content for SSRF instruction patterns. * Uses documentation context to reduce severity for patterns in code blocks/tables. * SMI-3522: Supports multi-line patterns via scanPatternsWithMultilineSupport approach. * * SMI-5881: uses PATTERN_SCOPE (patterns.scope.ts) instead of the old * per-source-text multiline-detection heuristic. This function's older * skip-based two-pass (flaggedLines) can only correctly service * 'line' | 'content' scope, never 'both' — assertScopeCoverage() * (patterns.scope.ts) enforces at module-load time that no * SSRF_INSTRUCTION_PATTERNS member is ever scoped 'both'. */ export declare function scanSsrfPatterns(content: string, lineContexts?: LineContext[], /** SMI-5881: explicit cap (UTF-16 code units) for the pass-1 full-content * regex scan — see scanPatternsWithMultilineSupport's identical parameter. */ maxLength?: number): SecurityFinding[]; //# sourceMappingURL=SecurityScanner.ssrf.d.ts.map