UNPKG

@xilil/error-codes

Version:

统一错误码管理库 - 支持多语言、类型安全的错误处理工具

24 lines 1.92 kB
import { ErrorCode, ErrorCodeConfig, SupportedLanguage, ErrorResponse, SuccessResponse, ErrorKey } from '../types'; export declare function getErrorCode(errorKey: ErrorKey, language?: SupportedLanguage): ErrorCode; export declare function createErrorResponse(errorKey: ErrorKey, language?: SupportedLanguage, path?: string, data?: any): ErrorResponse; export declare function createSuccessResponse<T = any>(data: T, message?: string, language?: SupportedLanguage): SuccessResponse<T>; export declare class AppError extends Error { readonly code: number; readonly statusCode: number; readonly isOperational: boolean; readonly errorKey: ErrorKey; readonly language?: SupportedLanguage | undefined; readonly details?: any; constructor(errorKey: ErrorKey, language?: SupportedLanguage, isOperational?: boolean, details?: any); } export declare function isOperationalError(error: Error): boolean; export declare function getStatusCode(errorKey: ErrorKey): number; export declare function getAllErrorCodes(): Record<string, ErrorCodeConfig>; export declare function findErrorKeyByCode(code: number): string | undefined; export declare function isValidErrorKey(errorKey: string): errorKey is ErrorKey; export declare function expressErrorHandler(defaultLanguage?: SupportedLanguage, enableStackTrace?: boolean): (error: any, req: any, res: any, next: any) => any; export declare function asyncHandler(fn: (req: any, res: any, next: any) => Promise<any>): (req: any, res: any, next: any) => void; export declare function throwError(errorKey: ErrorKey, details?: any, language?: SupportedLanguage): never; export declare function throwIf(condition: boolean, errorKey: ErrorKey, details?: any, language?: SupportedLanguage): void; export declare function assert(condition: boolean, errorKey: ErrorKey, details?: any, language?: SupportedLanguage): asserts condition; //# sourceMappingURL=index.d.ts.map