UNPKG

@thalorlabs/errors

Version:

Enhanced exception handling system for TypeScript applications with comprehensive error classes and debugging capabilities

26 lines (25 loc) 1.08 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ForbiddenError = void 0; const types_1 = require("@thalorlabs/types"); const CustomError_1 = __importDefault(require("./CustomError")); /** * Error for forbidden access scenarios. * * Used when users are authenticated but lack permission to access specific resources. * Provides clear 403 error responses with optional permission context. * * @example * throw new ForbiddenError('Insufficient permissions', 'admin-required', 'req-123'); * * throw new ForbiddenError('Access denied', null, 'req-456', { resource: 'admin-panel', requiredRole: 'admin' }); */ class ForbiddenError extends CustomError_1.default { constructor(message = 'Forbidden', error, requestId, context) { super(types_1.EHttpClientErrorResponse.FORBIDDEN, `${message}${error ? `: ${error}` : ''}`, requestId, context); } } exports.ForbiddenError = ForbiddenError;