///
import { Stream } from 'node:stream';
import bunyan from 'bunyan';
import { ZodError } from 'zod';
import type { BunyanRecord } from './types';
export declare class ProblemStream extends Stream {
private _problems;
readable: boolean;
writable: boolean;
constructor();
write(data: BunyanRecord): boolean;
getProblems(): BunyanRecord[];
clearProblems(): void;
}
type ZodShortenedIssue = null | string | string[] | {
[key: string]: ZodShortenedIssue;
};
export declare function prepareZodIssues(input: unknown): ZodShortenedIssue;
export declare function prepareZodError(err: ZodError): Record;
export default function prepareError(err: Error): Record;
type NestedValue = unknown[] | object;
export declare function sanitizeValue(value: unknown, seen?: WeakMap): any;
export declare function withSanitizer(streamConfig: bunyan.Stream): bunyan.Stream;
/**
* A function that terminates exeution if the log level that was entered is
* not a valid value for the Bunyan logger.
* @param logLevelToCheck
* @returns returns undefined when the logLevelToCheck is valid. Else it stops execution.
*/
export declare function validateLogLevel(logLevelToCheck: string | undefined): void;
export declare function sanitizeUrls(text: string): string;
export {};