/** * Privacy Filter * * Applies privacy rules to conversation content * Features: keyword matching, pattern matching, redaction, blocking */ import { ConversationMessage, PrivacyRule } from './types'; /** * Default Privacy Rules * Comprehensive set of rules for common sensitive patterns */ export declare const DEFAULT_PRIVACY_RULES: PrivacyRule[]; /** * Privacy Filter * Applies privacy rules to conversation content */ export declare class PrivacyFilter { private rules; private stats; constructor(rules?: PrivacyRule[]); /** * Apply privacy filters to message */ filterMessage(message: ConversationMessage): Promise; /** * Check if content should be blocked entirely */ shouldBlock(content: string): boolean; /** * Add custom privacy rule */ addRule(rule: PrivacyRule): void; /** * Remove privacy rule by description */ removeRule(description: string): boolean; /** * Enable/disable rule by description */ toggleRule(description: string, enabled: boolean): boolean; /** * Get all privacy rules */ getRules(): PrivacyRule[]; /** * Get filtering statistics */ getStats(): { rulesApplied: { [k: string]: number; }; messagesFiltered: number; messagesRedacted: number; messagesBlocked: number; }; /** * Reset statistics */ resetStats(): void; /** * Apply individual rule to content */ private applyRule; /** * Get regex pattern from rule */ private getPattern; /** * Check if rule is enabled */ private isRuleEnabled; /** * Increment rule application count */ private incrementRuleCount; } /** * Validate privacy rule */ export declare function validatePrivacyRule(rule: PrivacyRule): boolean; /** * Create privacy rule from configuration */ export declare function createPrivacyRule(type: 'keyword' | 'pattern' | 'file_path', pattern: string | RegExp, action: 'filter' | 'redact' | 'block', description: string): PrivacyRule; //# sourceMappingURL=privacy-filter.d.ts.map