@ingeze/api-error
Version:
A TypeScript library for handling HTTP errors in Express, NestJS, and Fastify APIs.
156 lines • 4.93 kB
TypeScript
/**
* Defines custom error classes for handling various validation error scenarios (HTTP 422).
*
* Each class extends `ValidationError`, which itself extends `ErrorHandler`.
* These errors represent specific validation failures and provide
* descriptive messages and error types for easier error handling and debugging.
*
* @module errors/validation-error
*/
import { ErrorHandler } from './error-handler.js';
import type { ValidationErrorType } from '../types/index.js';
/**
* Represents a generic validation error (HTTP 422).
*
* This error is thrown when the client sends data that is syntactically correct
* but semantically invalid (e.g., missing required fields, invalid formats).
*
* Can be instantiated with either a custom message, type, and optional details,
* or directly with a `details` object.
*
* @extends ErrorHandler
*/
export declare class ValidationError extends ErrorHandler {
/**
* Creates a new ValidationError instance with optional details.
*
* @param {Record<string, unknown>=} details - Additional error details describing the validation failure.
*/
constructor(details?: Record<string, unknown>);
/**
* Creates a new ValidationError instance with a custom message, type, and optional details.
*
* @param {string} message - A custom error message describing the validation issue.
* @param {ValidationErrorType=} type - A specific error type identifier.
* @param {Record<string, unknown>=} details - Additional error details.
*/
constructor(message?: string, type?: ValidationErrorType, details?: Record<string, unknown>);
}
/**
* Error for user validation failure.
*
* @extends ValidationError
*/
export declare class ValidationUserError extends ValidationError {
/**
* Creates a new ValidationUserError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for email validation failure.
*
* @extends ValidationError
*/
export declare class ValidationEmailError extends ValidationError {
/**
* Creates a new ValidationEmailError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for product validation failure.
*
* @extends ValidationError
*/
export declare class ValidationProductError extends ValidationError {
/**
* Creates a new ValidationProductError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for post validation failure.
*
* @extends ValidationError
*/
export declare class ValidationPostError extends ValidationError {
/**
* Creates a new ValidationPostError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for comment validation failure.
*
* @extends ValidationError
*/
export declare class ValidationCommentError extends ValidationError {
/**
* Creates a new ValidationCommentError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for category validation failure.
*
* @extends ValidationError
*/
export declare class ValidationCategoryError extends ValidationError {
/**
* Creates a new ValidationCategoryError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for file validation failure.
*
* @extends ValidationError
*/
export declare class ValidationFileError extends ValidationError {
/**
* Creates a new ValidationFileError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for image validation failure.
*
* @extends ValidationError
*/
export declare class ValidationImageError extends ValidationError {
/**
* Creates a new ValidationImageError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
/**
* Error for address validation failure.
*
* @extends ValidationError
*/
export declare class ValidationAddressError extends ValidationError {
/**
* Creates a new ValidationAddressError instance.
*
* @param {Record<string, unknown>=} details Optional additional error details.
*/
constructor(details?: Record<string, unknown>);
}
//# sourceMappingURL=validation-error.d.ts.map