import { CustomError } from "../extends-error/index.js"; import { ErrorCode } from "../exception-error-code/index.js"; import { $Exception, $ExceptionConstructor } from "./$types.js"; /**错误码集合 */ export declare const CustomErrorCodeMap: Map; /**错误严重程度 */ export declare const enum EXCEPTION_SEVERIFY { /**崩溃 */ BLOCKER = "blocker", /**严重 */ CRITICAL = "critical", /**一般 */ MAJOR = "major", /**次要 */ MINOR = "minor" } export declare abstract class Exception extends CustomError implements $Exception { detail?: any; static TYPE: string; static readonly PLATFORM = ""; static readonly CHANNEL = ""; static readonly BUSINESS = ""; static readonly MODULE = ""; static readonly FILE = ""; static readonly CODE = ""; static readonly SEVERIFY = EXCEPTION_SEVERIFY.MAJOR; static readonly ERROR_CODE_MAP: Map; readonly sourceMessage: string; readonly type: string; readonly PLATFORM: string; readonly CHANNEL: string; readonly BUSINESS: string; readonly MODULE: string; readonly FILE: string; readonly CODE: string; readonly SEVERIFY: EXCEPTION_SEVERIFY; get name(): string; constructor(sourceMessage?: string | ErrorCode, detail?: any, CODE?: string, SEVERIFY?: EXCEPTION_SEVERIFY); static is(this: $ExceptionConstructor, err: any): err is E; } export declare abstract class OutOfRangeException extends Exception { static TYPE: string; } export declare abstract class ArgumentException extends Exception { static TYPE: string; } export declare abstract class ArgumentIllegalException extends Exception { static TYPE: string; } export declare abstract class ArgumentFormatException extends Exception { static TYPE: string; } export declare abstract class NoFoundException extends Exception { static TYPE: string; } export declare abstract class ResponseException extends Exception { static TYPE: string; } export declare abstract class IOException extends Exception { static TYPE: string; } export declare abstract class NetworkIOException extends Exception { static TYPE: string; } export declare abstract class BusyIOException extends Exception { static TYPE: string; } export declare abstract class DatebaseIOException extends Exception { static TYPE: string; } export declare abstract class InterruptedException extends Exception { static TYPE: string; } export declare abstract class IllegalStateException extends Exception { static TYPE: string; } export declare abstract class TimeOutException extends Exception { static TYPE: string; } export declare abstract class BusyException extends Exception { static TYPE: string; } export declare abstract class ConsensusException extends Exception { static TYPE: string; } export declare abstract class AbortException extends Exception { static TYPE: string; } export declare abstract class RefuseException extends Exception { static TYPE: string; } /** * * @param PLATFORM 平台 * @param CHANNEL 渠道 * @param BUSINESS 业务 * @param MODULE 模块 * @param FILE 文件 */ export declare function ExceptionGenerator(PLATFORM: string, CHANNEL: string, BUSINESS: string, MODULE: string, FILE: string, ERROR_CODE_MAP: Map): { getException: E>(Con: C) => $ExceptionConstructor; readonly Exception: $ExceptionConstructor<$Exception>; /**范围溢出错误 */ readonly OutOfRangeException: $ExceptionConstructor<$Exception>; /**非法参数 */ readonly ArgumentException: $ExceptionConstructor<$Exception>; /**非法参数:参数类型、结构错误 */ readonly ArgumentIllegalException: $ExceptionConstructor<$Exception>; /**非法参数:不符合预期的定义,比如要>0,比如只能是"A"与"B" */ readonly ArgumentFormatException: $ExceptionConstructor<$Exception>; /**找不到该有的 */ readonly NoFoundException: $ExceptionConstructor<$Exception>; /**没有可用响应的异常 */ readonly ResponseException: $ExceptionConstructor<$Exception>; /**IO错误 */ readonly IOException: $ExceptionConstructor<$Exception>; /**网络IO错误 */ readonly NetworkIOException: $ExceptionConstructor<$Exception>; /**繁忙IO错误 */ readonly BusyIOException: $ExceptionConstructor<$Exception>; /**数据库IO错误 */ readonly DatebaseIOException: $ExceptionConstructor<$Exception>; /**中断异常 * 流程异常中断时应该打印或者抛出这个错误,而后执行接下来的处理逻辑 */ readonly InterruptedException: $ExceptionConstructor<$Exception>; /** * 非法状态、流程错误 * 再执行某些任务时有一些前置工作还没准备好时提供这个错误 */ readonly IllegalStateException: $ExceptionConstructor<$Exception>; /**响应超时的异常 */ readonly TimeOutException: $ExceptionConstructor<$Exception>; /**繁忙的异常 */ readonly BusyException: $ExceptionConstructor<$Exception>; /**共识异常 */ readonly ConsensusException: $ExceptionConstructor<$Exception>; /**中断 */ readonly AbortException: $ExceptionConstructor<$Exception>; /**响应拒绝异常 */ readonly RefuseException: $ExceptionConstructor<$Exception>; };