/**
 * PII (Personally Identifiable Information) 마스킹 유틸리티
 *
 * 로그 파일에 저장되는 rawLLMOutput에서 민감한 정보를 마스킹합니다.
 *
 * 마스킹 대상:
 * - 이메일 주소
 * - 전화번호
 * - API 키
 * - 비밀번호
 * - 토큰 (Bearer, JWT 등)
 * - 기타 credential 정보
 *
 * 보안 정책:
 * - 모든 민감 정보는 [TYPE] 형식으로 마스킹
 * - 원본 정보는 복구 불가능하도록 완전히 제거
 */
/**
 * PII 마스킹 결과
 */
export interface PIIMaskingResult {
    masked: string;
    maskedCount: number;
    maskedTypes: string[];
}
/**
 * PII 마스킹 옵션
 */
export interface PIIMaskingOptions {
    /**
     * 마스킹할 타입 목록 (지정하지 않으면 모든 타입 마스킹)
     */
    types?: Array<'email' | 'phone' | 'api_key' | 'password' | 'token' | 'credential'>;
    /**
     * 마스킹 플레이스홀더 사용 여부 (기본값: true)
     * false인 경우 빈 문자열로 대체
     */
    usePlaceholder?: boolean;
}
/**
 * PII 마스킹기
 */
export declare class PIIMasker {
    /**
     * 텍스트에서 모든 PII를 마스킹합니다.
     *
     * PRD 0019: 보안 강화 (Phase 1) - PII 마스킹 강화
     * 환경 변수 `ENABLE_PII_MASKING`으로 마스킹 활성화/비활성화 제어
     *
     * @param text 원본 텍스트
     * @param options 마스킹 옵션
     * @returns 마스킹 결과
     */
    static mask(text: string, options?: PIIMaskingOptions): PIIMaskingResult;
    /**
     * 텍스트에 PII가 포함되어 있는지 확인합니다.
     *
     * @param text 확인할 텍스트
     * @returns PII 포함 여부
     */
    static hasPII(text: string): boolean;
    /**
     * 텍스트에서 마스킹된 PII 타입 목록을 반환합니다.
     *
     * @param text 확인할 텍스트
     * @returns 마스킹된 타입 목록
     */
    static detectPIITypes(text: string): string[];
    /**
     * 객체의 PII 마스킹
     * JSON 직렬화 후 마스킹하여 중첩 객체의 PII도 마스킹
     *
     * PRD 0019: 보안 강화 (Phase 1) - PII 마스킹 강화
     * 공통 유틸리티 함수로 추출하여 중복 코드 제거
     * 환경 변수 `ENABLE_PII_MASKING`으로 마스킹 활성화/비활성화 제어
     *
     * @param obj 마스킹할 객체
     * @returns 마스킹된 객체
     */
    static maskObject(obj: any, visited?: WeakSet<any>): any;
    /**
     * Error 객체의 PII 마스킹
     * error.message와 error.stack에 PII 마스킹 적용
     *
     * PRD 0019: 보안 강화 (Phase 1) - PII 마스킹 강화
     * 공통 유틸리티 함수로 추출하여 중복 코드 제거
     * 환경 변수 `ENABLE_PII_MASKING`으로 마스킹 활성화/비활성화 제어
     *
     * @param error 마스킹할 Error 객체
     * @returns 마스킹된 Error 정보 객체
     */
    static maskError(error: Error): {
        message: string;
        name: string;
        stack?: string;
    };
}
//# sourceMappingURL=pii-masker.d.ts.map