/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { ConversationDataRedactor, RedactionConfig } from './ConversationDataRedactor.js';
export interface PrivacyConfig {
    getConversationLoggingEnabled(): boolean;
    getResponseLoggingEnabled(): boolean;
    getTelemetryLogPromptsEnabled(): boolean;
    getTelemetryTarget(): 'local' | 'remote' | string;
    getConversationLogPath(): string;
    getConversationRetentionDays(): number;
    getMaxConversationsStored(): number;
    getRedactionConfig(): RedactionConfig;
    getTelemetrySettings(): {
        remoteConsentGiven?: boolean;
        [key: string]: unknown;
    };
}
export declare class PrivacyManager {
    private redactor;
    private config;
    constructor(config: PrivacyConfig);
    /**
     * Check if conversation logging is permitted based on privacy settings
     */
    isLoggingPermitted(): boolean;
    /**
     * Get appropriate redactor for current privacy settings
     */
    getRedactor(): ConversationDataRedactor;
    /**
     * Validate privacy compliance for conversation data
     */
    validatePrivacyCompliance(conversationData: unknown): PrivacyValidationResult;
    /**
     * Generate privacy disclosure for user consent
     */
    generatePrivacyDisclosure(): PrivacyDisclosure;
    private hasRemoteConsent;
    private getDataCollectionDescription;
    private getStorageDescription;
    private getRetentionDescription;
    private getRedactionDescription;
    private getUserRightsDescription;
}
export interface PrivacyValidationResult {
    isCompliant: boolean;
    violations: string[];
}
export interface PrivacyDisclosure {
    dataCollected: string[];
    storageLocation: string;
    retentionPolicy: string;
    redactionPolicy: string;
    userRights: string[];
}
