import { WBAPIError } from './base-error'; /** * Validation error thrown when request data fails validation. * * This error is thrown for: * - 400 Bad Request responses (malformed requests) * - 422 Unprocessable Entity responses (validation failures) * * Includes field-level error details when available to help * identify which specific fields failed validation. * * @example * ```typescript * import { ValidationError } from 'daytona-wildberries-typescript-sdk'; * * try { * await sdk.products.createProduct({ * // Missing required fields * }); * } catch (error) { * if (error instanceof ValidationError) { * console.error('Validation failed:', error.getUserMessage()); * * // Access field-level errors * if (error.fieldErrors) { * Object.entries(error.fieldErrors).forEach(([field, message]) => { * console.error(` - ${field}: ${message}`); * }); * } * } * } * ``` */ export declare class ValidationError extends WBAPIError { /** * Map of field names to their validation error messages */ readonly fieldErrors?: Record; /** * Creates a validation error * * @param message - Error message (defaults to standard validation failure message) * @param fieldErrors - Optional map of field names to error messages * @param statusCode - HTTP status code (400 or 422) * @param response - API response body if available * @param requestId - Correlation ID for debugging */ constructor(message?: string, fieldErrors?: Record, statusCode?: 400 | 422, response?: unknown, requestId?: string); /** * Returns user-friendly error message with field-level validation details * * @returns Error message with specific field errors and resolution guidance */ getUserMessage(): string; /** * Custom JSON serialization to preserve fieldErrors property * * @returns Object representation including field-level error details */ toJSON(): { name: string; message: string; statusCode: number; fieldErrors?: Record; response?: unknown; requestId?: string; }; } //# sourceMappingURL=validation-error.d.ts.map