import type { AnyValue } from "@opentelemetry/api-logs";
import { BasicRedactor } from "../redaction/index.js";
/**
 * Cleans a string by redacting configured PIIs and emitting metrics for redacted values.
 *
 * If the string is URL-encoded, it will be decoded before redaction.
 *
 * @param {string} value - The input value to sanitize.
 * @param {string} source - The source context of the input, used in metrics.
 * @param {BasicRedactor[]} redactors - The string redactors containing the redaction logic.
 *
 * @returns {string} The cleaned string with any configured PII replaced by `[REDACTED PII_TYPE]`.
 */
export declare function _cleanStringPII<T extends string>(value: string, source: T, redactors: BasicRedactor[]): string;
export declare function _recursiveObjectClean<T extends AnyValue, R extends string>(value: T, source: R, redactors: BasicRedactor[]): T;
