import { type ValidationResult, type ValidationSimpleError } from '../core'; type PlainArrayResult = Array | PlainArrayResult | undefined>; type PlainErrorMap = { [key: string]: TPlainSimpleError | PlainArrayResult | PlainErrorMap; }; type FormatSimpleErrorFunc = (error: ValidationSimpleError, params: { path: string; }) => TPlainSimpleError; /** * Результат валидации, преобразованный в простые структуры данных (исходные - это инстансы error) */ export type PlainValidationResult = undefined | TPlainSimpleError | PlainArrayResult | PlainErrorMap; /** * Форматирует все ошибки валидации в простые объекты. Необходим для интеграции с другими библиотеками * @param validationResult * @param formatErrorInfo - позволяет отформатировать объект ошибки при его формировании * @param path - путь до ошибки в схеме * @example * ```ts * const validate = object<{ info: Array<{ name: string }> }>({ * info: array( * arrayItem( * object<{ name: string }>( * { name: string() } * ) * ) ), * }), * * // { info: [{ name: { code: Symbol(string), message: 'Не является строкой' } }] } * console.log(toPlainError(validate({ info: [{ name: 22 }] }))); * ``` */ export declare const toPlainError: (validationResult: ValidationResult, formatErrorInfo: FormatSimpleErrorFunc, path?: string) => PlainValidationResult; export {};