export { mod97, isIbanValue, luhn } from './patterns.js'; export declare const redactMask = "[REDACTED]"; /** Header names (lowercase) whose values are always masked. */ export declare const sensitiveHeaders: Set; /** Whether a header/query/field name denotes a secret. */ export declare function isSensitiveName(name: string): boolean; /** Mask the values of sensitive headers; preserve every key. */ export declare function redactHeaders(headers: Record, extra?: Set): Record; /** Redact card numbers, JWTs, bearer tokens, cookie lines, and PII anywhere in a string. */ export declare function scrubValues(s: string): string; /** Mask sensitive query/fragment params and scrub secrets in the path. */ export declare function redactUrl(url: string): string; /** Mask values whose adjacent name is sensitive (see note above). Best-effort. */ export declare function scrubNamedValues(s: string): string; /** Redact a body string: structurally (JSON keys / form fields) then by value. */ export declare function redactBody(body: string): string; /** Project an already-redacted body into `dotted.path → scalar`, keeping only * analytics scalars (num/bool/short non-mask strings). Null when nothing safe remains. */ export declare function projectBody(body: string | null | undefined): string | null;