UNPKG

@ingeze/api-error

Version:

A TypeScript library for handling HTTP errors in Express, NestJS, and Fastify APIs.

154 lines 4.71 kB
/** * Defines custom error classes for handling various forbidden scenarios (HTTP 403). * * Each class extends `ForbiddenError`, which itself extends `ErrorHandler`. * These errors represent specific authorization failures and provide * descriptive messages and error types for easier error handling and debugging. * * @module errors/forbidden-error */ import { ErrorHandler } from './error-handler.js'; import type { ForbiddenErrorType } from '../types/index.js'; /** * Represents a generic forbidden error (HTTP 403). * * This error is thrown when a user attempts to access a resource * they do not have permission for. It can be instantiated with either * a custom message and type, or with just a `details` object. * * @extends ErrorHandler */ export declare class ForbiddenError extends ErrorHandler { /** * Creates a new ForbiddenError instance with optional details. * * @param {Record<string, unknown>=} details - Additional error details. */ constructor(details?: Record<string, unknown>); /** * Creates a new ForbiddenError instance with a custom message, type, and optional details. * * @param {string} message - A custom error message. * @param {ForbiddenErrorType=} type - A specific error type identifier. * @param {Record<string, unknown>=} details - Additional error details. */ constructor(message?: string, type?: ForbiddenErrorType, details?: Record<string, unknown>); } /** * Error for forbidden user access. * * @extends ForbiddenError */ export declare class ForbiddenUserError extends ForbiddenError { /** * Creates a new ForbiddenUserError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden email access. * * @extends ForbiddenError */ export declare class ForbiddenEmailError extends ForbiddenError { /** * Creates a new ForbiddenEmailError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden product access. * * @extends ForbiddenError */ export declare class ForbiddenProductError extends ForbiddenError { /** * Creates a new ForbiddenProductError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden post access. * * @extends ForbiddenError */ export declare class ForbiddenPostError extends ForbiddenError { /** * Creates a new ForbiddenPostError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden comment access. * * @extends ForbiddenError */ export declare class ForbiddenCommentError extends ForbiddenError { /** * Creates a new ForbiddenCommentError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden category access. * * @extends ForbiddenError */ export declare class ForbiddenCategoryError extends ForbiddenError { /** * Creates a new ForbiddenCategoryError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden file access. * * @extends ForbiddenError */ export declare class ForbiddenFileError extends ForbiddenError { /** * Creates a new ForbiddenFileError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden image access. * * @extends ForbiddenError */ export declare class ForbiddenImageError extends ForbiddenError { /** * Creates a new ForbiddenImageError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } /** * Error for forbidden address access. * * @extends ForbiddenError */ export declare class ForbiddenAddressError extends ForbiddenError { /** * Creates a new ForbiddenAddressError instance. * * @param {Record<string, unknown>=} details Optional additional error details. */ constructor(details?: Record<string, unknown>); } //# sourceMappingURL=forbidden-error.d.ts.map