export interface PrivacyZone { id: string; name: string; type: 'hospital' | 'government' | 'school' | 'religious' | 'residential' | 'custom'; center: { latitude: number; longitude: number; }; radius: number; bufferZone?: number; isActive: boolean; metadata?: Record; } export interface SecurityConfig { encryptionEnabled: boolean; encryptionKey?: string; dataAnonymization: boolean; privacyZonesEnabled: boolean; minAccuracy: number; locationPrecisionReduction: number; auditLogging: boolean; sensitiveDataMasking: boolean; certificatePinning?: { domains: string[]; certificates: string[]; }; } export interface AuditLogEntry { id: string; timestamp: number; action: string; userId?: string; locationData?: { latitude: number; longitude: number; accuracy: number; }; metadata?: Record; hash: string; } export interface LocationProcessingResult { allowed: boolean; processedLocation?: { latitude: number; longitude: number; accuracy: number; }; violations: string[]; appliedPolicies: string[]; } export declare class SecurityManager { private config; private privacyZones; private auditLog; private encryptionKey; constructor(config?: Partial); addPrivacyZone(zone: Omit): string; removePrivacyZone(zoneId: string): boolean; updatePrivacyZone(zoneId: string, updates: Partial): boolean; getPrivacyZones(): PrivacyZone[]; getActivePrivacyZones(): PrivacyZone[]; processLocation(location: { latitude: number; longitude: number; accuracy: number; timestamp?: number; userId?: string; }): LocationProcessingResult; private checkPrivacyZoneViolations; private applyLocationProcessingPolicies; private shouldProcessDespiteViolations; private getAppliedPolicies; encryptData(data: any): string; decryptData(encryptedData: string): T; anonymizeLocation(location: { latitude: number; longitude: number; accuracy: number; }): { latitude: number; longitude: number; accuracy: number; }; reducePrecision(location: { latitude: number; longitude: number; accuracy: number; }, decimalPlaces: number): { latitude: number; longitude: number; accuracy: number; }; private calculatePrecisionAccuracy; maskSensitiveData(data: any): any; private maskValue; private logAuditEvent; getAuditLog(filter?: { action?: string; userId?: string; startTime?: number; endTime?: number; }): AuditLogEntry[]; verifyAuditLogIntegrity(): { valid: boolean; corruptedEntries: string[]; }; private generateAuditHash; validateCertificate(domain: string, certificate: string): boolean; private calculateDistance; private toRadians; private generateId; private generateEncryptionKey; private initializeDefaultPrivacyZones; updateConfig(updates: Partial): void; getConfig(): SecurityConfig; performSecurityHealthCheck(): { score: number; recommendations: string[]; issues: string[]; }; }