/**
 * Centralized Dangerous Patterns Registry
 *
 * Single source of truth for all dangerous pattern detection across:
 * - Bash command validation (bash tool, command-validator)
 * - Skill scanner (static analysis of SKILL.md files)
 * - Input validators (validators.ts)
 * - Bash parser (containsDangerousCommand)
 * - Code validator (generated code checks)
 *
 * Consolidates patterns previously scattered across 4+ files.
 */
export type PatternSeverity = 'critical' | 'high' | 'medium' | 'low' | 'info';
export type PatternCategory = 'filesystem_destruction' | 'remote_code_execution' | 'command_injection' | 'privilege_escalation' | 'network_exfiltration' | 'encoding_bypass' | 'code_execution' | 'dynamic_import' | 'prototype_pollution' | 'secret_exposure' | 'shell_injection' | 'system_control' | 'credential_access';
export interface DangerousPattern {
    /** Regex to match */
    pattern: RegExp;
    /** Severity level */
    severity: PatternSeverity;
    /** Human-readable description */
    description: string;
    /** Short identifier */
    name: string;
    /** Classification category */
    category: PatternCategory;
    /** Which subsystems use this pattern */
    appliesTo: Array<'bash' | 'skill' | 'code' | 'command'>;
}
/**
 * Commands that are always dangerous regardless of arguments.
 * Used by bash-parser's containsDangerousCommand() and bash tool's BLOCKED_COMMANDS.
 */
export declare const DANGEROUS_COMMANDS: ReadonlySet<string>;
/**
 * Patterns that should block command execution.
 * Merged from bash tool's BLOCKED_PATTERNS + validators DANGEROUS_COMMAND_PATTERNS.
 */
export declare const DANGEROUS_BASH_PATTERNS: DangerousPattern[];
/**
 * Patterns for scanning code content (skill files, LLM output).
 * Merged from skill-scanner's DANGEROUS_PATTERNS + new additions.
 */
export declare const DANGEROUS_CODE_PATTERNS: DangerousPattern[];
/**
 * Get all patterns applicable to a specific subsystem.
 */
export declare function getPatternsFor(subsystem: 'bash' | 'skill' | 'code' | 'command'): DangerousPattern[];
/**
 * Get patterns at or above a given severity level.
 */
export declare function getPatternsBySeverity(minSeverity: PatternSeverity, patterns?: DangerousPattern[]): DangerousPattern[];
/**
 * Get patterns by category.
 */
export declare function getPatternsByCategory(category: PatternCategory, patterns?: DangerousPattern[]): DangerousPattern[];
/**
 * Check if a string matches any dangerous pattern for the given subsystem.
 * Returns the first matching pattern or null.
 */
export declare function matchDangerousPattern(text: string, subsystem: 'bash' | 'skill' | 'code' | 'command'): DangerousPattern | null;
/**
 * Check if a string matches any dangerous patterns, returning all matches.
 */
export declare function matchAllDangerousPatterns(text: string, subsystem: 'bash' | 'skill' | 'code' | 'command'): DangerousPattern[];
/**
 * Check if a command name is in the dangerous commands set.
 */
export declare function isDangerousCommand(commandName: string): boolean;
