import { PrismaClientKnownRequestError, PrismaClientValidationError, PrismaClientInitializationError, PrismaClientRustPanicError } from "@prisma/client/runtime/library";
export interface ErrorMessage {
    path: string;
    message: string;
}
export type FormatFunction = (info: {
    type: "known" | "validation" | "initialization" | "panic" | "unknown";
    error: any;
    default: ErrorMessage[];
}) => any[];
interface FormatterOptions {
    format?: FormatFunction;
}
export declare class PrismaExceptionFormatter {
    private readonly customFormat?;
    constructor(options?: FormatterOptions);
    private applyFormat;
    formatPrismaError(exception: PrismaClientKnownRequestError): any[];
    formatQueryError(exception: PrismaClientValidationError | PrismaClientRustPanicError): any[];
    formatInitializationError(exception: PrismaClientInitializationError): any[];
    formatUnknownError(exception: any): any[];
    formatError(exception: any): any[];
}
export {};
